-
-
Notifications
You must be signed in to change notification settings - Fork 121
Have one Dockerfile instead of multiples #364
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
4ddfea8
to
2d61f8f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good generally, how/what should I test?
What is the problem with CalculiX? The steps look very similar to the VM provisioning script, which works: https://github.com/precice/vm/blob/develop/provisioning/install-calculix.sh
I guess you probably stumbled upon the GCC-related issue, since you are basing on Ubuntu 22.04, and the VM on 20.04: https://precice.org/adapter-calculix-get-adapter.html#compiling-with-gcc-10-or-newer
Here is how we solve this when preparing Debian packages: https://github.com/precice/calculix-adapter/blob/9057470c6b7018a28895c24c964f65364a7fbd04/.github/workflows/ubuntu_build.yml#L16
Closes precice/openfoam-adapter#184 |
- refactored into exceptions instead of exit(1) -
- Added Calculix - Added reference results for some cases - Added heat exchanger tutorial - Added logging and more verbose output - Added timing output
@MakisH if you could maybe have a quick look if it also runs smoothly on your machine? Mainly |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@MakisH if you could maybe have a quick look if it also runs smoothly on your machine?
Mainly
python systemtests.py --suites=calculix_test
and maybepython systemtests.py --suites=fenics_test
The calculix_test
seems to be a false negative (it fails after a long time, but it seems to work actually):
~/repos/precice/tutorials [chonky-dockerfile]$ python tools/tests/systemtests.py --suites=calculix_test
Using log-level: INFO
INFO: About to run the following systemtest in the directory /home/gc/repos/precice/tutorials/runs:
[Perpendicular flap (fluid-openfoam, solid-calculix)]
INFO: Started running Perpendicular flap (fluid-openfoam, solid-calculix), 0/1
CRITICAL: Systemtest Perpendicular flap (fluid-openfoam, solid-calculix) had serious issues executin the docker compose command about to kill the docker compose command. Please check the logs! Command '['docker', 'compose', '--file', 'docker-compose.tutorial.yaml', 'up', '--build']' timed out after 360 seconds
CRITICAL: Docker Compose failed, skipping fieldcompare and writing stdout.log and stderr.log
INFO: Running Perpendicular flap (fluid-openfoam, solid-calculix) took 925.802237306998 seconds
ERROR: Failed to run Perpendicular flap (fluid-openfoam, solid-calculix)
even though the run completes and both solvers exit with zero:
The fenics_test
succeeded:
~/repos/precice/tutorials [chonky-dockerfile]$ python tools/tests/systemtests.py --suites=fenics_test
Using log-level: INFO
INFO: About to run the following systemtest in the directory /home/gc/repos/precice/tutorials/runs:
[Flow over heated plate (fluid-openfoam, solid-fenics)]
INFO: Started running Flow over heated plate (fluid-openfoam, solid-fenics), 0/1
INFO: Running Flow over heated plate (fluid-openfoam, solid-fenics) took 269.88722395299556 seconds
INFO: Success running Flow over heated plate (fluid-openfoam, solid-fenics)
However, in contrast to the failed case, I don't see any stderr.log
and stdout.log
files in the archive. These would always be useful (to check that indeed the test did what it was supposed to), especially since we now only print the overview.
- fallow-arguments vs std-legacy - no nutils adapter, just install nutils
- generate new reference results
Co-authored-by: Gerasimos Chourdakis <chourdak@in.tum.de>
Yes and no :)
Is added, we now write always the logs into the .log files |
Works now, great job!
|
As discussed in precice/precice#1700 this PR introduces a small, but working protoype of the ansatz described in precice/precice#1700 using just one Dockerfile
To execute the test use
python systemtests.py --suites=openfoam-adapter-release
or
python systemtests.py --suites=calculix_test
It currently supports the following adapters:
But this approach is more flexible as we can easily "install" a certain precice/precice version by using the
PRECICE_REF
build argument without the need of publishing a tag to a docker registry first.