Skip to content

Commit e086633

Browse files
Merge pull request #2063 from DLR-AMR/minor_ci_fixes
Improvement: Make CI 19 minutes faster
2 parents 69ddc91 + 77a636e commit e086633

11 files changed

Lines changed: 63 additions & 64 deletions

.github/workflows/check_doxygen.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: "Check Doxygen Documentation"
1+
name: Check Doxygen Documentation
22

33
# This file is part of t8code.
44
# t8code is a C library to manage a collection (a forest) of multiple
@@ -32,12 +32,12 @@ on:
3232
workflow_dispatch:
3333

3434
jobs:
35-
update_dev_doc:
35+
check_documentation:
3636
runs-on: ubuntu-latest
3737
container: dlramr/t8code-ubuntu:t8-dependencies
3838
timeout-minutes: 10
3939
steps:
40-
- uses: actions/checkout@v6
40+
- uses: actions/checkout@v6
4141
with:
4242
repository: ${{ github.event.pull_request.head.repo.full_name }}
4343
ref: ${{ github.event.pull_request.head.ref }}
@@ -59,17 +59,17 @@ jobs:
5959
texlive-font-utils \
6060
ghostscript
6161
- name: Which epstopdf
62-
run: which epstopdf
62+
run: which epstopdf
6363
- name: Download precompiled doxygen version 1.13.2 from official website
6464
run: wget https://www.doxygen.nl/files/doxygen-1.13.2.linux.bin.tar.gz
6565
- name: Unpack doxygen tar file
6666
run: |
67-
tar xf doxygen-1.13.2.linux.bin.tar.gz
67+
tar xf doxygen-1.13.2.linux.bin.tar.gz
6868
mv doxygen-1.13.2/bin/doxygen ./doxygen
6969
chmod +x ./doxygen
7070
echo "$PWD" >> $GITHUB_PATH
7171
- name: Echo doxygen executable and version
72-
run: |
72+
run: |
7373
which doxygen
7474
doxygen --version
7575
- name: build config variables
@@ -85,7 +85,7 @@ jobs:
8585
path: build/config.log
8686
- name: check doxygen for errors / warnings
8787
run: |
88-
cd build && cd doc
88+
cd build && cd doc
8989
doxygen Doxyfile >> doxygen.out 2> doxygen.err
9090
- name: Upload doxygen log
9191
if: failure()

.github/workflows/tests_cmake_preparation.yml renamed to .github/workflows/test_preparation.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: CMake tests preparation
1+
name: test preparation
22

33

44
# This file is part of t8code.
@@ -61,7 +61,7 @@ jobs:
6161
# Setup
6262
#
6363
- uses: actions/checkout@v6
64-
with:
64+
with:
6565
fetch-depth: 0
6666
- name: Update packages
6767
run: sudo apt-get update && sudo apt-get upgrade -y
@@ -158,7 +158,7 @@ jobs:
158158
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
159159
- name: if ignore cache, delete folders
160160
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
161-
# The true at the end is to ignore errors that i.e. occur when the folders do not exist
161+
# The true at the end is to ignore errors that i.e. occur when the folders do not exist
162162
run: rm -r $P4EST_BUILD || true
163163
- name: make folders
164164
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
@@ -177,12 +177,12 @@ jobs:
177177
- name: p4est build release
178178
run: cd $P4EST_RELEASE && ninja $MAKEFLAGS && ninja $MAKEFLAGS install
179179
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
180-
180+
181181
## output cache info
182182
- name: output cache info
183183
id: used_cache
184184
run: echo "USED_CACHE=$USED_CACHE" >> $GITHUB_OUTPUT
185-
185+
186186
## tar artifact to keep permissions: https://github.com/actions/upload-artifact?tab=readme-ov-file#permission-loss
187187
- name: Tar files
188188
run: tar -cvf artifact.tar .

.github/workflows/tests_cmake_sc_p4est.yml renamed to .github/workflows/test_sc_p4est.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: CMake tests sc and p4est
1+
name: test sc and p4est
22

33

44
# This file is part of t8code.
@@ -70,7 +70,7 @@ jobs:
7070
#
7171
# SC tests
7272
#
73-
## save variables
73+
## save variables
7474
- name: Save variables
7575
run: export SC_DEBUG=$PWD/sc/build/Debug
7676
&& export SC_RELEASE=$PWD/sc/build/Release
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: CMake tests t8code
1+
name: test t8code
22

