15
15
name : Build with unit tests
16
16
17
17
on :
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]
23
23
24
24
jobs :
25
25
build :
26
26
runs-on : k8s-runner-build
27
27
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
+ )
30
39
steps :
31
- # Pinned 1.0.0 version
32
- - uses : haya14busa/action-workflow_run-status@967ed83efa565c257675ed70cfe5231f062ddd94
33
-
34
40
- uses : actions/checkout@v3
35
41
with :
36
42
ref : ${{ github.event.workflow_run.head_sha }}
@@ -47,21 +53,12 @@ jobs:
47
53
run : mvn clean compile test -fae -T 2 -B -V -DcloudBuild -Dmaven.wagon.http.retryHandler.count=3 -Dmaven.wagon.httpconnectionManager.ttlSeconds=25
48
54
49
55
- name : Archive build artifacts
50
- uses : actions/upload-artifact@v3
56
+ uses : actions/upload-artifact@v4
51
57
if : always()
52
58
with :
53
- name : Build debug files
59
+ name : reports-${{ github.run_id }}
54
60
path : |
55
61
**/target/rat.txt
56
62
**/target/surefire-reports/*
57
63
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