Skip to content

Commit 843df0a

Browse files
authored
Merge pull request #2662 from AlexandreSinger/feature-ci-split-workflows
[CI] Separated Out NightlyTests
2 parents 3f2b9e8 + 47b464c commit 843df0a

File tree

2 files changed

+92
-77
lines changed

2 files changed

+92
-77
lines changed

.github/workflows/nightly_test.yml

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
name: NightlyTest
2+
3+
on:
4+
schedule:
5+
- cron: '0 0 * * *' # daily
6+
7+
# We want to cancel previous runs for a given PR or branch / ref if another CI
8+
# run is requested.
9+
# See: https://docs.github.com/en/actions/using-jobs/using-concurrency
10+
concurrency:
11+
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
12+
cancel-in-progress: true
13+
14+
env:
15+
# default compiler for all non-compatibility tests
16+
MATRIX_EVAL: "CC=gcc-11 && CXX=g++-11"
17+
18+
jobs:
19+
Run-tests:
20+
# Prevents from running on forks where no custom runners are available
21+
if: ${{ github.repository_owner == 'verilog-to-routing' }}
22+
23+
timeout-minutes: 420
24+
25+
container: ubuntu:jammy
26+
27+
runs-on: [self-hosted, Linux, X64]
28+
29+
strategy:
30+
fail-fast: false
31+
matrix:
32+
include:
33+
- {test: "vtr_reg_nightly_test1", cores: "16", options: "", cmake: "", extra_pkgs: ""}
34+
- {test: "vtr_reg_nightly_test1_odin", cores: "16", options: "", cmake: "-DWITH_ODIN=ON", extra_pkgs: ""}
35+
- {test: "vtr_reg_nightly_test2", cores: "16", options: "", cmake: "", extra_pkgs: ""}
36+
- {test: "vtr_reg_nightly_test2_odin", cores: "16", options: "", cmake: "-DWITH_ODIN=ON", extra_pkgs: ""}
37+
- {test: "vtr_reg_nightly_test3", cores: "16", options: "", cmake: "", extra_pkgs: ""}
38+
- {test: "vtr_reg_nightly_test3_odin", cores: "16", options: "", cmake: "-DWITH_ODIN=ON", extra_pkgs: ""}
39+
- {test: "vtr_reg_nightly_test4", cores: "16", options: "", cmake: "", extra_pkgs: ""}
40+
- {test: "vtr_reg_nightly_test4_odin", cores: "16", options: "", cmake: "-DWITH_ODIN=ON", extra_pkgs: ""}
41+
- {test: "vtr_reg_nightly_test5", cores: "16", options: "", cmake: "", extra_pkgs: ""}
42+
- {test: "vtr_reg_nightly_test6", cores: "16", options: "", cmake: "", extra_pkgs: ""}
43+
- {test: "vtr_reg_nightly_test7", cores: "16", options: "", cmake: "", extra_pkgs: ""}
44+
- {test: "vtr_reg_strong", cores: "16", options: "", cmake: "-DVTR_ASSERT_LEVEL=3", extra_pkgs: "libeigen3-dev"}
45+
- {test: "vtr_reg_strong_odin", cores: "16", options: "", cmake: "-DVTR_ASSERT_LEVEL=3 -DWITH_ODIN=ON", extra_pkgs: "libeigen3-dev"}
46+
- {test: "vtr_reg_strong_odin", cores: "16", options: "-skip_qor", cmake: "-DVTR_ASSERT_LEVEL=3 -DVTR_ENABLE_SANITIZE=ON -DWITH_ODIN=ON", extra_pkgs: "libeigen3-dev"}
47+
- {test: "vtr_reg_system_verilog", cores: "16", options: "", cmake: "-DYOSYS_F4PGA_PLUGINS=ON", extra_pkgs: ""}
48+
- {test: "odin_reg_strong", cores: "16", options: "", cmake: "-DWITH_ODIN=ON", extra_pkgs: ""}
49+
- {test: "parmys_reg_strong", cores: "16", options: "", cmake: "-DYOSYS_F4PGA_PLUGINS=ON", extra_pkgs: ""}
50+
51+
env:
52+
DEBIAN_FRONTEND: "noninteractive"
53+
54+
steps:
55+
56+
# TODO: This runnner is running on a self-hosted CPU. In order to upgrade
57+
# to v4, need to upgrade the machine to support node20.
58+
- uses: actions/checkout@v3
59+
with:
60+
submodules: 'true'
61+
62+
- name: Setup
63+
run: stdbuf -i0 -i0 -e0 ./.github/scripts/hostsetup.sh
64+
65+
- name: Install external libraries
66+
run: apt install -y ${{ matrix.extra_pkgs }}
67+
if: ${{ matrix.extra_pkgs }}
68+
69+
- name: Execute test script
70+
run: stdbuf -i0 -o0 -e0 ./.github/scripts/run-vtr.sh
71+
env:
72+
VPR_NUM_WORKERS: 4
73+
VTR_TEST: ${{ matrix.test }}
74+
VTR_TEST_OPTIONS: ${{ matrix.options }}
75+
VTR_CMAKE_PARAMS: ${{ matrix.cmake }}
76+
NUM_CORES: ${{ matrix.cores }}
77+
78+
- name: Upload test results
79+
# If the job was not cancelled, we want to save the result (this includes
80+
# when the job fails). See warning here:
81+
# https://docs.github.com/en/actions/learn-github-actions/expressions#always
82+
if: ${{ !cancelled() }}
83+
# TODO: This runnner is running on a self-hosted CPU. In order to upgrade
84+
# to v4, need to upgrade the machine to support node20.
85+
uses: actions/upload-artifact@v3
86+
with:
87+
name: ${{matrix.test}}_test_results
88+
path: |
89+
**/results*.gz
90+
**/plot_*.svg
91+
**/qor_results*.tar.gz
92+