33

44
# This file is part of t8code.
@@ -44,8 +44,8 @@ on:
4444
type: string
4545
description: 'Test level used for configuring (T8_TEST_LEVEL_FULL, T8_TEST_LEVEL_MEDIUM, or T8_TEST_LEVEL_BASIC)'
4646
default: 'T8_TEST_LEVEL_FULL'
47-
48-
jobs:
47+
48+
jobs:
4949
t8code_cmake_tests:
5050
timeout-minutes: 60
5151
runs-on: ubuntu-latest

.github/workflows/tests_cmake_t8code_api.yml renamed to .github/workflows/test_t8code_api.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: CMake tests t8code api
1+
name: test t8code api
22

33

44
# This file is part of t8code.
@@ -45,7 +45,7 @@ on:
4545
description: 'Test level used for configuring (T8_TEST_LEVEL_FULL, T8_TEST_LEVEL_MEDIUM, or T8_TEST_LEVEL_BASIC)'
4646
default: 'T8_TEST_LEVEL_FULL'
4747

48-
jobs:
48+
jobs:
4949
t8code_cmake_tests:
5050
timeout-minutes: 60
5151
runs-on: ubuntu-latest
@@ -89,7 +89,7 @@ jobs:
8989
&& echo CONFIG_OPTIONS="$CONFIG_OPTIONS" >> $GITHUB_ENV
9090
# cmake and test with api options
9191
- name: echo cmake line
92-
run: echo cmake ../ $CONFIG_OPTIONS
92+
run: echo cmake ../ $CONFIG_OPTIONS
9393
- name: cmake
9494
run: mkdir build_api && cd build_api && cmake ../ $CONFIG_OPTIONS
9595
- name: OnFailUploadLog

.github/workflows/tests_cmake_t8code_linkage.yml renamed to .github/workflows/test_t8code_linkage.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: CMake tests t8code linkage
1+
name: test t8code linkage
22

33

44
# This file is part of t8code.
@@ -45,7 +45,7 @@ on:
4545
description: 'Test level used for configuring (T8_TEST_LEVEL_FULL, T8_TEST_LEVEL_MEDIUM, or T8_TEST_LEVEL_BASIC)'
4646
default: 'T8_TEST_LEVEL_FULL'
4747

48-
jobs:
48+
jobs:
4949
t8code_cmake_tests:
5050
timeout-minutes: 60
5151
runs-on: ubuntu-latest

.github/workflows/tests_cmake_t8code_w_shipped_submodules.yml renamed to .github/workflows/test_t8code_w_shipped_submodules.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: CMake tests t8code with shipped submodules
1+
name: test t8code with shipped submodules
22

33

44
# This file is part of t8code.
@@ -45,7 +45,7 @@ on:
4545
description: 'Test level used for configuring (T8_TEST_LEVEL_FULL, T8_TEST_LEVEL_MEDIUM, or T8_TEST_LEVEL_BASIC)'
4646
default: 'T8_TEST_LEVEL_FULL'
4747

48-
jobs:
48+
jobs:
4949
t8code_cmake_tests:
5050
timeout-minutes: 60
5151
runs-on: ubuntu-latest
@@ -55,7 +55,7 @@ jobs:
5555
# Setup
5656
#
5757
- uses: actions/checkout@v6
58-
with:
58+
with:
5959
fetch-depth: 0
6060
- name: Update packages
6161
run: sudo apt-get update && sudo apt-get upgrade -y
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: CMake Tarball
1+
name: test tarball
22

33
# This file is part of t8code.
44
# t8code is a C library to manage a collection (a forest) of multiple
@@ -39,7 +39,7 @@ on:
3939
default: 'T8_TEST_LEVEL_FULL'
4040

4141
jobs:
42-
build:
42+
build_tarball:
4343

4444
if: (github.event_name == 'schedule' && github.repository == 'DLR-AMR/t8code') || (github.event_name != 'schedule')
4545
runs-on: ubuntu-latest
@@ -91,8 +91,8 @@ jobs:
9191
name: tarballs
9292
path: build/tarballs
9393

