Skip to content

Commit db49639

Browse files
authored
Merge pull request #335 from riscv-software-src/parallel_regress
Make regression test parallel for generation steps
2 parents ea3dda8 + 85758c2 commit db49639

File tree

1 file changed

+119
-5
lines changed

1 file changed

+119
-5
lines changed

.github/workflows/regress.yml

Lines changed: 119 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,124 @@ on:
55
- main
66
workflow_dispatch:
77
jobs:
8-
regress:
8+
regress-smoke:
99
runs-on: ubuntu-latest
10+
steps:
11+
- name: Clone Github Repo Action
12+
uses: actions/checkout@v4
13+
- name: Setup apptainer
14+
uses: eWaterCycle/[email protected]
15+
- name: Get container from cache
16+
id: cache-sif
17+
uses: actions/cache@v3
18+
with:
19+
path: .singularity/image.sif
20+
key: ${{ hashFiles('container.def', 'bin/.container-tag') }}
21+
- name: Get gems and node files from cache
22+
id: cache-bundle-npm
23+
uses: actions/cache@v3
24+
with:
25+
path: |
26+
.home/.gems
27+
node_modules
28+
key: ${{ hashFiles('Gemfile.lock') }}-${{ hashFiles('package-lock.json') }}
29+
- if: ${{ steps.cache-sif.outputs.cache-hit != 'true' }}
30+
name: Build container
31+
run: ./bin/build_container
32+
- name: Setup project
33+
run: ./bin/setup
34+
- name: Run smoke
35+
run: ./do test:smoke
36+
regress-gen-isa-manual:
37+
runs-on: ubuntu-latest
38+
needs: regress-smoke
39+
env:
40+
MANUAL_NAME: isa
41+
VERSIONS: all
42+
steps:
43+
- name: Clone Github Repo Action
44+
uses: actions/checkout@v4
45+
- name: Setup apptainer
46+
uses: eWaterCycle/[email protected]
47+
- name: Get container from cache
48+
id: cache-sif
49+
uses: actions/cache@v3
50+
with:
51+
path: .singularity/image.sif
52+
key: ${{ hashFiles('container.def', 'bin/.container-tag') }}
53+
- name: Get gems and node files from cache
54+
id: cache-bundle-npm
55+
uses: actions/cache@v3
56+
with:
57+
path: |
58+
.home/.gems
59+
node_modules
60+
key: ${{ hashFiles('Gemfile.lock') }}-${{ hashFiles('package-lock.json') }}
61+
- if: ${{ steps.cache-sif.outputs.cache-hit != 'true' }}
62+
name: Build container
63+
run: ./bin/build_container
64+
- name: Generate HTML ISA manual
65+
run: ./do gen:html_manual
66+
regress-gen-ext-pdf:
67+
runs-on: ubuntu-latest
68+
needs: regress-smoke
69+
env:
70+
EXT: B
71+
VERSION: latest
72+
steps:
73+
- name: Clone Github Repo Action
74+
uses: actions/checkout@v4
75+
- name: Setup apptainer
76+
uses: eWaterCycle/[email protected]
77+
- name: Get container from cache
78+
id: cache-sif
79+
uses: actions/cache@v3
80+
with:
81+
path: .singularity/image.sif
82+
key: ${{ hashFiles('container.def', 'bin/.container-tag') }}
83+
- name: Get gems and node files from cache
84+
id: cache-bundle-npm
85+
uses: actions/cache@v3
86+
with:
87+
path: |
88+
.home/.gems
89+
node_modules
90+
key: ${{ hashFiles('Gemfile.lock') }}-${{ hashFiles('package-lock.json') }}
91+
- if: ${{ steps.cache-sif.outputs.cache-hit != 'true' }}
92+
name: Build container
93+
run: ./bin/build_container
94+
- name: Generate extension PDF
95+
run: ./do gen:ext_pdf
96+
regress-gen-certificate:
97+
runs-on: ubuntu-latest
98+
needs: regress-smoke
99+
steps:
100+
- name: Clone Github Repo Action
101+
uses: actions/checkout@v4
102+
- name: Setup apptainer
103+
uses: eWaterCycle/[email protected]
104+
- name: Get container from cache
105+
id: cache-sif
106+
uses: actions/cache@v3
107+
with:
108+
path: .singularity/image.sif
109+
key: ${{ hashFiles('container.def', 'bin/.container-tag') }}
110+
- name: Get gems and node files from cache
111+
id: cache-bundle-npm
112+
uses: actions/cache@v3
113+
with:
114+
path: |
115+
.home/.gems
116+
node_modules
117+
key: ${{ hashFiles('Gemfile.lock') }}-${{ hashFiles('package-lock.json') }}
118+
- if: ${{ steps.cache-sif.outputs.cache-hit != 'true' }}
119+
name: Build container
120+
run: ./bin/build_container
121+
- name: Generate extension PDF
122+
run: ./do gen:cert_model_pdf[MockCertificateModel]
123+
regress-gen-profile:
124+
runs-on: ubuntu-latest
125+
needs: regress-smoke
10126
steps:
11127
- name: Clone Github Repo Action
12128
uses: actions/checkout@v4
@@ -29,7 +145,5 @@ jobs:
29145
- if: ${{ steps.cache-sif.outputs.cache-hit != 'true' }}
30146
name: Build container
31147
run: ./bin/build_container
32-
- name: Setup project
33-
run: ./bin/setup
34-
- name: Run regression
35-
run: ./do test:regress
148+
- name: Generate extension PDF
149+
run: ./do gen:profile[MockProfileRelease]

0 commit comments

Comments
 (0)