Skip to content

Commit 9cd25d8

Browse files
[CONFIG] Also fixing CI-MATS comment feature (- WIP #338 -)
Changes in file .github/workflows/CI-MATs.yml: * added job to comment with summary on relevant commit * related work
1 parent 4e0e02a commit 9cd25d8

File tree

1 file changed

+75
-45
lines changed

1 file changed

+75
-45
lines changed

.github/workflows/CI-MATs.yml

Lines changed: 75 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -187,69 +187,75 @@ jobs:
187187
mv -vf "MATS/test-reports" ./"test-reports" || : ;
188188
if: ${{ (needs.check_build.outputs.should_run == 'true') && success() }}
189189
- id: report_status
190+
env:
191+
BUILD_SHA: ${{ needs.check_build.outputs.build_sha }}
192+
MATS_COMMENT_BODY: '${{ github.workspace }}/MATs-Summary-Artifact.txt'
190193
run: |
191194
if [[ "${{ needs.MATS.outputs.mats_status }}" == "success" ]]; then
192-
echo "# :green_circle: Automated Code Checks Passed" > "$GITHUB_STEP_SUMMARY"
193-
echo "" >> "$GITHUB_STEP_SUMMARY"
194-
echo "## :building_construction: Build" >> "$GITHUB_STEP_SUMMARY"
195-
echo "" >> "$GITHUB_STEP_SUMMARY"
195+
echo "# :green_circle: Automated Code Checks Passed" > "${MATS_COMMENT_BODY}"
196+
echo "" >> "${MATS_COMMENT_BODY}"
197+
echo "## :building_construction: Build" >> "${MATS_COMMENT_BODY}"
198+
echo "" >> "${MATS_COMMENT_BODY}"
196199
if [[ "${{ needs.check_build.outputs.should_run }}" == "true" ]]; then
197200
BUILD_SHA="${{ needs.check_build.outputs.sha }}"
198-
echo " :ballot_box_with_check: BUILD \`${{ needs.check_build.outputs.trigger_id }}\` succeeded with commit [${BUILD_SHA}](https://github.com/reactive-firewall/multicast/commit/${BUILD_SHA})" >> "$GITHUB_STEP_SUMMARY"
199-
echo "build_success=true" >> "$GITHUB_OUTPUT"
201+
echo " :ballot_box_with_check: BUILD \`${{ needs.check_build.outputs.trigger_id }}\` succeeded with commit [${BUILD_SHA}](https://github.com/reactive-firewall/multicast/commit/${BUILD_SHA})" >> "${MATS_COMMENT_BODY}"
202+
echo "build_success=true" >> "${MATS_COMMENT_BODY}"
200203
else
201-
echo " :x: BUILD ${{ needs.check_build.outputs.trigger_id }} failed" >> "$GITHUB_STEP_SUMMARY"
202-
echo "build_success=false" >> "$GITHUB_OUTPUT"
204+
echo " :x: BUILD ${{ needs.check_build.outputs.trigger_id }} failed" >> "${MATS_COMMENT_BODY}"
205+
echo "build_success=false" >> "${MATS_COMMENT_BODY}"
203206
fi
204-
echo "" >> "$GITHUB_STEP_SUMMARY"
205-
echo "## :1234: Minimal Acceptance Testing" >> "$GITHUB_STEP_SUMMARY"
206-
echo "" >> "$GITHUB_STEP_SUMMARY"
207-
cat <./MATS/"MATs-Summary-Artifact-${{ vars.PYTHON_OLD_MIN }}.txt" >> "$GITHUB_STEP_SUMMARY"
208-
echo "" >> "$GITHUB_STEP_SUMMARY"
209-
cat <./MATS/"MATs-Summary-Artifact-${{ vars.PYTHON_DEFAULT }}.txt" >> "$GITHUB_STEP_SUMMARY"
210-
echo "" >> "$GITHUB_STEP_SUMMARY"
211-
cat <./MATS/"MATs-Summary-Artifact-${{ vars.PYTHON_EXPERIMENTAL }}.txt" >> "$GITHUB_STEP_SUMMARY"
212-
echo "" >> "$GITHUB_STEP_SUMMARY"
207+
echo "" >> "${MATS_COMMENT_BODY}"
208+
echo "## :1234: Minimal Acceptance Testing" >> "${MATS_COMMENT_BODY}"
209+
echo "" >> "${MATS_COMMENT_BODY}"
210+
cat <./MATS/"MATs-Summary-Artifact-${{ vars.PYTHON_OLD_MIN }}.txt" >> "${MATS_COMMENT_BODY}"
211+
echo "" >> "${MATS_COMMENT_BODY}"
212+
cat <./MATS/"MATs-Summary-Artifact-${{ vars.PYTHON_DEFAULT }}.txt" >> "${MATS_COMMENT_BODY}"
213+
echo "" >> "${MATS_COMMENT_BODY}"
214+
cat <./MATS/"MATs-Summary-Artifact-${{ vars.PYTHON_EXPERIMENTAL }}.txt" >> "${MATS_COMMENT_BODY}"
215+
echo "" >> "${MATS_COMMENT_BODY}"
213216
echo "mats_success=true" >> "$GITHUB_OUTPUT"
214217
else
215-
echo "# Unstable Commit" > "$GITHUB_STEP_SUMMARY"
216-
echo "" >> "$GITHUB_STEP_SUMMARY"
217-
echo "> [!CAUTION]" >> "$GITHUB_STEP_SUMMARY"
218-
echo "> Unstable - This commit is failed to pass minimal acceptance testing." >> "$GITHUB_STEP_SUMMARY"
219-
echo "" >> "$GITHUB_STEP_SUMMARY"
220-
echo "## :construction: Build" >> "$GITHUB_STEP_SUMMARY"
221-
echo "" >> "$GITHUB_STEP_SUMMARY"
218+
echo "# Unstable Commit" > "${MATS_COMMENT_BODY}"
219+
echo "" >> "${MATS_COMMENT_BODY}"
220+
echo "> [!CAUTION]" >> "${MATS_COMMENT_BODY}"
221+
echo "> Unstable - This commit is failed to pass minimal acceptance testing." >> "${MATS_COMMENT_BODY}"
222+
echo "" >> "${MATS_COMMENT_BODY}"
223+
echo "## :construction: Build" >> "${MATS_COMMENT_BODY}"
224+
echo "" >> "${MATS_COMMENT_BODY}"
222225
if [[ "${{ needs.check_build.outputs.should_run }}" == "true" ]]; then
223-
echo " :ballot_box_with_check: BUILD \`${{ needs.check_build.outputs.trigger_id }}\` succeeded with commit ${{ needs.check_build.outputs.sha }}" >> "$GITHUB_STEP_SUMMARY"
226+
echo " :ballot_box_with_check: BUILD \`${{ needs.check_build.outputs.trigger_id }}\` succeeded with commit ${{ needs.check_build.outputs.sha }}" >> "${MATS_COMMENT_BODY}"
224227
echo "build_success=true" >> "$GITHUB_OUTPUT"
225228
else
226-
echo " :x: BUILD ${{ needs.check_build.outputs.trigger_id }} failed" >> "$GITHUB_STEP_SUMMARY"
229+
echo " :x: BUILD ${{ needs.check_build.outputs.trigger_id }} failed" >> "${MATS_COMMENT_BODY}"
227230
echo "build_success=false" >> "$GITHUB_OUTPUT"
228231
fi
229232
echo "" >> "$GITHUB_STEP_SUMMARY"
230-
echo "## :red_circle: Minimal Acceptance Testing" >> "$GITHUB_STEP_SUMMARY"
231-
echo "" >> "$GITHUB_STEP_SUMMARY"
232-
echo " :x: MATs ${{ github.run_id }} failed with commit ${{ needs.check_build.outputs.sha }}" >> "$GITHUB_STEP_SUMMARY"
233-
echo "" >> "$GITHUB_STEP_SUMMARY"
234-
echo "## :1234: Minimal Acceptance Testing" >> "$GITHUB_STEP_SUMMARY"
235-
echo "" >> "$GITHUB_STEP_SUMMARY"
236-
cat <./MATS/"MATs-Summary-Artifact-${{ vars.PYTHON_OLD_MIN }}.txt" >> "$GITHUB_STEP_SUMMARY"
237-
echo "" >> "$GITHUB_STEP_SUMMARY"
238-
cat <./MATS/"MATs-Summary-Artifact-${{ vars.PYTHON_DEFAULT }}.txt" >> "$GITHUB_STEP_SUMMARY"
239-
echo "" >> "$GITHUB_STEP_SUMMARY"
240-
cat <./MATS/"MATs-Summary-Artifact-${{ vars.PYTHON_EXPERIMENTAL }}.txt" >> "$GITHUB_STEP_SUMMARY"
241-
echo "" >> "$GITHUB_STEP_SUMMARY"
233+
echo "## :red_circle: Minimal Acceptance Testing" >> "${MATS_COMMENT_BODY}"
234+
echo "" >> "${MATS_COMMENT_BODY}"
235+
echo " :x: MATs ${{ github.run_id }} failed with commit ${{ needs.check_build.outputs.sha }}" >> "${MATS_COMMENT_BODY}"
236+
echo "" >> "${MATS_COMMENT_BODY}"
237+
echo "## :1234: Minimal Acceptance Testing" >> "${MATS_COMMENT_BODY}"
238+
echo "" >> "${MATS_COMMENT_BODY}"
239+
cat <./MATS/"MATs-Summary-Artifact-${{ vars.PYTHON_OLD_MIN }}.txt" >> "${MATS_COMMENT_BODY}"
240+
echo "" >> "${MATS_COMMENT_BODY}"
241+
cat <./MATS/"MATs-Summary-Artifact-${{ vars.PYTHON_DEFAULT }}.txt" >> "${MATS_COMMENT_BODY}"
242+
echo "" >> "${MATS_COMMENT_BODY}"
243+
cat <./MATS/"MATs-Summary-Artifact-${{ vars.PYTHON_EXPERIMENTAL }}.txt" >> "${MATS_COMMENT_BODY}"
244+
echo "" >> "${MATS_COMMENT_BODY}"
242245
echo "mats_success=false" >> "$GITHUB_OUTPUT"
243246
fi
244-
cat <"$GITHUB_STEP_SUMMARY" >> "MATS_COMMENT_BODY_${{ needs.check_build.outputs.sha }}.md"
245-
- name: "MATs commit comment"
247+
cat <"${MATS_COMMENT_BODY}" >> "$GITHUB_STEP_SUMMARY"
248+
- name: "Upload MATs summary"
249+
id: upload-mats-summary
246250
if: ${{ !cancelled() && (github.repository == 'reactive-firewall/multicast') }}
247-
id: mats_commit_comment
248-
uses: peter-evans/commit-comment@5a6f8285b8f2e8376e41fe1b563db48e6cf78c09 # v3.0.0
251+
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
249252
with:
250-
sha: ${{ needs.check_build.outputs.sha }}
251-
token: ${{ github.token }}
252-
body-path: 'MATS_COMMENT_BODY_${{ needs.check_build.outputs.sha }}.md'
253+
path: ./MATs-Summary-Artifact.txt
254+
name: MATS-COMMENT-BODY-${{ needs.check_build.outputs.sha }}
255+
if-no-files-found: error
256+
compression-level: 3
257+
retention-days: 2
258+
overwrite: true
253259

254260
MATS_STATUS:
255261
permissions:
@@ -308,3 +314,27 @@ jobs:
308314
compression-level: 3
309315
retention-days: 2
310316
overwrite: true
317+
318+
MATs_REPORT:
319+
permissions:
320+
actions: read
321+
contents: write
322+
needs: [check_build, MATs_SUMMARY]
323+
runs-on: ubuntu-latest
324+
if: ${{ !cancelled() }}
325+
steps:
326+
- name: "Download Status Summary Artifact"
327+
id: download-mats-summary
328+
if: ${{ !cancelled() && (github.repository == 'reactive-firewall/multicast') }}
329+
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
330+
with:
331+
name: MATS-COMMENT-BODY-${{ needs.check_build.outputs.sha }}
332+
github-token: ${{ github.token }}
333+
- name: "MATs commit comment"
334+
id: mats-commit-comment
335+
if: ${{ success() && (github.repository == 'reactive-firewall/multicast') }}
336+
uses: peter-evans/commit-comment@5a6f8285b8f2e8376e41fe1b563db48e6cf78c09 # v3.0.0
337+
with:
338+
sha: ${{ needs.check_build.outputs.sha }}
339+
token: ${{ github.token }}
340+
body-path: '${{ steps.download-mats-summary.outputs.download-path }}/MATs-Summary-Artifact.txt'

0 commit comments

Comments
 (0)