-
Notifications
You must be signed in to change notification settings - Fork 353
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
Update sensei CI container for sensei v4.0 integration #2834
Merged
WeiqunZhang
merged 2 commits into
AMReX-Codes:development
from
kwryankrattiger:update_sensei_ci_image_202206
Jun 14, 2022
Merged
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,30 +1,29 @@ | ||
FROM fedora:33 | ||
FROM fedora:35 | ||
|
||
# Set install root | ||
ENV PACKAGE_ROOT=/root/install | ||
|
||
COPY tools.sh /root/bin/tools.sh | ||
|
||
# Copy and run the install script | ||
COPY install_deps.sh /root/bin/install_deps.sh | ||
RUN /root/bin/install_deps.sh | ||
|
||
# Configure MPI environment | ||
ENV MPI_HOME=/usr/lib64/openmpi/ | ||
|
||
# Configure Python environment | ||
ENV PYTHONPATH=/usr/lib64/python3.9/site-packages/openmpi | ||
ENV PYTHONPATH=/usr/lib64/python3.10/site-packages/openmpi | ||
|
||
# Configure VTK environment | ||
ENV VTK_VERSION=9.0.1 | ||
ENV VTK_VERSION=9.1.0 | ||
ENV VTK_DIR=${PACKAGE_ROOT}/vtk/${VTK_VERSION} | ||
|
||
# Configure Sensei Environment | ||
ENV SENSEI_VERSION=develop | ||
ENV SENSEI_DIR=${PACKAGE_ROOT}/sensei/${SENSEI_VERSION} | ||
|
||
# Copy and run the install script | ||
COPY install_deps.sh /root/bin/install_deps.sh | ||
RUN /root/bin/install_deps.sh | ||
|
||
COPY tools.sh /root/bin/tools.sh | ||
|
||
COPY install_vtk_minimal.sh /root/bin/install_vtk.sh | ||
COPY vtk_use_mpi.patch /tmp/vtk_use_mpi.patch | ||
RUN /root/bin/install_vtk.sh | ||
|
||
# Configure Sensei Environment | ||
ENV SENSEI_VERSION=v4.0.0 | ||
ENV SENSEI_DIR=${PACKAGE_ROOT}/sensei/${SENSEI_VERSION} | ||
COPY install_sensei.sh /root/bin/install_sensei.sh | ||
RUN /root/bin/install_sensei.sh |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
image_name=senseiinsitu/ci:fedora35-amrex-$(date +%Y%m%d) | ||
docker build --tag $image_name . | ||
docker push $image_name |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
index a9d56e765c..6ce9d80cb2 100644 | ||
--- a/CMakeLists.txt | ||
+++ b/CMakeLists.txt | ||
@@ -178,10 +178,18 @@ set("_vtk_module_reason_VTK::Java" | ||
"via `VTK_WRAP_JAVA`") | ||
# For vtkTkRenderWidget (only useful with Python, since WRAP_TCL is gone) | ||
if (VTK_USE_TK) | ||
- set(VTK_GROUP_ENABLE_Tk YES) | ||
+ if (VTK_GROUP_ENABLE_Tk STREQUAL "DEFAULT") | ||
+ set(VTK_GROUP_ENABLE_Tk "WANT") | ||
+ elseif (VTK_GROUP_ENABLE_Tk STREQUAL "NO") | ||
+ message(FATAL_ERROR "VTK_USE_TK=ON is not compatible with VTK_GROUP_ENABLE_Tk=NO") | ||
+ endif () | ||
endif () | ||
if (VTK_USE_MPI) | ||
- set(VTK_GROUP_ENABLE_MPI YES) | ||
+ if (VTK_GROUP_ENABLE_MPI STREQUAL "DEFAULT") | ||
+ set(VTK_GROUP_ENABLE_MPI "WANT") | ||
+ elseif (VTK_GROUP_ENABLE_MPI STREQUAL "NO") | ||
+ message(FATAL_ERROR "VTK_USE_MPI=ON is not compatible with VTK_GROUP_ENABLE_MPI=NO") | ||
+ endif () | ||
else () | ||
# Reject `VTK::mpi`, but allow those which happen to be part of the group to | ||
# be built. | ||
diff --git a/Documentation/release/dev/change-vtk-use-mpi-tk-behavior.md b/Documentation/release/dev/change-vtk-use-mpi-tk-behavior.md | ||
new file mode 100644 | ||
index 0000000000..4a59b225b0 | ||
--- /dev/null | ||
+++ b/Documentation/release/dev/change-vtk-use-mpi-tk-behavior.md | ||
@@ -0,0 +1,8 @@ | ||
+## `VTK_USE_MPI`/`VTK_USE_TK` are less aggresive | ||
+ | ||
+The configure option `VTK_USE_MPI` and `VTK_USE_TK` no longer forces their | ||
+respective Groups on. They will now either change the default to `WANT` or use | ||
+the specified value for `VTK_GROUP_ENABLE_{MPI,Tk}`. | ||
+ | ||
+There is now an explicit error when either `VTK_USE_{MPI,TK}` is `ON` but the | ||
+respective group is configured as `NO`. |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
@kwryankrattiger We want this to be pinned to an official release so that the usual churn that occurs during sensei development doesn't break amrex builds.
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.
That wasn't possible at the time because the tagged release had a couple bugs in it that had to be fixed for this container to be built and work correctly in CI. The container that is used in CI is static, ie. this is not run each time CI is run, only when the container is rebuilt. The develop that was used to generate the container for amrex CI is the develop branch on 2022-06-13 which is denoted by the container name I pushed and referenced in the other PR for SENSEI updates. I agree it would be more ideal to use a tagged version, if you wanted to tag a new patch version of sensei, v4.0.1, I would be happy to update this and regenerate an image using the tagged version, I think most of the build/install issues have been fleshed out on develop now so that may be worthwhile anyway.
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.
OK. the container is static so this is not going to run against future changes. Sorry, I misunderstood the situation.