94-
test-tarball:
95-
needs: build
94+
test_tarball:
95+
needs: build_tarball
9696
runs-on: ubuntu-latest
9797
container: dlramr/t8code-ubuntu:t8-dependencies
9898
timeout-minutes: 90

.github/workflows/tests_cmake_valgrind.yml renamed to .github/workflows/test_valgrind.yml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Valgrind check
1+
name: valgrind check
22

33
# This file is part of t8code.
44
# t8code is a C library to manage a collection (a forest) of multiple
@@ -41,7 +41,7 @@ on:
4141
description: 'Test level used for configuring (T8_TEST_LEVEL_FULL, T8_TEST_LEVEL_MEDIUM, or T8_TEST_LEVEL_BASIC)'
4242
default: 'T8_TEST_LEVEL_FULL'
4343

44-
jobs:
44+
jobs:
4545
valgrind_check:
4646
timeout-minutes: 95
4747
runs-on: ubuntu-latest
@@ -103,8 +103,7 @@ jobs:
103103
run: cd build && ninja $MAKEFLAGS
104104
- name: ninja install
105105
run: cd build && ninja install $MAKEFLAGS
106-
# Execute script that runs a Valgrind check for all test binaries.
106+
# Execute script that runs a Valgrind check for all test binaries.
107107
# We use 3 parallel processes to run the binaries in parallel with MPI.
108108
- name: Valgrind check
109109
run: cd scripts && bash ./check_all_test_binaries_valgrind.sh --ntasks=3
110-

.github/workflows/tests_cmake_testsuite.yml renamed to .github/workflows/testsuite.yml

Lines changed: 19 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: t8code CMake testsuite
1+
name: t8code testsuite
22

33

44
# This file is part of t8code.
@@ -51,8 +51,8 @@ concurrency:
5151
# - run on draft PRs, if the latest commit message contains '[run ci]'
5252
# - run on scheduled runs for the DLR-AMR/t8code repository
5353
# - run on all other pull request events
54-
# These conditions are checked in the fine_grained_trigger job. If it completes successfully, it triggers the preparation job,
55-
# which triggers the actual tests.
54+
# These conditions are checked in the fine_grained_trigger job. If it completes successfully, it triggers the preparation job,
55+
# which triggers the actual tests.
5656
# The job to build the tarball is only triggered on merge_group events for the DLR-AMR/t8code repository.
5757

