1313 type : string
1414 required : false
1515 default : " next"
16- force_test_suite_run :
17- description : If true, skip the run-test-suites check and force it to 'true'
18- type : boolean
19- required : false
20- default : false
2116 secrets :
2217 HTTP_AUTH_TOKEN_FOR_TESTS :
2318 description : HTTP Basic Auth token for the environment under test
4035permissions : { }
4136
4237jobs :
43- check-if-run-needed :
44- name : Check if tests are required
45- runs-on : ubuntu-latest
46- if : github.event_name == 'pull_request'
47- outputs :
48- run-test-suites : ${{ inputs.force_test_suite_run || steps.check.outputs.run-test-suites }}
49- steps :
50- - uses : actions/checkout@v6
51- if : ${{ !inputs.force_test_suite_run }}
52- with :
53- ref : ${{ github.event.pull_request.head.sha }}
54- repository : nhsuk/manage-vaccinations-in-schools
55- - name : Check if end-to-end tests need to run
56- if : ${{ !inputs.force_test_suite_run }}
57- id : check
58- uses : ./.github/actions/run-test-suites-check
5938 check-development-image-presence :
6039 name : Check if mavis docker image already exists
6140 runs-on : ubuntu-latest
8968 echo "build-needed=true" >> $GITHUB_OUTPUT
9069 fi
9170 build-and-push-development-image :
92- needs : [ check-development-image-presence, check-if-run-needed ]
93- if : ${{ !cancelled() && needs.check-development-image-presence.outputs.build-needed == 'true' && (github.event_name != 'pull_request' || needs.check-if-run-needed.outputs.run-test-suites == 'true') }}
71+ needs : [ check-development-image-presence ]
72+ if : ${{ !cancelled() && needs.check-development-image-presence.outputs.build-needed == 'true' }}
9473 runs-on : ubuntu-latest
9574 permissions :
9675 id-token : write
@@ -149,8 +128,8 @@ jobs:
149128 echo "build-needed=true" >> $GITHUB_OUTPUT
150129 fi
151130 build-and-push-database-image :
152- needs : [ check-database-image-presence, check-if-run-needed ]
153- if : ${{ !cancelled() && needs.check-database-image-presence.outputs.build-needed == 'true' && (github.event_name != 'pull_request' || needs.check-if-run-needed.outputs.run-test-suites == 'true') }}
131+ needs : [ check-database-image-presence]
132+ if : ${{ !cancelled() && needs.check-database-image-presence.outputs.build-needed == 'true' }}
154133 permissions :
155134 id-token : write
156135 contents : read
@@ -161,14 +140,14 @@ jobs:
161140 needs : [ check-development-image-presence,
162141 build-and-push-development-image,
163142 check-database-image-presence,
164- build-and-push-database-image,
165- check-if-run-needed ]
143+ build-and-push-database-image
144+ ]
166145 if : ${{ !cancelled() &&
167146 (needs.build-and-push-development-image.result == 'success' ||
168147 (needs.check-development-image-presence.result == 'success' && needs.build-and-push-development-image.result == 'skipped')) &&
169148 (needs.build-and-push-database-image.result == 'success' ||
170149 (needs.check-database-image-presence.result == 'success' && needs.build-and-push-database-image.result == 'skipped'))
171- && (github.event_name != 'pull_request' || needs.check-if-run-needed.outputs.run-test-suites == 'true') }}
150+ }}
172151 runs-on : ubuntu-latest
173152 permissions :
174153 id-token : write
@@ -368,24 +347,10 @@ jobs:
368347 run : aws ecs stop-task --cluster assurance-testing --task ${{ needs.wait-for-task-stability.outputs.task_arn }}
369348 enforce-end-to-end-tests :
370349 name : Check if end-to-end tests passed if required
371- needs : [ check-if-run-needed, call-end-to-end-tests ]
350+ needs : [ call-end-to-end-tests ]
372351 if : ${{ always() && github.event_name == 'pull_request' }}
373352 runs-on : ubuntu-latest
374353 steps :
375354 - name : Check end-to-end tests passed or were skipped
376355 run : |
377- RUN_TEST_SUITES="${{ needs.check-if-run-needed.outputs.run-test-suites }}"
378- CALL_RESULT="${{ needs.call-end-to-end-tests.result }}"
379-
380- if [ "$RUN_TEST_SUITES" != "true" ]; then
381- echo "E2E tests not required for this PR. Marking check as passed."
382- exit 0
383- fi
384-
385- if [ "$CALL_RESULT" = "success" ]; then
386- echo "E2E tests required and passed."
387- exit 0
388- fi
389-
390- echo "E2E tests were required but did not pass (call-end-to-end-tests result: $CALL_RESULT)."
391- exit 1
356+ echo "All good" # TODO: Remove in followup PR
0 commit comments