.github/workflows/test.yml

Lines changed: 0 additions & 77 deletions
Original file line numberDiff line numberDiff line change
@@ -34,83 +34,6 @@ env:
3434
MATRIX_EVAL: "CC=gcc-11 && CXX=g++-11"
3535

3636
jobs:
37-
38-
39-
Run-tests:
40-
# Prevents from running on forks where no custom runners are available
41-
if: ${{ github.repository_owner == 'verilog-to-routing' }}
42-
43-
timeout-minutes: 420
44-
45-
container: ubuntu:jammy
46-
47-
runs-on: [self-hosted, Linux, X64]
48-
49-
strategy:
50-
fail-fast: false
51-
matrix:
52-
include:
53-
- {test: "vtr_reg_nightly_test1", cores: "16", options: "", cmake: "", extra_pkgs: ""}
54-
- {test: "vtr_reg_nightly_test1_odin", cores: "16", options: "", cmake: "-DWITH_ODIN=ON", extra_pkgs: ""}
55-
- {test: "vtr_reg_nightly_test2", cores: "16", options: "", cmake: "", extra_pkgs: ""}
56-
- {test: "vtr_reg_nightly_test2_odin", cores: "16", options: "", cmake: "-DWITH_ODIN=ON", extra_pkgs: ""}
57-
- {test: "vtr_reg_nightly_test3", cores: "16", options: "", cmake: "", extra_pkgs: ""}
58-
- {test: "vtr_reg_nightly_test3_odin", cores: "16", options: "", cmake: "-DWITH_ODIN=ON", extra_pkgs: ""}
59-
- {test: "vtr_reg_nightly_test4", cores: "16", options: "", cmake: "", extra_pkgs: ""}
60-
- {test: "vtr_reg_nightly_test4_odin", cores: "16", options: "", cmake: "-DWITH_ODIN=ON", extra_pkgs: ""}
61-
- {test: "vtr_reg_nightly_test5", cores: "16", options: "", cmake: "", extra_pkgs: ""}
62-
- {test: "vtr_reg_nightly_test6", cores: "16", options: "", cmake: "", extra_pkgs: ""}
63-
- {test: "vtr_reg_nightly_test7", cores: "16", options: "", cmake: "", extra_pkgs: ""}
64-
- {test: "vtr_reg_strong", cores: "16", options: "", cmake: "-DVTR_ASSERT_LEVEL=3", extra_pkgs: "libeigen3-dev"}
65-
- {test: "vtr_reg_strong_odin", cores: "16", options: "", cmake: "-DVTR_ASSERT_LEVEL=3 -DWITH_ODIN=ON", extra_pkgs: "libeigen3-dev"}
66-
- {test: "vtr_reg_strong_odin", cores: "16", options: "-skip_qor", cmake: "-DVTR_ASSERT_LEVEL=3 -DVTR_ENABLE_SANITIZE=ON -DWITH_ODIN=ON", extra_pkgs: "libeigen3-dev"}
67-
- {test: "vtr_reg_system_verilog", cores: "16", options: "", cmake: "-DYOSYS_F4PGA_PLUGINS=ON", extra_pkgs: ""}
68-
- {test: "odin_reg_strong", cores: "16", options: "", cmake: "-DWITH_ODIN=ON", extra_pkgs: ""}
69-
- {test: "parmys_reg_strong", cores: "16", options: "", cmake: "-DYOSYS_F4PGA_PLUGINS=ON", extra_pkgs: ""}
70-
71-
env:
72-
DEBIAN_FRONTEND: "noninteractive"
73-
74-
steps:
75-
76-
# TODO: This runnner is running on a self-hosted CPU. In order to upgrade
77-
# to v4, need to upgrade the machine to support node20.
78-
- uses: actions/checkout@v3
79-
with:
80-
submodules: 'true'
81-
82-
- name: Setup
83-
run: stdbuf -i0 -i0 -e0 ./.github/scripts/hostsetup.sh
84-
85-
- name: Install external libraries
86-
run: apt install -y ${{ matrix.extra_pkgs }}
87-
if: ${{ matrix.extra_pkgs }}
88-
89-
- name: Execute test script
90-
run: stdbuf -i0 -o0 -e0 ./.github/scripts/run-vtr.sh
91-
env:
92-
VPR_NUM_WORKERS: 4
93-
VTR_TEST: ${{ matrix.test }}
94-
VTR_TEST_OPTIONS: ${{ matrix.options }}
95-
VTR_CMAKE_PARAMS: ${{ matrix.cmake }}
96-
NUM_CORES: ${{ matrix.cores }}
97-
98-
- name: Upload test results
99-
# If the job was not cancelled, we want to save the result (this includes
100-
# when the job fails). See warning here:
101-
# https://docs.github.com/en/actions/learn-github-actions/expressions#always
102-
if: ${{ !cancelled() }}
103-
# TODO: This runnner is running on a self-hosted CPU. In order to upgrade
104-
# to v4, need to upgrade the machine to support node20.
105-
uses: actions/upload-artifact@v3
106-
with:
107-
name: ${{matrix.test}}_test_results
108-
path: |
109-
**/results*.gz
110-
**/plot_*.svg
111-
**/qor_results*.tar.gz
112-
113-
11437
Build:
11538
name: 'B: Building VtR'
11639
runs-on: ubuntu-22.04

0 commit comments

Comments
 (0)