Skip to content

Commit 002432d

Browse files
authored
Add the DuMux adapter and Micro-Manager into the system tests workflows (#758)
1 parent fd8e438 commit 002432d

File tree

7 files changed

+86
-8
lines changed

7 files changed

+86
-8
lines changed

.github/workflows/system-tests-latest-components.yml

Lines changed: 33 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,9 @@ jobs:
1313
ref-precice: ${{ steps.ref-precice.outputs.shorthash }}
1414
ref-python-bindings: ${{ steps.ref-python-bindings.outputs.shorthash }}
1515
ref-calculix-adapter: ${{ steps.ref-calculix-adapter.outputs.shorthash }}
16+
ref-dumux-adapter: ${{ steps.ref-dumux-adapter.outputs.shorthash }}
1617
ref-fenics-adapter: ${{ steps.ref-fenics-adapter.outputs.shorthash }}
18+
ref-micro-manager: ${{ steps.ref-micro-manager.outputs.shorthash }}
1719
ref-openfoam-adapter: ${{ steps.ref-openfoam-adapter.outputs.shorthash }}
1820
ref-su2-adapter: ${{ steps.ref-su2-adapter.outputs.shorthash }}
1921
ref-tutorials: ${{ steps.ref-tutorials.outputs.shorthash }}
@@ -39,13 +41,27 @@ jobs:
3941
owner: precice
4042
repo: calculix-adapter
4143
branch: develop
44+
- id: ref-dumux-adapter
45+
name: Get DuMux adapter ref
46+
uses: nmbgeek/github-action-get-latest-commit@main
47+
with:
48+
owner: precice
49+
repo: dumux-adapter
50+
branch: develop
4251
- id: ref-fenics-adapter
4352
name: Get FEniCS adapter ref
4453
uses: nmbgeek/github-action-get-latest-commit@main
4554
with:
4655
owner: precice
4756
repo: fenics-adapter
4857
branch: develop
58+
- id: ref-micro-manager
59+
name: Get Micro-Manager ref
60+
uses: nmbgeek/github-action-get-latest-commit@main
61+
with:
62+
owner: precice
63+
repo: micro-manager
64+
branch: develop
4965
- id: ref-openfoam-adapter
5066
name: Get OpenFOAM adapter ref
5167
uses: nmbgeek/github-action-get-latest-commit@main
@@ -73,7 +89,9 @@ jobs:
7389
printf 'preCICE: ${{ steps.ref-precice.outputs.shorthash }}\n ${{ steps.ref-precice.outputs.description }}\n----------\n'
7490
printf 'Python bindings: ${{ steps.ref-python-bindings.outputs.shorthash }}\n ${{ steps.ref-python-bindings.outputs.description }}\n----------\n'
7591
printf 'CalculiX adapter: ${{ steps.ref-calculix-adapter.outputs.shorthash }}\n ${{ steps.ref-calculix-adapter.outputs.description }}\n----------\n'
92+
printf 'DuMux adapter: ${{ steps.ref-dumux-adapter.outputs.shorthash }}\n ${{ steps.ref-dumux-adapter.outputs.description }}\n----------\n'
7693
printf 'FEniCS adapter: ${{ steps.ref-fenics-adapter.outputs.shorthash }}\n ${{ steps.ref-fenics-adapter.outputs.description }}\n----------\n'
94+
printf 'Micro-Manager: ${{ steps.ref-micro-manager.outputs.shorthash }}\n ${{ steps.ref-micro-manager.outputs.description }}\n----------\n'
7795
printf 'OpenFOAM adapter: ${{ steps.ref-openfoam-adapter.outputs.shorthash }} ${{ steps.ref-openfoam-adapter.outputs.description }}\n----------\n'
7896
printf 'SU2 adapter: ${{ steps.ref-su2-adapter.outputs.shorthash }}\n ${{ steps.ref-su2-adapter.outputs.description }}\n----------\n'
7997
printf 'Tutorials: ${{ steps.ref-tutorials.outputs.shorthash }} ${{ steps.ref-tutorials.outputs.description }}\n----------\n'
@@ -99,12 +117,24 @@ jobs:
99117
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
100118
echo "${{ steps.ref-calculix-adapter.outputs.description }}" >> $GITHUB_STEP_SUMMARY
101119
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
120+
echo "### DuMux adapter" >> $GITHUB_STEP_SUMMARY
121+
echo "Reference: [\`${{ steps.ref-dumux-adapter.outputs.shorthash }}\`](https://github.com/precice/dumux-adapter/commit/${{ steps.ref-dumux-adapter.outputs.shorthash }})" >> $GITHUB_STEP_SUMMARY
122+
echo "Description:" >> $GITHUB_STEP_SUMMARY
123+
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
124+
echo "${{ steps.ref-dumux-adapter.outputs.description }}" >> $GITHUB_STEP_SUMMARY
125+
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
102126
echo "### FEniCS adapter" >> $GITHUB_STEP_SUMMARY
103127
echo "Reference: [\`${{ steps.ref-fenics-adapter.outputs.shorthash }}\`](https://github.com/precice/fenics-adapter/commit/${{ steps.ref-fenics-adapter.outputs.shorthash }})" >> $GITHUB_STEP_SUMMARY
104128
echo "Description:" >> $GITHUB_STEP_SUMMARY
105129
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
106130
echo "${{ steps.ref-fenics-adapter.outputs.description }}" >> $GITHUB_STEP_SUMMARY
107131
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
132+
echo "### Micro-Manager" >> $GITHUB_STEP_SUMMARY
133+
echo "Reference: [\`${{ steps.ref-micro-manager.outputs.shorthash }}\`](https://github.com/precice/micro-manager/commit/${{ steps.ref-micro-manager.outputs.shorthash }})" >> $GITHUB_STEP_SUMMARY
134+
echo "Description:" >> $GITHUB_STEP_SUMMARY
135+
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
136+
echo "${{ steps.ref-micro-manager.outputs.description }}" >> $GITHUB_STEP_SUMMARY
137+
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
108138
echo "### OpenFOAM adapter" >> $GITHUB_STEP_SUMMARY
109139
echo "Reference: [\`${{ steps.ref-openfoam-adapter.outputs.shorthash }}\`](https://github.com/precice/openfoam-adapter/commit/${{ steps.ref-openfoam-adapter.outputs.shorthash }})" >> $GITHUB_STEP_SUMMARY
110140
echo "Description:" >> $GITHUB_STEP_SUMMARY
@@ -135,13 +165,14 @@ jobs:
135165
PYTHON_BINDINGS_REF:${{ needs.gather-refs.outputs.ref-python-bindings }},\
136166
CALCULIX_VERSION:2.20,\
137167
CALCULIX_ADAPTER_REF:${{ needs.gather-refs.outputs.ref-calculix-adapter }},\
168+
DUMUX_VERSION:3.7,\
169+
DUMUX_ADAPTER_REF:${{ needs.gather-refs.outputs.ref-dumux-adapter }},\
138170
FENICS_ADAPTER_REF:${{ needs.gather-refs.outputs.ref-fenics-adapter }},\
171+
MICRO_MANAGER_REF:${{ needs.gather-refs.outputs.ref-micro-manager }},\
139172
OPENFOAM_EXECUTABLE:openfoam2512,\
140173
OPENFOAM_ADAPTER_REF:${{ needs.gather-refs.outputs.ref-openfoam-adapter }},\
141174
SU2_VERSION:7.5.1,\
142175
SU2_ADAPTER_REF:${{ needs.gather-refs.outputs.ref-su2-adapter }},\
143-
DUMUX_VERSION:3.7,\
144-
MICRO_MANAGER_VERSION:0.8.0,\
145176
TUTORIALS_REF:${{ needs.gather-refs.outputs.ref-tutorials }}"
146177
system_tests_branch: develop
147178
log_level: "INFO"

.github/workflows/system-tests-pr.yml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,9 @@ jobs:
1313
ref-precice: ${{ steps.ref-precice.outputs.shorthash }}
1414
ref-python-bindings: ${{ steps.ref-python-bindings.outputs.shorthash }}
1515
ref-calculix-adapter: ${{ steps.ref-calculix-adapter.outputs.shorthash }}
16+
ref-dumux-adapter: ${{ steps.ref-dumux-adapter.outputs.shorthash }}
1617
ref-fenics-adapter: ${{ steps.ref-fenics-adapter.outputs.shorthash }}
18+
ref-micro-manager: ${{ steps.ref-micro-manager.outputs.shorthash }}
1719
ref-openfoam-adapter: ${{ steps.ref-openfoam-adapter.outputs.shorthash }}
1820
ref-su2-adapter: ${{ steps.ref-su2-adapter.outputs.shorthash }}
1921
steps:
@@ -38,13 +40,27 @@ jobs:
3840
owner: precice
3941
repo: calculix-adapter
4042
branch: develop
43+
- id: ref-dumux-adapter
44+
name: Get DuMux adapter ref
45+
uses: nmbgeek/github-action-get-latest-commit@main
46+
with:
47+
owner: precice
48+
repo: dumux-adapter
49+
branch: develop
4150
- id: ref-fenics-adapter
4251
name: Get FEniCS adapter ref
4352
uses: nmbgeek/github-action-get-latest-commit@main
4453
with:
4554
owner: precice
4655
repo: fenics-adapter
4756
branch: develop
57+
- id: ref-micro-manager
58+
name: Get Micro-Manager ref
59+
uses: nmbgeek/github-action-get-latest-commit@main
60+
with:
61+
owner: precice
62+
repo: micro-manager
63+
branch: develop
4864
- id: ref-openfoam-adapter
4965
name: Get OpenFOAM adapter ref
5066
uses: nmbgeek/github-action-get-latest-commit@main
@@ -65,7 +81,9 @@ jobs:
6581
printf 'preCICE: ${{ steps.ref-precice.outputs.shorthash }}\n ${{ steps.ref-precice.outputs.description }}\n----------\n'
6682
printf 'Python bindings: ${{ steps.ref-python-bindings.outputs.shorthash }}\n ${{ steps.ref-python-bindings.outputs.description }}\n----------\n'
6783
printf 'CalculiX adapter: ${{ steps.ref-calculix-adapter.outputs.shorthash }}\n ${{ steps.ref-calculix-adapter.outputs.description }}\n----------\n'
84+
printf 'DuMux adapter: ${{ steps.ref-dumux-adapter.outputs.shorthash }}\n ${{ steps.ref-dumux-adapter.outputs.description }}\n----------\n'
6885
printf 'FEniCS adapter: ${{ steps.ref-fenics-adapter.outputs.shorthash }}\n ${{ steps.ref-fenics-adapter.outputs.description }}\n----------\n'
86+
printf 'Micro-Manager: ${{ steps.ref-micro-manager.outputs.shorthash }}\n ${{ steps.ref-micro-manager.outputs.description }}\n----------\n'
6987
printf 'OpenFOAM adapter: ${{ steps.ref-openfoam-adapter.outputs.shorthash }} ${{ steps.ref-openfoam-adapter.outputs.description }}\n----------\n'
7088
printf 'SU2 adapter: ${{ steps.ref-su2-adapter.outputs.shorthash }}\n ${{ steps.ref-su2-adapter.outputs.description }}\n----------\n'
7189
- id: summary
@@ -90,12 +108,24 @@ jobs:
90108
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
91109
echo "${{ steps.ref-calculix-adapter.outputs.description }}" >> $GITHUB_STEP_SUMMARY
92110
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
111+
echo "### DuMux adapter" >> $GITHUB_STEP_SUMMARY
112+
echo "Reference: [\`${{ steps.ref-dumux-adapter.outputs.shorthash }}\`](https://github.com/precice/dumux-adapter/commit/${{ steps.ref-dumux-adapter.outputs.shorthash }})" >> $GITHUB_STEP_SUMMARY
113+
echo "Description:" >> $GITHUB_STEP_SUMMARY
114+
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
115+
echo "${{ steps.ref-dumux-adapter.outputs.description }}" >> $GITHUB_STEP_SUMMARY
116+
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
93117
echo "### FEniCS adapter" >> $GITHUB_STEP_SUMMARY
94118
echo "Reference: [\`${{ steps.ref-fenics-adapter.outputs.shorthash }}\`](https://github.com/precice/fenics-adapter/commit/${{ steps.ref-fenics-adapter.outputs.shorthash }})" >> $GITHUB_STEP_SUMMARY
95119
echo "Description:" >> $GITHUB_STEP_SUMMARY
96120
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
97121
echo "${{ steps.ref-fenics-adapter.outputs.description }}" >> $GITHUB_STEP_SUMMARY
98122
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
123+
echo "### Micro-Manager" >> $GITHUB_STEP_SUMMARY
124+
echo "Reference: [\`${{ steps.ref-micro-manager.outputs.shorthash }}\`](https://github.com/precice/micro-manager/commit/${{ steps.ref-micro-manager.outputs.shorthash }})" >> $GITHUB_STEP_SUMMARY
125+
echo "Description:" >> $GITHUB_STEP_SUMMARY
126+
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
127+
echo "${{ steps.ref-micro-manager.outputs.description }}" >> $GITHUB_STEP_SUMMARY
128+
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
99129
echo "### OpenFOAM adapter" >> $GITHUB_STEP_SUMMARY
100130
echo "Reference: [\`${{ steps.ref-openfoam-adapter.outputs.shorthash }}\`](https://github.com/precice/openfoam-adapter/commit/${{ steps.ref-openfoam-adapter.outputs.shorthash }})" >> $GITHUB_STEP_SUMMARY
101131
echo "Description:" >> $GITHUB_STEP_SUMMARY
@@ -124,7 +154,10 @@ jobs:
124154
PYTHON_BINDINGS_REF:${{ needs.gather-refs.outputs.ref-python-bindings }},\
125155
CALCULIX_VERSION:2.20,\
126156
CALCULIX_ADAPTER_REF:${{ needs.gather-refs.outputs.ref-calculix-adapter }},\
157+
DUMUX_VERSION:3.7,\
158+
DUMUX_ADAPTER_REF:${{ needs.gather-refs.outputs.ref-dumux-adapter }},\
127159
FENICS_ADAPTER_REF:${{ needs.gather-refs.outputs.ref-fenics-adapter }},\
160+
MICRO_MANAGER_REF:${{ needs.gather-refs.outputs.ref-micro-manager }},\
128161
OPENFOAM_EXECUTABLE:openfoam2512,\
129162
OPENFOAM_ADAPTER_REF:${{ needs.gather-refs.outputs.ref-openfoam-adapter }},\
130163
SU2_VERSION:7.5.1,\

tools/tests/README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -279,7 +279,9 @@ This `openfoam-adapter` component has the following attributes:
279279
280280
Since the docker containers are still a bit mixed in terms of capabilities and support for different build_argument combinations the following rules apply:
281281
282-
- A build_argument ending in **_REF** means that it refers to a git commit-ish (like a tag or commit) beeing used to build the image. Its important to not use branch names here as we heavily rely on dockers build cache to speedup things. But since the input variable to the docker builder will not change, we might have wrong cache hits.
282+
- A build argument ending in `_REF` refers to a git commit-ish (like a tag or commit) being used to build the image. It is important to not use branch names here as we heavily rely on Docker's build cache to speedup things. But since the input variable to the docker builder will not change, we might have wrong cache hits.
283+
- Some workflows set variables ending in `_PR`. These specify the GitHub pull request which provides the above `_REF` and can be on a fork.
284+
- A build argument ending in `_VERSION` refers to the version of a third-party dependency to use (e.g., DUNE).
283285
- All other build_arguments are free of rules and up to the container maintainer.
284286

285287
### Component templates

tools/tests/components.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -209,6 +209,6 @@ micro-manager:
209209
TUTORIALS_REF:
210210
description: Tutorial git reference to use
211211
default: "master"
212-
MICRO_MANAGER_VERSION:
212+
MICRO_MANAGER_REF:
213213
description: Version of Micro-Manager to use
214214
default: "0.8.0"

tools/tests/dockerfiles/ubuntu_2404/Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -197,13 +197,13 @@ USER precice
197197
WORKDIR /home/precice
198198
COPY --from=precice /home/precice/.local/ /home/precice/.local/
199199

200-
ARG MICRO_MANAGER_VERSION
200+
ARG MICRO_MANAGER_REF
201201
RUN python3 -m venv /home/precice/venv && \
202202
. /home/precice/venv/bin/activate && \
203203
git clone https://github.com/precice/micro-manager.git && \
204204
cd micro-manager && \
205205
if [ -n "${MICRO_MANAGER_PR}" ]; then git fetch origin pull/${MICRO_MANAGER_PR}/head; fi && \
206-
git checkout ${MICRO_MANAGER_VERSION} && \
206+
git checkout ${MICRO_MANAGER_REF} && \
207207
pip3 install .
208208
WORKDIR /home/precice
209209
RUN python3 -m venv /home/precice/venv && \

tools/tests/reference_versions.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,4 @@ DEALII_ADAPTER_REF: "02c5d18" # develop, April 12, 2025
1414
DUNE_VERSION: "2.9"
1515
DUMUX_VERSION: "3.7"
1616
DUMUX_ADAPTER_REF: "0e914bb" # develop, March 18, 2026
17-
MICRO_MANAGER_VERSION: "v0.8.0"
17+
MICRO_MANAGER_REF: "v0.8.0"

tools/tests/tests.yaml

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,19 @@ test_suites:
4545
case_combination:
4646
- macro-dumux
4747
- micro-dumux
48-
reference_result: ./two-scale-heat-conduction/reference-results/macro-dumux_micro-dumux.tar.gz
48+
reference_result: ./two-scale-heat-conduction/reference-results/macro-dumux_micro-dumux.tar.gz # Too small values, expected to fail the comparisons.
4949
- path: free-flow-over-porous-media
5050
case_combination:
5151
- free-flow-dumux
5252
- porous-media-dumux
5353
reference_result: ./free-flow-over-porous-media/reference-results/free-flow-dumux_porous-media-dumux.tar.gz
54+
micro_manager_test:
55+
tutorials:
56+
- path: two-scale-heat-conduction
57+
case_combination:
58+
- macro-dumux
59+
- micro-dumux
60+
reference_result: ./two-scale-heat-conduction/reference-results/macro-dumux_micro-dumux.tar.gz # Too small values, expected to fail the comparisons.
5461
su2_test:
5562
tutorials:
5663
- path: perpendicular-flap
@@ -141,3 +148,8 @@ test_suites:
141148
- solid-upstream-dealii
142149
- solid-downstream-dealii
143150
reference_result: ./perpendicular-flap/reference-results/fluid-openfoam_solid-upstream-dealii_solid-downstream-dealii.tar.gz
151+
- path: free-flow-over-porous-media
152+
case_combination:
153+
- free-flow-dumux
154+
- porous-media-dumux
155+
reference_result: ./free-flow-over-porous-media/reference-results/free-flow-dumux_porous-media-dumux.tar.gz

0 commit comments

Comments
 (0)