5858
jobs:
@@ -110,28 +110,28 @@ jobs:
110110
needs: [fine_grained_trigger]
111111
secrets: inherit
112112
if: needs.fine_grained_trigger.outputs.run_ci == 'true'
113-
uses: ./.github/workflows/tests_cmake_preparation.yml
113+
uses: ./.github/workflows/test_preparation.yml
114114
strategy:
115115
fail-fast: false
116116
matrix:
117117
MPI: [OFF, ON]
118-
include:
118+
include:
119119
- MAKEFLAGS: -j4
120120
with:
121121
MAKEFLAGS: ${{ matrix.MAKEFLAGS }}
122122
IGNORE_CACHE: false # Use this to force a new installation of sc and p4est for this specific workflow run
123123
CACHE_COUNTER: 0 # Increase this number to force a new installation of sc and p4est and to update the cache once
124124
MPI: ${{ matrix.MPI }}
125-
125+
126126
# Run parallel tests for sc and p4est with and without MPI
127127
sc_p4est_tests:
128128
needs: preparation
129-
uses: ./.github/workflows/tests_cmake_sc_p4est.yml
129+
uses: ./.github/workflows/test_sc_p4est.yml
130130
strategy:
131131
fail-fast: false
132132
matrix:
133133
MPI: [OFF, ON]
134-
include:
134+
include:
135135
- MAKEFLAGS: -j4
136136
with:
137137
MAKEFLAGS: ${{ matrix.MAKEFLAGS }}
@@ -140,30 +140,30 @@ jobs:
140140
# Run t8code tests with and without MPI and in serial and debug mode
141141
t8code_tests:
142142
needs: preparation
143-
uses: ./.github/workflows/tests_cmake_t8code.yml
143+
uses: ./.github/workflows/test_t8code.yml
144144
strategy:
145145
fail-fast: false
146146
matrix:
147147
MPI: [OFF, ON]
148148
BUILD_TYPE: [Debug, Release]
149-
include:
149+
include:
150150
- MAKEFLAGS: -j4
151151
with:
152152
MAKEFLAGS: ${{ matrix.MAKEFLAGS }}
153153
MPI: ${{ matrix.MPI }}
154154
BUILD_TYPE: ${{ matrix.BUILD_TYPE }}
155155
TEST_LEVEL: ${{ github.event_name == 'pull_request' && 'T8_TEST_LEVEL_MEDIUM' || 'T8_TEST_LEVEL_FULL' }} # Set TEST_LEVEL to medium if the event is a PR, otherwise full.
156-
156+
157157
# Run t8code linkage tests with and without MPI and in serial and debug mode
158158
t8code_linkage_tests:
159159
needs: preparation
160-
uses: ./.github/workflows/tests_cmake_t8code_linkage.yml
160+
uses: ./.github/workflows/test_t8code_linkage.yml
161161
strategy:
162162
fail-fast: false
163163
matrix:
164164
MPI: [OFF, ON]
165165
BUILD_TYPE: [Debug, Release]
166-
include:
166+
include:
167167
- MAKEFLAGS: -j4
168168
with:
169169
MAKEFLAGS: ${{ matrix.MAKEFLAGS }}
@@ -174,13 +174,13 @@ jobs:
174174
# Run t8code linkage tests with and without MPI and in serial and debug mode
175175
t8code_api_tests:
176176
needs: preparation
177-
uses: ./.github/workflows/tests_cmake_t8code_api.yml
177+
uses: ./.github/workflows/test_t8code_api.yml
178178
strategy:
179179
fail-fast: false
180180
matrix:
181181
MPI: [ON] # For now the fortran API only supports building with MPI
182182
BUILD_TYPE: [Debug, Release]
183-
include:
183+
include:
184184
- MAKEFLAGS: -j4
185185
with:
186186
MAKEFLAGS: ${{ matrix.MAKEFLAGS }}
@@ -192,7 +192,7 @@ jobs:
192192
t8code_valgrind_tests:
193193
if: (github.event_name == 'schedule' && github.repository == 'DLR-AMR/t8code') # Only run the Valgrind check in the scheduled run.
194194
needs: preparation
195-
uses: ./.github/workflows/tests_cmake_valgrind.yml
195+
uses: ./.github/workflows/test_valgrind.yml
196196
with:
197197
MAKEFLAGS: -j4
198198
MPI: ON
@@ -211,13 +211,13 @@ jobs:
211211
TEST_LEVEL: T8_TEST_LEVEL_BASIC
212212
secrets:
213213
CODE_COV: ${{ secrets.CODE_COV }}
214-
214+
215215
# Run t8code tests with shipped submodules. This test is only for the build system, so only one config is tested.
216216
t8code_w_shipped_submodules_tests:
217217
needs: fine_grained_trigger
218218
secrets: inherit
219219
if: ${{ needs.fine_grained_trigger.outputs.run_ci == 'true' }}
220-
uses: ./.github/workflows/tests_cmake_t8code_w_shipped_submodules.yml
220+
uses: ./.github/workflows/test_t8code_w_shipped_submodules.yml
221221
with:
222222
MAKEFLAGS: -j4
223223
MPI: ON
@@ -226,11 +226,9 @@ jobs:
226226

227227
t8code_doxygen_check:
228228
uses: ./.github/workflows/check_doxygen.yml
229-
needs: [preparation, sc_p4est_tests, t8code_tests, t8code_linkage_tests, t8code_api_tests, t8code_w_shipped_submodules_tests]
230229

231230
t8code_tarball:
232231
if: github.event.pull_request.draft == false
233-
uses: ./.github/workflows/build_cmake_tarball.yml
234-
needs: [preparation, sc_p4est_tests, t8code_tests, t8code_linkage_tests, t8code_api_tests, t8code_w_shipped_submodules_tests]
232+
uses: ./.github/workflows/test_tarball.yml
235233
with:
236234
TEST_LEVEL: ${{ github.event_name == 'pull_request' && 'T8_TEST_LEVEL_MEDIUM' || 'T8_TEST_LEVEL_FULL' }} # Set TEST_LEVEL to medium if the event is a PR, otherwise full.

0 commit comments

Comments
 (0)