From e517c3d179750886d321b21dc9f20a1f4c38aedd Mon Sep 17 00:00:00 2001 From: Eric Brugger Date: Fri, 20 Dec 2019 08:46:39 -0800 Subject: [PATCH] Several updates related to the Docker builds. (#4203) --- scripts/docker/Dockerfile-centos8 | 4 ++ scripts/docker/Dockerfile-debian9 | 4 ++ scripts/docker/Dockerfile-fedora27 | 4 ++ scripts/docker/Dockerfile-ubuntu16 | 4 ++ scripts/docker/Dockerfile-ubuntu18 | 4 ++ scripts/docker/Dockerfile-ubuntu19 | 8 +++- scripts/docker/build_test_visit.sh | 45 ++++++++++++++++++++ scripts/docker/build_visit_docker_cleanup.py | 6 ++- scripts/docker/test_visit.py | 5 +++ src/config-site/rzansel61.cmake | 3 +- src/config-site/rztopaz194.cmake | 5 ++- 11 files changed, 86 insertions(+), 6 deletions(-) create mode 100644 scripts/docker/build_test_visit.sh create mode 100644 scripts/docker/test_visit.py diff --git a/scripts/docker/Dockerfile-centos8 b/scripts/docker/Dockerfile-centos8 index ac4ad5b0240..c29c51bdd28 100755 --- a/scripts/docker/Dockerfile-centos8 +++ b/scripts/docker/Dockerfile-centos8 @@ -40,6 +40,8 @@ RUN dnf -y upgrade \ && dnf -y --enablerepo=PowerTools install bison-devel flex-devel \ && rm -rf /var/lib/apt/lists/* +RUN dnf -y upgrade && dnf -y install libffi-devel && rm -rf /var/lib/apt/lists/* + RUN cd /usr/include && ln -s freetype2 freetype RUN cd /usr/bin && ln -s bison yacc RUN cd /usr/bin && ln -s python2 python @@ -54,5 +56,7 @@ RUN mkdir third_party COPY build_visit3_1_0 /home/visit COPY run_build_visit_centos8.sh /home/visit COPY build_visit_docker_cleanup.py /home/visit +COPY build_test_visit.sh /home/visit +COPY test_visit.py /home/visit # Build the third party libraries RUN /bin/bash run_build_visit_centos8.sh \ No newline at end of file diff --git a/scripts/docker/Dockerfile-debian9 b/scripts/docker/Dockerfile-debian9 index a9bd02ea947..e8c9e4f216c 100644 --- a/scripts/docker/Dockerfile-debian9 +++ b/scripts/docker/Dockerfile-debian9 @@ -37,6 +37,8 @@ RUN apt-get update && apt-get install -y \ cpio \ && rm -rf /var/lib/apt/lists/* +RUN apt-get update && apt-get install -y libffi-dev && rm -rf /var/lib/apt/lists/* + RUN apt-get update && apt-get install -y locales && rm -rf /var/lib/apt/lists/* \ && localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8 ENV LANG en_US.utf8 @@ -53,5 +55,7 @@ RUN mkdir third-party COPY build_visit3_1_0 /home/visit COPY run_build_visit.sh /home/visit COPY build_visit_docker_cleanup.py /home/visit +COPY build_test_visit.sh /home/visit +COPY test_visit.py /home/visit # Build the third party libraries RUN /bin/bash run_build_visit.sh \ No newline at end of file diff --git a/scripts/docker/Dockerfile-fedora27 b/scripts/docker/Dockerfile-fedora27 index e90029d506c..2a32b9ecd9e 100644 --- a/scripts/docker/Dockerfile-fedora27 +++ b/scripts/docker/Dockerfile-fedora27 @@ -38,6 +38,8 @@ RUN dnf -y upgrade && dnf -y install \ cpio \ && rm -rf /var/lib/apt/lists/* +RUN dnf -y upgrade && dnf -y install libffi-devel && rm -rf /var/lib/apt/lists/* + RUN cd /usr/include && ln -s freetype2 freetype RUN cd /usr/bin && ln -s bison yacc @@ -51,5 +53,7 @@ RUN mkdir third-party COPY build_visit3_1_0 /home/visit COPY run_build_visit.sh /home/visit COPY build_visit_docker_cleanup.py /home/visit +COPY build_test_visit.sh /home/visit +COPY test_visit.py /home/visit # Build the third party libraries RUN /bin/bash run_build_visit.sh \ No newline at end of file diff --git a/scripts/docker/Dockerfile-ubuntu16 b/scripts/docker/Dockerfile-ubuntu16 index aaf69241249..6874d7ca383 100644 --- a/scripts/docker/Dockerfile-ubuntu16 +++ b/scripts/docker/Dockerfile-ubuntu16 @@ -38,6 +38,8 @@ RUN apt-get update && apt-get install -y \ cpio \ && rm -rf /var/lib/apt/lists/* +RUN apt-get update && apt-get install -y libffi-dev && rm -rf /var/lib/apt/lists/* + RUN apt-get update && apt-get install -y locales && rm -rf /var/lib/apt/lists/* \ && localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8 ENV LANG en_US.utf8 @@ -54,5 +56,7 @@ RUN mkdir third-party COPY build_visit3_1_0 /home/visit COPY run_build_visit.sh /home/visit COPY build_visit_docker_cleanup.py /home/visit +COPY build_test_visit.sh /home/visit +COPY test_visit.py /home/visit # Build the third party libraries RUN /bin/bash run_build_visit.sh \ No newline at end of file diff --git a/scripts/docker/Dockerfile-ubuntu18 b/scripts/docker/Dockerfile-ubuntu18 index 7c62dbaa80e..99cf56bd439 100644 --- a/scripts/docker/Dockerfile-ubuntu18 +++ b/scripts/docker/Dockerfile-ubuntu18 @@ -37,6 +37,8 @@ RUN apt-get update && apt-get install -y \ cpio \ && rm -rf /var/lib/apt/lists/* +RUN apt-get update && apt-get install -y libffi-dev && rm -rf /var/lib/apt/lists/* + RUN apt-get update && apt-get install -y locales && rm -rf /var/lib/apt/lists/* \ && localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8 ENV LANG en_US.utf8 @@ -53,5 +55,7 @@ RUN mkdir third-party COPY build_visit3_1_0 /home/visit COPY run_build_visit.sh /home/visit COPY build_visit_docker_cleanup.py /home/visit +COPY build_test_visit.sh /home/visit +COPY test_visit.py /home/visit # Build the third party libraries RUN /bin/bash run_build_visit.sh \ No newline at end of file diff --git a/scripts/docker/Dockerfile-ubuntu19 b/scripts/docker/Dockerfile-ubuntu19 index 8cb1030a86b..c00cd080e35 100755 --- a/scripts/docker/Dockerfile-ubuntu19 +++ b/scripts/docker/Dockerfile-ubuntu19 @@ -37,6 +37,8 @@ RUN apt-get update && apt-get install -y \ cpio \ && rm -rf /var/lib/apt/lists/* +RUN apt-get update && apt-get install -y libffi-dev && rm -rf /var/lib/apt/lists/* + RUN apt-get update && apt-get install -y locales && rm -rf /var/lib/apt/lists/* \ && localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8 ENV LANG en_US.utf8 @@ -51,7 +53,9 @@ WORKDIR /home/visit RUN mkdir third-party # Copy build_visit and the script to run it COPY build_visit3_1_0 /home/visit -COPY run_build_visit_centos8.sh /home/visit +COPY run_build_visit.sh /home/visit COPY build_visit_docker_cleanup.py /home/visit +COPY build_test_visit.sh /home/visit +COPY test_visit.py /home/visit # Build the third party libraries. -RUN /bin/bash run_build_visit_centos8.sh \ No newline at end of file +RUN /bin/bash run_build_visit.sh \ No newline at end of file diff --git a/scripts/docker/build_test_visit.sh b/scripts/docker/build_test_visit.sh new file mode 100644 index 00000000000..34f2a8f08ea --- /dev/null +++ b/scripts/docker/build_test_visit.sh @@ -0,0 +1,45 @@ +# +# Process the command line +# +version=undefined + +for abc +do + case $1 in + -v) + version=$2 + shift 2 + ;; + esac +done + +if [ $version = undefined ] +then + echo "Usage: -v " + exit +fi + +version2=`echo $version | tr "." "_"` + +# +# Create the distribution. +# +tar zxf visit$version.tar.gz +cd visit$version +mkdir build +cd build +/home/visit/third-party/cmake/3.9.3/*/bin/cmake \ + -DCMAKE_BUILD_TYPE:STRING=Release -DVISIT_INSTALL_THIRD_PARTY:BOOL=ON \ + -DVISIT_ENABLE_XDB:BOOL=ON -DVISIT_PARADIS:BOOL=ON \ + -DVISIT_CONFIG_SITE="/home/visit/visit-config.cmake" ../src +make manuals +make -j 4 package +mv visit$version2.linux-x86_64.tar.gz ../.. + +# +# Test the distribution. +# +cd ../.. +cp visit$version/src/tools/dev/scripts/visit-install . +./visit-install -c none $version linux-x86_64 visit +visit/bin/visit -cli -nowin -s test_visit.py diff --git a/scripts/docker/build_visit_docker_cleanup.py b/scripts/docker/build_visit_docker_cleanup.py index 2f3c4a35247..aac3047ec4c 100644 --- a/scripts/docker/build_visit_docker_cleanup.py +++ b/scripts/docker/build_visit_docker_cleanup.py @@ -20,6 +20,10 @@ def check_to_keep(path): res = True elif path.count("run_build_visit.sh") > 0: res = True + elif path.count("test_visit.py") > 0: + res = True + elif path.count("build_test_visit.sh") > 0: + res = True elif path.endswith(".cmake"): res = True return res @@ -45,4 +49,4 @@ def main(): copy_config_site() if __name__ == "__main__": - main() \ No newline at end of file + main() diff --git a/scripts/docker/test_visit.py b/scripts/docker/test_visit.py new file mode 100644 index 00000000000..720a52389df --- /dev/null +++ b/scripts/docker/test_visit.py @@ -0,0 +1,5 @@ +OpenDatabase("visit/data/curv2d.silo") +AddPlot("Pseudocolor", "d") +DrawPlots() +SaveWindow() +quit() diff --git a/src/config-site/rzansel61.cmake b/src/config-site/rzansel61.cmake index d0fb8661179..62e8cc5fc63 100644 --- a/src/config-site/rzansel61.cmake +++ b/src/config-site/rzansel61.cmake @@ -1,7 +1,7 @@ #/usr/workspace/visit/visit/thirdparty_shared/3.1.0/blueos/cmake/3.9.3/linux-ppc64le_gcc-4.9/bin/cmake ## ## ./build_visit3_1_0 generated host.cmake -## created: Thu Nov 14 14:32:00 PST 2019 +## created: Wed Dec 18 14:43:04 PST 2019 ## system: Linux rzansel61 4.14.0-115.10.1.1chaos.ch6a.ppc64le #1 SMP Thu Aug 8 15:51:58 PDT 2019 ppc64le ppc64le ppc64le GNU/Linux ## by: brugger @@ -69,6 +69,7 @@ VISIT_OPTION_DEFAULT(VISIT_OPENSSL_DIR ${VISITHOME}/openssl/1.0.2j/${VISITARCH}) ## Python ## VISIT_OPTION_DEFAULT(VISIT_PYTHON_DIR ${VISITHOME}/python/2.7.14/${VISITARCH}) +VISIT_OPTION_DEFAULT(VISIT_PYTHON3_DIR ${VISITHOME}/python/3.7.5/${VISITARCH}) ## ## LLVM diff --git a/src/config-site/rztopaz194.cmake b/src/config-site/rztopaz194.cmake index 0ba67fe8728..348d597b86a 100644 --- a/src/config-site/rztopaz194.cmake +++ b/src/config-site/rztopaz194.cmake @@ -1,8 +1,8 @@ #/usr/workspace/visit/visit/thirdparty_shared/3.1.0/toss3/cmake/3.9.3/linux-x86_64_gcc-4.9/bin/cmake ## ## ./build_visit3_1_0 generated host.cmake -## created: Tue Nov 12 15:26:12 PST 2019 -## system: Linux rztopaz578 3.10.0-1062.1.1.1chaos.ch6.x86_64 #1 SMP Wed Sep 4 16:09:20 PDT 2019 x86_64 x86_64 x86_64 GNU/Linux +## created: Wed Dec 18 12:43:35 PST 2019 +## system: Linux rztopaz188 3.10.0-1062.1.1.1chaos.ch6.x86_64 #1 SMP Wed Sep 4 16:09:20 PDT 2019 x86_64 x86_64 x86_64 GNU/Linux ## by: brugger ## @@ -69,6 +69,7 @@ VISIT_OPTION_DEFAULT(VISIT_OPENSSL_DIR ${VISITHOME}/openssl/1.0.2j/${VISITARCH}) ## Python ## VISIT_OPTION_DEFAULT(VISIT_PYTHON_DIR ${VISITHOME}/python/2.7.14/${VISITARCH}) +VISIT_OPTION_DEFAULT(VISIT_PYTHON3_DIR ${VISITHOME}/python/3.7.5/${VISITARCH}) ## ## LLVM