1515name : Build with unit tests
1616
1717on :
18- workflow_run :
19- workflows :
20- - Trigger build
21- types :
22- - completed
18+ push :
19+ branches : [ develop, release/** ]
20+ pull_request :
21+ branches : [ develop, release/** ]
22+ types : [opened, synchronize, reopened, labeled]
2323
2424jobs :
2525 build :
2626 runs-on : k8s-runner-build
2727
28- if : ${{ github.event.workflow_run.conclusion != 'skipped' }}
29-
28+ # We allow builds:
29+ # 1) When it's a merge into a branch
30+ # 2) For PRs that are labeled as build and
31+ # - It's a code change
32+ # - A build label was just added
33+ # A bit complex, but prevents builds when other labels are manipulated
34+ if : >
35+ github.event_name == 'push'
36+ || (contains(github.event.pull_request.labels.*.name, 'build')
37+ && (github.event.action != 'labeled' || github.event.label.name == 'build')
38+ )
3039 steps :
31- # Pinned 1.0.0 version
32- - uses : haya14busa/action-workflow_run-status@967ed83efa565c257675ed70cfe5231f062ddd94
33-
3440 - uses : actions/checkout@v3
3541 with :
3642 ref : ${{ github.event.workflow_run.head_sha }}
@@ -47,21 +53,12 @@ jobs:
4753 run : mvn clean test -fae -T 2 -B -V -Dmaven.wagon.http.retryHandler.count=3 -Dmaven.wagon.httpconnectionManager.ttlSeconds=25
4854
4955 - name : Archive build artifacts
50- uses : actions/upload-artifact@v3
56+ uses : actions/upload-artifact@v4
5157 if : always()
5258 with :
53- name : Build debug files
59+ name : reports-${{ github.run_id }}
5460 path : |
5561 **/target/rat.txt
5662 **/target/surefire-reports/*
5763
58- - name : Surefire Report
59- # Pinned 3.5.2 version
60- uses : mikepenz/action-junit-report@16a9560bd02f11e7e3bf6b3e2ef6bba6c9d07c32
61- if : always()
62- with :
63- report_paths : ' **/target/surefire-reports/TEST-*.xml'
64- github_token : ${{ secrets.GITHUB_TOKEN }}
65- detailed_summary : true
66- commit : ${{ github.event.workflow_run.head_sha }}
67- check_name : Test Report
64+
0 commit comments