Skip to content

Commit caea766

Browse files
committed
address feedback
1 parent c7a72a9 commit caea766

2 files changed

Lines changed: 20 additions & 8 deletions

File tree

.github/scripts/validate-workflow-gating.sh

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -110,16 +110,19 @@ main() {
110110

111111
if ! validate_if_condition "$job_name" "$if_cond"; then
112112
if [ "$file_has_errors" -eq 0 ]; then
113-
echo " ❌ File '$file' has ungated or poorly gated jobs:"
113+
# Blank line separates each file's group of errors for readability.
114+
echo ""
115+
echo "❌ File '$file' has ungated or poorly gated jobs:"
114116
file_has_errors=1
115117
fi
116118
errors=$((errors + 1))
117119
fi
118120
done <<<"$jobs_data"
119121
done
120122

121-
if [ "$errors" -gt 0 ]; then
122-
echo " ❌ Workflow validation failed! Found ${errors} issues."
123+
if [ "$errors" -ne 0 ]; then
124+
echo ""
125+
echo "❌ Workflow validation failed! Found ${errors} issues."
123126
exit 1
124127
else
125128
echo "✅ All public workflows are successfully gated."

.github/workflows/ci.yml

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ jobs:
111111
client-id: ${{ secrets.AZURE_VAULT_CLIENT_ID }}
112112
tenant-id: ${{ secrets.AZURE_VAULT_TENANT_ID }}
113113
subscription-id: ${{ secrets.AZURE_VAULT_SUBSCRIPTION_ID }}
114+
if: ${{ steps.vars.outputs.forked_workflow == 'false' }}
114115

115116
- name: Setup secrets
116117
id: secrets
@@ -122,6 +123,7 @@ jobs:
122123
GCR_SERVICE_ACCOUNT=$(az keyvault secret show --name kic-pipeline-gcr-sa --vault-name ${{ secrets.NIC_KEYVAULT_NAME }} --query value -o tsv)
123124
echo "::add-mask::$GCR_SERVICE_ACCOUNT"
124125
echo "GCR_SERVICE_ACCOUNT=$GCR_SERVICE_ACCOUNT" >> $GITHUB_OUTPUT
126+
if: ${{ steps.vars.outputs.forked_workflow == 'false' }}
125127

126128
- name: Authenticate to Google Cloud
127129
id: auth
@@ -130,13 +132,15 @@ jobs:
130132
token_format: access_token
131133
workload_identity_provider: ${{ steps.secrets.outputs.GCR_WORKLOAD_ID }}
132134
service_account: ${{ steps.secrets.outputs.GCR_SERVICE_ACCOUNT }}
135+
if: ${{ steps.vars.outputs.forked_workflow == 'false' }}
133136

134137
- name: Login to GCR
135138
uses: docker/login-action@650006c6eb7dba73a995cc03b0b2d7f5ca915bee # v4.2.0
136139
with:
137140
registry: gcr.io
138141
username: oauth2accesstoken
139142
password: ${{ steps.auth.outputs.access_token }}
143+
if: ${{ steps.vars.outputs.forked_workflow == 'false' }}
140144

141145
- name: Check if stable image exists
142146
id: stable_exists
@@ -146,6 +150,7 @@ jobs:
146150
exists=true
147151
fi
148152
echo "exists=${exists}" >> $GITHUB_OUTPUT
153+
if: ${{ steps.vars.outputs.forked_workflow == 'false' }}
149154

150155
- name: Check if docker build is needed
151156
id: docker_build
@@ -268,6 +273,7 @@ jobs:
268273
client-id: ${{ secrets.AZURE_VAULT_CLIENT_ID }}
269274
tenant-id: ${{ secrets.AZURE_VAULT_TENANT_ID }}
270275
subscription-id: ${{ secrets.AZURE_VAULT_SUBSCRIPTION_ID }}
276+
if: ${{ needs.checks.outputs.forked_workflow == 'false' }}
271277

272278
- name: Setup secrets
273279
id: secrets
@@ -276,6 +282,7 @@ jobs:
276282
CODECOV_TOKEN=$(az keyvault secret show --name code-cov --vault-name ${{ secrets.NIC_KEYVAULT_NAME }} --query value -o tsv)
277283
echo "::add-mask::$CODECOV_TOKEN"
278284
echo "CODECOV_TOKEN=$CODECOV_TOKEN" >> $GITHUB_OUTPUT
285+
if: ${{ needs.checks.outputs.forked_workflow == 'false' }}
279286

280287
- name: Setup Golang Environment
281288
uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6.5.0
@@ -294,6 +301,7 @@ jobs:
294301
with:
295302
files: ./coverage.txt
296303
token: ${{ steps.secrets.outputs.CODECOV_TOKEN }} # required
304+
if: ${{ needs.checks.outputs.forked_workflow == 'false' }}
297305

298306
staticcheck:
299307
name: Static Check
@@ -364,7 +372,10 @@ jobs:
364372
github.repository == 'nginx/kubernetes-ingress' && (
365373
!cancelled() &&
366374
needs.checks.result == 'success' &&
367-
(needs.unit-tests.result == 'success' || needs.unit-tests.result == 'skipped'))
375+
(needs.unit-tests.result == 'success' || needs.unit-tests.result == 'skipped') &&
376+
(inputs.force ||
377+
needs.checks.outputs.run_tests == 'true' ||
378+
needs.checks.outputs.docker_build == 'true'))
368379
needs: [checks, unit-tests]
369380
uses: ./.github/workflows/build-artifacts.yml
370381
with:
@@ -853,10 +864,8 @@ jobs:
853864
name: Tag tested image as stable
854865
if: >-
855866
github.repository == 'nginx/kubernetes-ingress' && (
856-
needs.checks.outputs.forked_workflow == 'false' && (
857-
(needs.checks.outputs.forked_workflow == 'false' &&
858-
needs.checks.outputs.stable_image_exists != 'true'))
859-
)
867+
needs.checks.outputs.forked_workflow == 'false' &&
868+
needs.checks.outputs.stable_image_exists != 'true')
860869
needs: [checks, build-artifacts, smoke-tests-oss, smoke-tests-plus, smoke-tests-nap]
861870
permissions:
862871
contents: read # To checkout repository

0 commit comments

Comments
 (0)