1- name : Dart CI
1+ name : CI
22
33on :
44 push :
@@ -19,22 +19,16 @@ permissions:
1919jobs :
2020 # Run as a separate job outside the Dart SDK matrix below,
2121 # since we can only emit a single SBOM.
22- create-sbom-release-asset :
23- name : Create SBOM Release Asset
24- runs-on : ubuntu-latest
25- steps :
26- - uses : actions/checkout@v4
27- - uses : dart-lang/setup-dart@v1
28- with :
29- sdk : 2.19.6 # This version doesn't matter so long as it resolves.
30- - run : dart pub get
31- - name : Publish SBOM to Release Assets
32- uses : anchore/sbom-action@v0
33- with :
34- path : ./
35- format : cyclonedx-json
36-
3722 build :
23+ uses :
Workiva/gha-dart-oss/.github/workflows/[email protected] 24+
25+ checks :
26+ uses :
Workiva/gha-dart-oss/.github/workflows/[email protected] 27+ with :
28+ additional-checks : |
29+ no_entrypoint_imports
30+
31+ test_and_check_generated_files :
3832 runs-on : ubuntu-latest
3933 strategy :
4034 fail-fast : false
6256 ./tool/update_tests_for_dart_3.sh
6357 fi
6458
65- - name : Validate dependencies
66- run : dart run dependency_validator
67- if : always() && steps.install.outcome == 'success'
68-
69- - name : Verify formatting
70- run : dart run dart_dev format --check
71- # Only run on one sdk version in case there are conflicts
72- if : always() && matrix.sdk == '2.19.6' && steps.install.outcome == 'success'
73-
7459 # Analyze before generated files are created to verify that component boilerplate analysis is "clean" without the need for building
7560 - name : Analyze example source (pre-build)
7661 run : |
@@ -234,3 +219,16 @@ jobs:
234219 run : dart run dart_dev test
235220 if : always() && steps.install.outcome == 'success'
236221 timeout-minutes : 8
222+
223+ testing-and-checks-complete :
224+ name : Testing and Checks Completed
225+ needs : [ build, checks, test_and_check_generated_files, validate_analyzer, analyzer_plugin ]
226+ if : ${{ !cancelled() && github.event_name == 'pull_request' || github.ref_type == 'tag' }}
227+ runs-on : ubuntu-latest
228+ steps :
229+ - run : |
230+ if [ "${{ needs.checks.result }}" == "failure" ]; then
231+ echo "Some checks have failed. Please fix the issues and try again."
232+ exit 1
233+ fi
234+ echo 'All Testing and checks have completed.'
0 commit comments