88 # Sequence of patterns matched against refs/tags
99 tags :
1010 - " v*.*.*"
11- # Exclude rc.0 tags — they’re not real release candidates but markers for main
12- # See: https://github.com/envoyproxy/gateway/issues/7248
13- - " !v*.*.*-rc.0"
1411
1512
1613jobs :
5249
5350 # For push event, we run benchmark test here because we need to
5451 # include benchmark report in the release.
52+ # rc.0 tags are branch markers, not real releases — skip the benchmark
53+ # so we can still publish the Docker image and Helm chart without a full release run.
5554 benchmark-test :
5655 needs : [verify-build-and-test]
56+ if : ${{ !contains(github.ref, '-rc.0') }}
5757 runs-on : ubuntu-latest
5858 steps :
5959 - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
8585
8686 release :
8787 runs-on : ubuntu-latest
88- needs : [benchmark-test]
88+ needs : [verify-build-and-test, benchmark-test]
89+ # always() prevents GitHub from auto-skipping this job when benchmark-test is skipped (rc.0).
90+ # We explicitly require verify-build-and-test to succeed, and allow benchmark-test to be
91+ # either successful (normal release) or skipped (rc.0).
92+ if : ${{ always() && needs.verify-build-and-test.result == 'success' && (needs.benchmark-test.result == 'success' || needs.benchmark-test.result == 'skipped') }}
8993 permissions :
9094 contents : write
9195 steps :
@@ -121,7 +125,10 @@ jobs:
121125 IMAGE_PULL_POLICY=IfNotPresent OCI_REGISTRY=oci://docker.io/envoyproxy CHART_VERSION=${{ env.release_tag }} IMAGE=docker.io/envoyproxy/gateway TAG=${{ env.release_tag }} make helm-package helm-push
122126 IMAGE_PULL_POLICY=IfNotPresent OCI_REGISTRY=oci://docker.io/envoyproxy CHART_VERSION=${{ env.without_v_release_tag }} IMAGE=docker.io/envoyproxy/gateway TAG=${{ env.release_tag }} make helm-package helm-push
123127
128+ # The following steps (benchmark report + GitHub release) are skipped for rc.0 tags.
129+ # Docker image and Helm chart (above) still publish for all tags including rc.0.
124130 - name : Download Benchmark Report
131+ if : ${{ !contains(github.ref, '-rc.0') }}
125132 uses : actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
126133 with :
127134 name : benchmark_report
@@ -130,6 +137,7 @@ jobs:
130137 # Make the JSON report be part of the release, so it would be easy to integrate with
131138 # Performance Benchmark Report Explorer
132139 - name : Unzip Benchmark Report
140+ if : ${{ !contains(github.ref, '-rc.0') }}
133141 run : |
134142 cd release-artifacts && unzip benchmark_report.zip
135143
@@ -146,6 +154,7 @@ jobs:
146154 zip -r egctl_${{ env.release_tag }}_windows_amd64.zip bin/windows/amd64/egctl
147155
148156 - name : Upload Release Manifests
157+ if : ${{ !contains(github.ref, '-rc.0') }}
149158 uses : softprops/action-gh-release@153bb8e04406b158c6c84fc1615b65b24149a1fe # v2.6.1
150159 with :
151160 files : |
0 commit comments