.github: Refactor CP progress and add new PR test progress

pull/53/head^2
George Joseph 2 years ago
parent cacd98bb29
commit 06c6a8b064

@ -33,7 +33,12 @@ jobs:
run: | run: |
gh pr edit --repo ${{github.repository}} \ gh pr edit --repo ${{github.repository}} \
--remove-label ${{vars.CHERRY_PICK_TEST_LABEL}} \ --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 - name: Get cherry-pick branches
uses: asterisk/asterisk-ci-actions/GetCherryPickBranchesFromPR@main uses: asterisk/asterisk-ci-actions/GetCherryPickBranchesFromPR@main
@ -78,21 +83,24 @@ jobs:
case $RESULT in case $RESULT in
success) success)
gh pr edit --repo ${{github.repository}} \ 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" echo "::notice::All tests passed"
exit 0 exit 0
;; ;;
skipped) skipped)
gh pr edit --repo ${{github.repository}} \ gh pr edit --repo ${{github.repository}} \
--remove-label ${{vars.TESTING_CHERRY_PICKS_LABEL}} \ --remove-label ${{CHERRY_PICK_TESTING_IN_PROGRESS}} \
--add-label ${{vars.CHERRY_PICK_CHECKS_FAILED_LABEL}} ${{env.PR_NUMBER}} || : --add-label ${{vars.CHERRY_PICK_CHECKS_FAILED_LABEL}} \
${{env.PR_NUMBER}} || :
echo "::notice::Unit tests were skipped because of an earlier failure" echo "::notice::Unit tests were skipped because of an earlier failure"
exit 1 exit 1
;; ;;
*) *)
gh pr edit --repo ${{github.repository}} \ gh pr edit --repo ${{github.repository}} \
--remove-label ${{vars.TESTING_CHERRY_PICKS_LABEL}} \ --remove-label ${{CHERRY_PICK_TESTING_IN_PROGRESS}} \
--add-label ${{vars.CHERRY_PICK_CHECKS_FAILED_LABEL}} ${{env.PR_NUMBER}} || : --add-label ${{vars.CHERRY_PICK_CHECKS_FAILED_LABEL}} \
${{env.PR_NUMBER}} || :
echo "::error::One or more tests failed ($RESULT)" echo "::error::One or more tests failed ($RESULT)"
exit 1 exit 1
esac esac
@ -132,24 +140,25 @@ jobs:
RESULT: ${{needs.AsteriskGateTestMatrix.result}} RESULT: ${{needs.AsteriskGateTestMatrix.result}}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: | run: |
gh pr edit --repo ${{github.repository}} \
--remove-label ${{vars.CHERRY_PICK_TESTING_IN_PROGRESS}} \
${{env.PR_NUMBER}} || :
case $RESULT in case $RESULT in
success) success)
gh pr edit --repo ${{github.repository}} \ gh pr edit --repo ${{github.repository}} \
--remove-label ${{vars.TESTING_CHERRY_PICKS_LABEL}} \ --add-label ${{vars.CHERRY_PICK_GATES_PASSED_LABEL}} \
--add-label ${{vars.CHERRY_PICK_GATES_PASSED_LABEL}} ${{env.PR_NUMBER}} || : ${{env.PR_NUMBER}} || :
echo "::notice::All Testsuite tests passed" echo "::notice::All Testsuite tests passed"
exit 0 exit 0
;; ;;
skipped) 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" echo "::error::Testsuite tests were skipped because of an earlier failure"
exit 1 exit 1
;; ;;
*) *)
gh pr edit --repo ${{github.repository}} \ gh pr edit --repo ${{github.repository}} \
--remove-label ${{vars.TESTING_CHERRY_PICKS_LABEL}} \ --add-label ${{vars.CHERRY_PICK_GATES_FAILED_LABEL}} \
--add-label ${{vars.CHERRY_PICK_GATES_FAILED_LABEL}} ${{env.PR_NUMBER}} || : ${{env.PR_NUMBER}} || :
echo "::error::One or more Testsuite tests failed ($RESULT)" echo "::error::One or more Testsuite tests failed ($RESULT)"
exit 1 exit 1
esac esac

@ -18,8 +18,24 @@ env:
MODULES_BLACKLIST: ${{vars.GATETEST_MODULES_BLACKLIST}} ${{vars.UNITTEST_MODULES_BLACKLIST}} MODULES_BLACKLIST: ${{vars.GATETEST_MODULES_BLACKLIST}} ${{vars.UNITTEST_MODULES_BLACKLIST}}
jobs: 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: AsteriskUnitTests:
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: [ SetLabels ]
steps: steps:
- name: Run Unit Tests - name: Run Unit Tests
uses: asterisk/asterisk-ci-actions/AsteriskUnitComposite@main uses: asterisk/asterisk-ci-actions/AsteriskUnitComposite@main
@ -32,6 +48,7 @@ jobs:
unittest_command: ${{vars.UNITTEST_COMMAND}} unittest_command: ${{vars.UNITTEST_COMMAND}}
- name: Get Token needed to add reviewers - name: Get Token needed to add reviewers
if: ${{ success() }}
id: get_workflow_token id: get_workflow_token
uses: peter-murray/workflow-application-token-action@v1 uses: peter-murray/workflow-application-token-action@v1
with: with:
@ -51,6 +68,9 @@ jobs:
for r in $REVIEWERS ; do for r in $REVIEWERS ; do
gh pr edit --repo ${ASTERISK_REPO} ${PR_NUMBER} --add-reviewer $r gh pr edit --repo ${ASTERISK_REPO} ${PR_NUMBER} --add-reviewer $r
done done
gh pr edit --repo ${{github.repository}} \
--add-label ${{vars.TEST_CHECKS_PASSED_LABEL}} \
${{env.PR_NUMBER}} || :
AsteriskGate: AsteriskGate:
needs: AsteriskUnitTests needs: AsteriskUnitTests
@ -85,20 +105,34 @@ jobs:
- name: Check test matrix status - name: Check test matrix status
env: env:
RESULT: ${{ needs.AsteriskGate.result }} RESULT: ${{ needs.AsteriskGate.result }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: | run: |
echo "all results: ${{ toJSON(needs.*.result) }}" echo "all results: ${{ toJSON(needs.*.result) }}"
echo "composite result: ${{ needs.AsteriskGate.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 case $RESULT in
success) success)
gh pr edit --repo ${{github.repository}} \
--add-label ${{vars.TEST_GATES_PASSED_LABEL}} \
${{env.PR_NUMBER}} || :
echo "::notice::All Testsuite tests passed" echo "::notice::All Testsuite tests passed"
exit 0 exit 0
;; ;;
skipped) 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" echo "::error::Testsuite tests were skipped because of an earlier failure"
exit 1 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)" echo "::error::One or more Testsuite tests failed ($RESULT)"
exit 1 exit 1
esac esac

Loading…
Cancel
Save