-
-
Notifications
You must be signed in to change notification settings - Fork 27
/
Copy pathexample_workflow.yml
111 lines (101 loc) · 3.83 KB
/
example_workflow.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
name: Run AQAvit
on:
workflow_dispatch: # Allows the job to be manually triggered
inputs:
customizedSdkUrl:
description: JDK binary download link
required: true
runParallel:
description: Run tests in parallel
required: true
type: boolean
runner:
description: runner
required: true
type: choice
options:
- ubuntu-latest
- windows-2019
- macos-11
env:
USE_TESTENV_PROPERTIES: true # true for AQAvit verification
jobs:
setup-parallel:
runs-on: ${{ inputs.runner }}
if: ${{ inputs.runParallel == true }}
name: setup-parallel - ${{ inputs.runner }}_${{ matrix.suite }}
strategy:
fail-fast: true
matrix:
suite: [functional, openjdk, system, perf]
steps:
- uses: adoptium/[email protected]
name: Generate parallelList - ${{ matrix.suite }}
with:
jdksource: 'customized'
customizedSdkUrl: ${{ inputs.customizedSdkUrl }}
aqa-testsRepo: 'adoptium/aqa-tests:v0.9.4-release' # Make sure this branch is set to the latest release branch
build_list: ${{ matrix.suite }}
target: ${{ matrix.suite }} # parallelList to generate
run_parallel: ${{ inputs.runParallel }}
num_machines: 4 # number of machines we want to run
- name: Archive parallelList - ${{ matrix.suite }}
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.suite }}-parallelList.mk
path: ${{ github.workspace }}/aqa-tests/TKG/parallelList.mk
run-aqa-parallel:
runs-on: ${{ inputs.runner }}
if: ${{ inputs.runParallel == true }}
needs: setup-parallel
name: Run AQAvit ${{ inputs.runner }} - _${{ matrix.suite }}.${{ matrix.test_list }}
strategy:
fail-fast: false
matrix:
test_list: ['testList_0', 'testList_1', 'testList_2', 'testList_3'] # numlist is hardcoded
suite: [functional, openjdk, system, perf]
steps:
# download the paralleList to the current working directory
- name: Download parallelList - ${{ matrix.suite }}
uses: actions/download-artifact@v4
with:
name: ${{ matrix.suite }}-parallelList.mk
path: ./
- name: Run AQA Parallel Test - ${{ matrix.suite }}_${{ matrix.test_list }}
uses: adoptium/[email protected]
with:
jdksource: 'customized'
customizedSdkUrl: ${{ inputs.customizedSdkUrl }}
aqa-testsRepo: 'adoptium/aqa-tests:v0.9.4-release' # Make sure this branch is set to the latest release branch
build_list: ${{ matrix.suite }}
target : -f parallelList.mk ${{ matrix.test_list }}
- uses: actions/upload-artifact@v4
if: always() # Always run this step (even if the tests failed)
with:
name: test_output_${{ matrix.suite }}_${{ matrix.test_list }}
path: ./**/output_*/*.tap
run_aqa:
runs-on: ${{ inputs.runner }}
if: ${{ inputs.runParallel != true }} # when we do not want to run parallel tests
strategy:
fail-fast: false
matrix:
target: [sanity, extended]
suite: [functional, openjdk, system, perf]
include:
- target: special
suite: functional
steps:
- name: Run AQA Tests - ${{ matrix.target }}.${{ matrix.suite }}
uses: adoptium/[email protected]
with:
jdksource: 'customized'
customizedSdkUrl: ${{ inputs.customizedSdkUrl }}
aqa-testsRepo: 'adoptium/aqa-tests:v0.9.4-release' # Make sure this branch is set to the latest release branch
build_list: ${{ matrix.suite }}
target: _${{ matrix.target }}.${{ matrix.suite }}
- uses: actions/upload-artifact@v4
if: always() # Always run this step (even if the tests failed)
with:
name: test_output
path: ./**/output_*/*.tap