Skip to content

Commit 33581d2

Browse files
committed
Add success job for all CI workflows
1 parent 3e62ac7 commit 33581d2

File tree

6 files changed

+95
-1
lines changed

6 files changed

+95
-1
lines changed

.github/workflows/ci.yml

-1
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,6 @@ jobs:
122122
cd build_system
123123
cargo test
124124
125-
126125
# Summary job for the merge queue.
127126
# ALL THE PREVIOUS JOBS NEED TO BE ADDED TO THE `needs` SECTION OF THIS JOB!
128127
success:

.github/workflows/failures.yml

+19
Original file line numberDiff line numberDiff line change
@@ -108,3 +108,22 @@ jobs:
108108
echo "Error: 'the compiler unexpectedly panicked' found in output logs. CI Error!!"
109109
exit 1
110110
fi
111+
112+
# Summary job for the merge queue.
113+
# ALL THE PREVIOUS JOBS NEED TO BE ADDED TO THE `needs` SECTION OF THIS JOB!
114+
success:
115+
needs: [build]
116+
# We need to ensure this job does *not* get skipped if its dependencies fail,
117+
# because a skipped job is considered a success by GitHub. So we have to
118+
# overwrite `if:`. We use `!cancelled()` to ensure the job does still not get run
119+
# when the workflow is canceled manually.
120+
if: ${{ !cancelled() }}
121+
runs-on: ubuntu-latest
122+
steps:
123+
# Manually check the status of all dependencies. `if: failure()` does not work.
124+
- name: Conclusion
125+
run: |
126+
# Print the dependent jobs to see them in the CI log
127+
jq -C <<< '${{ toJson(needs) }}'
128+
# Check if all jobs that we depend on (in the needs array) were successful.
129+
jq --exit-status 'all(.result == "success")' <<< '${{ toJson(needs) }}'

.github/workflows/gcc12.yml

+19
Original file line numberDiff line numberDiff line change
@@ -85,3 +85,22 @@ jobs:
8585
#- name: Run tests
8686
#run: |
8787
#./y.sh test --release --clean --build-sysroot ${{ matrix.commands }} --no-default-features
88+
89+
# Summary job for the merge queue.
90+
# ALL THE PREVIOUS JOBS NEED TO BE ADDED TO THE `needs` SECTION OF THIS JOB!
91+
success:
92+
needs: [build]
93+
# We need to ensure this job does *not* get skipped if its dependencies fail,
94+
# because a skipped job is considered a success by GitHub. So we have to
95+
# overwrite `if:`. We use `!cancelled()` to ensure the job does still not get run
96+
# when the workflow is canceled manually.
97+
if: ${{ !cancelled() }}
98+
runs-on: ubuntu-latest
99+
steps:
100+
# Manually check the status of all dependencies. `if: failure()` does not work.
101+
- name: Conclusion
102+
run: |
103+
# Print the dependent jobs to see them in the CI log
104+
jq -C <<< '${{ toJson(needs) }}'
105+
# Check if all jobs that we depend on (in the needs array) were successful.
106+
jq --exit-status 'all(.result == "success")' <<< '${{ toJson(needs) }}'

.github/workflows/m68k.yml

+19
Original file line numberDiff line numberDiff line change
@@ -105,3 +105,22 @@ jobs:
105105
- name: Run tests
106106
run: |
107107
./y.sh test --release --clean --build-sysroot --sysroot-features compiler_builtins/no-f16-f128 ${{ matrix.commands }}
108+
109+
# Summary job for the merge queue.
110+
# ALL THE PREVIOUS JOBS NEED TO BE ADDED TO THE `needs` SECTION OF THIS JOB!
111+
success:
112+
needs: [build]
113+
# We need to ensure this job does *not* get skipped if its dependencies fail,
114+
# because a skipped job is considered a success by GitHub. So we have to
115+
# overwrite `if:`. We use `!cancelled()` to ensure the job does still not get run
116+
# when the workflow is canceled manually.
117+
if: ${{ !cancelled() }}
118+
runs-on: ubuntu-latest
119+
steps:
120+
# Manually check the status of all dependencies. `if: failure()` does not work.
121+
- name: Conclusion
122+
run: |
123+
# Print the dependent jobs to see them in the CI log
124+
jq -C <<< '${{ toJson(needs) }}'
125+
# Check if all jobs that we depend on (in the needs array) were successful.
126+
jq --exit-status 'all(.result == "success")' <<< '${{ toJson(needs) }}'

.github/workflows/release.yml

+19
Original file line numberDiff line numberDiff line change
@@ -82,3 +82,22 @@ jobs:
8282
echo "Test is done with LTO enabled, hence inlining should occur across crates"
8383
exit 1
8484
fi
85+
86+
# Summary job for the merge queue.
87+
# ALL THE PREVIOUS JOBS NEED TO BE ADDED TO THE `needs` SECTION OF THIS JOB!
88+
success:
89+
needs: [build]
90+
# We need to ensure this job does *not* get skipped if its dependencies fail,
91+
# because a skipped job is considered a success by GitHub. So we have to
92+
# overwrite `if:`. We use `!cancelled()` to ensure the job does still not get run
93+
# when the workflow is canceled manually.
94+
if: ${{ !cancelled() }}
95+
runs-on: ubuntu-latest
96+
steps:
97+
# Manually check the status of all dependencies. `if: failure()` does not work.
98+
- name: Conclusion
99+
run: |
100+
# Print the dependent jobs to see them in the CI log
101+
jq -C <<< '${{ toJson(needs) }}'
102+
# Check if all jobs that we depend on (in the needs array) were successful.
103+
jq --exit-status 'all(.result == "success")' <<< '${{ toJson(needs) }}'

.github/workflows/stdarch.yml

+19
Original file line numberDiff line numberDiff line change
@@ -102,3 +102,22 @@ jobs:
102102
# TODO: remove --skip test_mm512_stream_ps when stdarch is updated in rustc.
103103
# TODO: remove --skip test_tile_ when it's implemented.
104104
STDARCH_TEST_EVERYTHING=1 CHANNEL=release CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUNNER="${{ matrix.cargo_runner }}" TARGET=x86_64-unknown-linux-gnu CG_RUSTFLAGS="-Ainternal_features --cfg stdarch_intel_sde" ./y.sh cargo test --manifest-path build/build_sysroot/sysroot_src/library/stdarch/Cargo.toml -- --skip rtm --skip tbm --skip sse4a --skip test_mm512_stream_ps --skip test_tile_
105+
106+
# Summary job for the merge queue.
107+
# ALL THE PREVIOUS JOBS NEED TO BE ADDED TO THE `needs` SECTION OF THIS JOB!
108+
success:
109+
needs: [build]
110+
# We need to ensure this job does *not* get skipped if its dependencies fail,
111+
# because a skipped job is considered a success by GitHub. So we have to
112+
# overwrite `if:`. We use `!cancelled()` to ensure the job does still not get run
113+
# when the workflow is canceled manually.
114+
if: ${{ !cancelled() }}
115+
runs-on: ubuntu-latest
116+
steps:
117+
# Manually check the status of all dependencies. `if: failure()` does not work.
118+
- name: Conclusion
119+
run: |
120+
# Print the dependent jobs to see them in the CI log
121+
jq -C <<< '${{ toJson(needs) }}'
122+
# Check if all jobs that we depend on (in the needs array) were successful.
123+
jq --exit-status 'all(.result == "success")' <<< '${{ toJson(needs) }}'

0 commit comments

Comments
 (0)