run: |
gh pr edit --repo ${{github.repository}} \
--remove-label ${{vars.CHERRY_PICK_TEST_LABEL}} \
- --add-label ${{vars.TESTING_CHERRY_PICKS_LABEL}} ${{env.PR_NUMBER}} || :
+ --remove-label ${{vars.CHERRY_PICK_CHECKS_PASSED_LABEL}} \
+ --remove-label ${{vars.CHERRY_PICK_CHECKS_FAILED_LABEL}} \
+ --remove-label ${{vars.CHERRY_PICK_GATES_PASSED_LABEL}} \
+ --remove-label ${{vars.CHERRY_PICK_GATES_FAILED_LABEL}} \
+ --add-label ${{vars.CHERRY_PICK_TESTING_IN_PROGRESS}} \
+ ${{env.PR_NUMBER}} || :
- name: Get cherry-pick branches
uses: asterisk/asterisk-ci-actions/GetCherryPickBranchesFromPR@main
case $RESULT in
success)
gh pr edit --repo ${{github.repository}} \
- --add-label ${{vars.CHERRY_PICK_CHECKS_PASSED_LABEL}} ${{env.PR_NUMBER}} || :
+ --add-label ${{vars.CHERRY_PICK_CHECKS_PASSED_LABEL}} \
+ ${{env.PR_NUMBER}} || :
echo "::notice::All tests passed"
exit 0
;;
skipped)
gh pr edit --repo ${{github.repository}} \
- --remove-label ${{vars.TESTING_CHERRY_PICKS_LABEL}} \
- --add-label ${{vars.CHERRY_PICK_CHECKS_FAILED_LABEL}} ${{env.PR_NUMBER}} || :
+ --remove-label ${{CHERRY_PICK_TESTING_IN_PROGRESS}} \
+ --add-label ${{vars.CHERRY_PICK_CHECKS_FAILED_LABEL}} \
+ ${{env.PR_NUMBER}} || :
echo "::notice::Unit tests were skipped because of an earlier failure"
exit 1
;;
- *)
- gh pr edit --repo ${{github.repository}} \
- --remove-label ${{vars.TESTING_CHERRY_PICKS_LABEL}} \
- --add-label ${{vars.CHERRY_PICK_CHECKS_FAILED_LABEL}} ${{env.PR_NUMBER}} || :
+ *)
+ gh pr edit --repo ${{github.repository}} \
+ --remove-label ${{CHERRY_PICK_TESTING_IN_PROGRESS}} \
+ --add-label ${{vars.CHERRY_PICK_CHECKS_FAILED_LABEL}} \
+ ${{env.PR_NUMBER}} || :
echo "::error::One or more tests failed ($RESULT)"
exit 1
esac
RESULT: ${{needs.AsteriskGateTestMatrix.result}}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
+ gh pr edit --repo ${{github.repository}} \
+ --remove-label ${{vars.CHERRY_PICK_TESTING_IN_PROGRESS}} \
+ ${{env.PR_NUMBER}} || :
case $RESULT in
success)
gh pr edit --repo ${{github.repository}} \
- --remove-label ${{vars.TESTING_CHERRY_PICKS_LABEL}} \
- --add-label ${{vars.CHERRY_PICK_GATES_PASSED_LABEL}} ${{env.PR_NUMBER}} || :
+ --add-label ${{vars.CHERRY_PICK_GATES_PASSED_LABEL}} \
+ ${{env.PR_NUMBER}} || :
echo "::notice::All Testsuite tests passed"
exit 0
;;
skipped)
- gh pr edit --repo ${{github.repository}} \
- --remove-label ${{vars.TESTING_CHERRY_PICKS_LABEL}} ${{env.PR_NUMBER}} || :
echo "::error::Testsuite tests were skipped because of an earlier failure"
exit 1
;;
*)
gh pr edit --repo ${{github.repository}} \
- --remove-label ${{vars.TESTING_CHERRY_PICKS_LABEL}} \
- --add-label ${{vars.CHERRY_PICK_GATES_FAILED_LABEL}} ${{env.PR_NUMBER}} || :
+ --add-label ${{vars.CHERRY_PICK_GATES_FAILED_LABEL}} \
+ ${{env.PR_NUMBER}} || :
echo "::error::One or more Testsuite tests failed ($RESULT)"
exit 1
esac
MODULES_BLACKLIST: ${{vars.GATETEST_MODULES_BLACKLIST}} ${{vars.UNITTEST_MODULES_BLACKLIST}}
jobs:
+ SetLabels:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Set Labels
+ env:
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ run: |
+ gh pr edit --repo ${{github.repository}} \
+ --remove-label ${{vars.TEST_CHECKS_PASSED_LABEL}} \
+ --remove-label ${{vars.TEST_CHECKS_FAILED_LABEL}} \
+ --remove-label ${{vars.TEST_GATES_PASSED_LABEL}} \
+ --remove-label ${{vars.TEST_GATES_FAILED_LABEL}} \
+ --add-label ${{vars.TESTING_IN_PROGRESS}} \
+ ${{env.PR_NUMBER}} || :
+
AsteriskUnitTests:
runs-on: ubuntu-latest
+ needs: [ SetLabels ]
steps:
- name: Run Unit Tests
uses: asterisk/asterisk-ci-actions/AsteriskUnitComposite@main
unittest_command: ${{vars.UNITTEST_COMMAND}}
- name: Get Token needed to add reviewers
+ if: ${{ success() }}
id: get_workflow_token
uses: peter-murray/workflow-application-token-action@v1
with:
for r in $REVIEWERS ; do
gh pr edit --repo ${ASTERISK_REPO} ${PR_NUMBER} --add-reviewer $r
done
+ gh pr edit --repo ${{github.repository}} \
+ --add-label ${{vars.TEST_CHECKS_PASSED_LABEL}} \
+ ${{env.PR_NUMBER}} || :
AsteriskGate:
needs: AsteriskUnitTests
- name: Check test matrix status
env:
RESULT: ${{ needs.AsteriskGate.result }}
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
echo "all results: ${{ toJSON(needs.*.result) }}"
echo "composite result: ${{ needs.AsteriskGate.result }}"
+ gh pr edit --repo ${{github.repository}} \
+ --remove-label ${{vars.TESTING_IN_PROGRESS}} \
+ ${{env.PR_NUMBER}} || :
+
case $RESULT in
success)
+ gh pr edit --repo ${{github.repository}} \
+ --add-label ${{vars.TEST_GATES_PASSED_LABEL}} \
+ ${{env.PR_NUMBER}} || :
echo "::notice::All Testsuite tests passed"
exit 0
;;
skipped)
+ gh pr edit --repo ${{github.repository}} \
+ --add-label ${{vars.TEST_CHECKS_FAILED_LABEL}} \
+ ${{env.PR_NUMBER}} || :
echo "::error::Testsuite tests were skipped because of an earlier failure"
exit 1
;;
- *)
+ *)
+ gh pr edit --repo ${{github.repository}} \
+ --add-label ${{vars.TEST_GATES_FAILED_LABEL}} \
+ ${{env.PR_NUMBER}} || :
echo "::error::One or more Testsuite tests failed ($RESULT)"
exit 1
esac