From 2abeca9134f95fe656e117332f892203da4aa7fa Mon Sep 17 00:00:00 2001 From: Willem Jan Palenstijn Date: Tue, 26 Oct 2021 12:47:20 +0200 Subject: Reorganize docker environments Now using debian8, debian9, debian11 for cuda 8 - 11.4 --- .gitignore | 5 ++ .../conda/libastra/linux_archive_build_config.yaml | 11 ---- python/conda/libastra/linux_build_config.yaml | 7 --- .../conda/libastra/linux_deb11_build_config.yaml | 8 +++ python/conda/libastra/linux_deb8_build_config.yaml | 11 ++++ python/conda/libastra/linux_deb9_build_config.yaml | 7 +++ python/conda/libastra/meta.yaml | 3 + python/conda/linux_release/build.sh | 25 ++++++++ .../conda/linux_release/buildenv.deb11/Dockerfile | 50 +++++++++++++++ .../conda/linux_release/buildenv.deb8/Dockerfile | 73 ++++++++++++++++++++++ .../conda/linux_release/buildenv.deb9/Dockerfile | 32 ++++++++++ python/conda/linux_release/buildenv/Dockerfile | 38 ----------- .../linux_release/buildenv/archive.Dockerfile | 67 -------------------- python/conda/linux_release/buildenv/build.sh | 29 --------- python/conda/linux_release/release.sh | 43 ++++++++++--- 15 files changed, 247 insertions(+), 162 deletions(-) delete mode 100644 python/conda/libastra/linux_archive_build_config.yaml delete mode 100644 python/conda/libastra/linux_build_config.yaml create mode 100644 python/conda/libastra/linux_deb11_build_config.yaml create mode 100644 python/conda/libastra/linux_deb8_build_config.yaml create mode 100644 python/conda/libastra/linux_deb9_build_config.yaml create mode 100755 python/conda/linux_release/build.sh create mode 100644 python/conda/linux_release/buildenv.deb11/Dockerfile create mode 100644 python/conda/linux_release/buildenv.deb8/Dockerfile create mode 100644 python/conda/linux_release/buildenv.deb9/Dockerfile delete mode 100644 python/conda/linux_release/buildenv/Dockerfile delete mode 100644 python/conda/linux_release/buildenv/archive.Dockerfile delete mode 100755 python/conda/linux_release/buildenv/build.sh diff --git a/.gitignore b/.gitignore index 77ca5c0..b203e2a 100644 --- a/.gitignore +++ b/.gitignore @@ -15,6 +15,11 @@ __pycache__ /python/astra/*.c /python/astra/config.pxi +/python/conda/linux_release/buildenv*/*.sh +/python/conda/linux_release/buildenv*/*.run +/python/conda/linux_release/buildenv*/cuda* +/python/conda/linux_release/pkgs/* + /build/linux/.libs/* /build/linux/Makefile /build/linux/aclocal.m4 diff --git a/python/conda/libastra/linux_archive_build_config.yaml b/python/conda/libastra/linux_archive_build_config.yaml deleted file mode 100644 index 347557b..0000000 --- a/python/conda/libastra/linux_archive_build_config.yaml +++ /dev/null @@ -1,11 +0,0 @@ -cudatoolkit: - - 8.0 - - 9.0 - - 9.2 - - 10.0 - - 10.1 - - 10.2 -c_compiler_version: # [linux or win] - - 5.4 # [linux or win] -cxx_compiler_version: # [linux or win] - - 5.4 # [linux or win] diff --git a/python/conda/libastra/linux_build_config.yaml b/python/conda/libastra/linux_build_config.yaml deleted file mode 100644 index ab26115..0000000 --- a/python/conda/libastra/linux_build_config.yaml +++ /dev/null @@ -1,7 +0,0 @@ -cudatoolkit: - - 11.0 - - 11.1 -c_compiler_version: # [linux or win] - - 5.4 # [linux or win] -cxx_compiler_version: # [linux or win] - - 5.4 # [linux or win] diff --git a/python/conda/libastra/linux_deb11_build_config.yaml b/python/conda/libastra/linux_deb11_build_config.yaml new file mode 100644 index 0000000..1ab563e --- /dev/null +++ b/python/conda/libastra/linux_deb11_build_config.yaml @@ -0,0 +1,8 @@ +cudatoolkit: + - 11.2 + - 11.3 + - 11.4 +c_compiler_version: # [linux or win] + - 9.3 # [linux or win] +cxx_compiler_version: # [linux or win] + - 9.3 # [linux or win] diff --git a/python/conda/libastra/linux_deb8_build_config.yaml b/python/conda/libastra/linux_deb8_build_config.yaml new file mode 100644 index 0000000..347557b --- /dev/null +++ b/python/conda/libastra/linux_deb8_build_config.yaml @@ -0,0 +1,11 @@ +cudatoolkit: + - 8.0 + - 9.0 + - 9.2 + - 10.0 + - 10.1 + - 10.2 +c_compiler_version: # [linux or win] + - 5.4 # [linux or win] +cxx_compiler_version: # [linux or win] + - 5.4 # [linux or win] diff --git a/python/conda/libastra/linux_deb9_build_config.yaml b/python/conda/libastra/linux_deb9_build_config.yaml new file mode 100644 index 0000000..61303a3 --- /dev/null +++ b/python/conda/libastra/linux_deb9_build_config.yaml @@ -0,0 +1,7 @@ +cudatoolkit: + - 11.0 + - 11.1 +c_compiler_version: # [linux or win] + - 7.3 # [linux or win] +cxx_compiler_version: # [linux or win] + - 7.3 # [linux or win] diff --git a/python/conda/libastra/meta.yaml b/python/conda/libastra/meta.yaml index 4215fd1..0d0c7cf 100644 --- a/python/conda/libastra/meta.yaml +++ b/python/conda/libastra/meta.yaml @@ -22,7 +22,10 @@ requirements: - boost # [osx or linux] - cudatoolkit {{ cudatoolkit }} # [linux] # libstdcxx-ng 9.3 introduces extra host system requirements on glibc + # For the older systems (debian8, debian9) we use g++ 5.4 and 7.3, resp. + {% if cxx_compiler_version in ['5.4', '7.3'] -%} - libstdcxx-ng <9.3 # [linux] + {% endif %} run: # See: https://github.com/conda-forge/conda-forge.github.io/issues/687#issuecomment-460095230 - {{ pin_compatible('cudatoolkit', max_pin='x.x') }} # [linux] diff --git a/python/conda/linux_release/build.sh b/python/conda/linux_release/build.sh new file mode 100755 index 0000000..e4664da --- /dev/null +++ b/python/conda/linux_release/build.sh @@ -0,0 +1,25 @@ +#!/bin/sh + +set -e + +BRANCH=master +URL=https://github.com/astra-toolbox/astra-toolbox + +echo "Cloning from ${URL}" +echo " branch: ${BRANCH}" + +cd /root +git clone --depth 1 --branch ${BRANCH} ${URL} + +[ $# -eq 0 ] || perl -pi -e "s/^(\s*version:\s*)[0-9a-z+\.']+$/\${1}'$1'/" astra-toolbox/python/conda/libastra/meta.yaml astra-toolbox/python/conda/astra-toolbox/meta.yaml +[ $# -eq 0 ] || perl -pi -e "s/^(\s*number:\s*)[0-9]+$/\${1}$2/" astra-toolbox/python/conda/libastra/meta.yaml astra-toolbox/python/conda/astra-toolbox/meta.yaml +[ $# -eq 0 ] || perl -pi -e "s/^(\s*string:.+_)[0-9]+/\${1}$2/" astra-toolbox/python/conda/libastra/meta.yaml +[ $# -eq 0 ] || perl -pi -e "s/^(\s*-\s*libastra\s*==\s*)[0-9a-z+\.]+$/\${1}$1/" astra-toolbox/python/conda/astra-toolbox/meta.yaml + +CONF=linux_$3_build_config.yaml + +conda-build -c nvidia -m astra-toolbox/python/conda/libastra/${CONF} astra-toolbox/python/conda/libastra + +[ x$4 = xfull ] && conda-build -c nvidia -m astra-toolbox/python/conda/astra-toolbox/linux_build_config.yaml astra-toolbox/python/conda/astra-toolbox + +cp /root/miniconda3/conda-bld/linux-64/*astra* /out diff --git a/python/conda/linux_release/buildenv.deb11/Dockerfile b/python/conda/linux_release/buildenv.deb11/Dockerfile new file mode 100644 index 0000000..9c892f5 --- /dev/null +++ b/python/conda/linux_release/buildenv.deb11/Dockerfile @@ -0,0 +1,50 @@ +FROM debian:11 AS BUILDBASE +ENV DEBIAN_FRONTEND noninteractive +#RUN echo 'deb http://archive.debian.org/debian/ wheezy main' > /etc/apt/sources.list && echo 'deb http://archive.debian.org/debian-security/ wheezy/updates main' >> /etc/apt/sources.list && apt-get -o Acquire::Check-Valid-Until=false update && apt-get install -y perl-modules build-essential autoconf libtool automake libboost-dev git libxml2 && rm -rf /var/lib/apt/lists/* +RUN apt-get update && apt-get install -y perl-modules build-essential autoconf libtool automake libboost-dev git libxml2 && rm -rf /var/lib/apt/lists/* + +ENV PATH /root/miniconda3/bin:$PATH +COPY Miniconda3-py39_4.10.3-Linux-x86_64.sh /root/ +RUN /bin/bash /root/Miniconda3-py39_4.10.3-Linux-x86_64.sh -b && \ + rm -f /root/Miniconda3* + +RUN conda install -y conda-build conda-verify + +FROM BUILDBASE AS CUDA115 +RUN touch /root/cuda115 +COPY cuda_11.5.0_495.29.05_linux.run /root +RUN /bin/bash /root/cuda_11.5.0_495.29.05_linux.run --toolkit --silent --installpath=/usr/local/cuda-11.5 && \ + rm -f /root/cuda_11.5.0_495.29.05_linux.run + + +FROM BUILDBASE AS CUDA114 +RUN touch /root/cuda114 +COPY cuda_11.4.1_470.57.02_linux.run /root +RUN /bin/bash /root/cuda_11.4.1_470.57.02_linux.run --toolkit --silent --installpath=/usr/local/cuda-11.4 && \ + rm -f /root/cuda_11.4.1_470.57.02_linux.run + + +FROM BUILDBASE AS CUDA113 +RUN touch /root/cuda113 +COPY cuda_11.3.1_465.19.01_linux.run /root +RUN /bin/bash /root/cuda_11.3.1_465.19.01_linux.run --toolkit --silent --installpath=/usr/local/cuda-11.3 && \ + rm -f /root/cuda_11.3.1_465.19.01_linux.run + +FROM BUILDBASE AS CUDA112 +RUN touch /root/cuda112 +COPY cuda_11.2.2_460.32.03_linux.run /root +RUN /bin/bash /root/cuda_11.2.2_460.32.03_linux.run --toolkit --silent --installpath=/usr/local/cuda-11.2 && \ + rm -f /root/cuda_11.2.2_460.32.03_linux.run + +FROM BUILDBASE +RUN touch /root/cuda +COPY --from=CUDA115 /usr/local/cuda-11.5 /usr/local/cuda-11.5 +COPY --from=CUDA114 /usr/local/cuda-11.4 /usr/local/cuda-11.4 +COPY --from=CUDA113 /usr/local/cuda-11.3 /usr/local/cuda-11.3 +COPY --from=CUDA112 /usr/local/cuda-11.2 /usr/local/cuda-11.2 + +RUN conda create -y -n prep -c nvidia --download-only cudatoolkit=11.4 && \ + conda create -y -n prep -c nvidia --download-only cudatoolkit=11.3 && \ + conda create -y -n prep -c nvidia --download-only cudatoolkit=11.2 +# 11.5 still has unresolved dependencies in default channels +# conda create -y -n prep -c nvidia --download-only cudatoolkit=11.5 diff --git a/python/conda/linux_release/buildenv.deb8/Dockerfile b/python/conda/linux_release/buildenv.deb8/Dockerfile new file mode 100644 index 0000000..be38743 --- /dev/null +++ b/python/conda/linux_release/buildenv.deb8/Dockerfile @@ -0,0 +1,73 @@ +FROM debian:8 AS BUILDBASE +ENV DEBIAN_FRONTEND noninteractive +#RUN echo 'deb http://archive.debian.org/debian/ wheezy main' > /etc/apt/sources.list && echo 'deb http://archive.debian.org/debian-security/ wheezy/updates main' >> /etc/apt/sources.list && apt-get -o Acquire::Check-Valid-Until=false update && apt-get install -y perl-modules build-essential autoconf libtool automake libboost-dev git libxml2 && rm -rf /var/lib/apt/lists/* +RUN apt-get update && apt-get install -y perl-modules build-essential autoconf libtool automake libboost-dev git libxml2 && rm -rf /var/lib/apt/lists/* + +ENV PATH /root/miniconda3/bin:$PATH +COPY Miniconda3-py39_4.10.3-Linux-x86_64.sh /root/ +RUN /bin/bash /root/Miniconda3-py39_4.10.3-Linux-x86_64.sh -b && \ + rm -f /root/Miniconda3* + +RUN conda install -y conda-build conda-verify + +# cudatoolkit < 9.0 is not easily available anymore from recent versions of conda. +# We have to enable the free channel (globally) to reenable old versions of cudatookit.. +# See: https://docs.conda.io/projects/conda/en/latest/user-guide/configuration/free-channel.html#troubleshooting +# TODO: Remove when support for cudatoolkit 8.0 is dropped. +RUN conda config --set restore_free_channel true + +FROM BUILDBASE AS CUDA102 +RUN touch /root/cuda102 +COPY cuda_10.2.89_440.33.01_linux.run /root +RUN /bin/bash /root/cuda_10.2.89_440.33.01_linux.run --toolkit --silent --installpath=/usr/local/cuda-10.2 && \ + rm -f /root/cuda_10.2.89_440.33.01_linux.run + + +FROM BUILDBASE AS CUDA101 +RUN touch /root/cuda101 +COPY cuda_10.1.243_418.87.00_linux.run /root +RUN /bin/bash /root/cuda_10.1.243_418.87.00_linux.run --toolkit --silent --installpath=/usr/local/cuda-10.1 && \ + rm -f /root/cuda_10.1.243_418.87.00_linux.run + +FROM BUILDBASE AS CUDA100 +RUN touch /root/cuda100 +COPY cuda_10.0.130_410.48_linux /root +RUN /bin/bash /root/cuda_10.0.130_410.48_linux --toolkit --silent && \ + rm -f /root/cuda_10.0.130_410.48_linux + +FROM BUILDBASE AS CUDA92 +RUN touch /root/cuda92 +COPY cuda_9.2.148_396.37_linux /root +RUN /bin/bash /root/cuda_9.2.148_396.37_linux --toolkit --silent && \ + rm -f /root/cuda_9.2.148_396.37_linux + +FROM BUILDBASE AS CUDA90 +RUN touch /root/cuda90 +COPY cuda_9.0.176_384.81_linux-run /root +RUN /bin/bash /root/cuda_9.0.176_384.81_linux-run --toolkit --silent && \ + rm -f /root/cuda_9.0.176_384.81_linux-run + +FROM BUILDBASE AS CUDA80 +RUN touch /root/cuda80 +COPY cuda_8.0.61_375.26_linux-run /root +RUN /bin/bash /root/cuda_8.0.61_375.26_linux-run --toolkit --silent && \ + rm -f /root/cuda_8.0.61_375.26_linux-run +COPY cuda_8.0.61.2_linux-run /root +RUN /bin/bash /root/cuda_8.0.61.2_linux-run --silent --accept-eula && \ + rm -f /root/cuda_8.0.61.2_linux-run + +FROM BUILDBASE +RUN touch /root/cuda +COPY --from=CUDA102 /usr/local/cuda-10.2 /usr/local/cuda-10.2 +COPY --from=CUDA101 /usr/local/cuda-10.1 /usr/local/cuda-10.1 +COPY --from=CUDA100 /usr/local/cuda-10.0 /usr/local/cuda-10.0 +COPY --from=CUDA92 /usr/local/cuda-9.2 /usr/local/cuda-9.2 +COPY --from=CUDA90 /usr/local/cuda-9.0 /usr/local/cuda-9.0 +COPY --from=CUDA80 /usr/local/cuda-8.0 /usr/local/cuda-8.0 + +RUN conda create -y -n prep -c nvidia --download-only cudatoolkit=10.2 && \ + conda create -y -n prep -c nvidia --download-only cudatoolkit=10.1 && \ + conda create -y -n prep -c nvidia --download-only cudatoolkit=10.0 && \ + conda create -y -n prep -c nvidia --download-only cudatoolkit=9.2 && \ + conda create -y -n prep -c nvidia --download-only cudatoolkit=9.0 && \ + conda create -y -n prep -c nvidia --download-only cudatoolkit=8.0 diff --git a/python/conda/linux_release/buildenv.deb9/Dockerfile b/python/conda/linux_release/buildenv.deb9/Dockerfile new file mode 100644 index 0000000..5bb25f9 --- /dev/null +++ b/python/conda/linux_release/buildenv.deb9/Dockerfile @@ -0,0 +1,32 @@ +FROM debian:9 AS BUILDBASE +ENV DEBIAN_FRONTEND noninteractive +#RUN echo 'deb http://archive.debian.org/debian/ wheezy main' > /etc/apt/sources.list && echo 'deb http://archive.debian.org/debian-security/ wheezy/updates main' >> /etc/apt/sources.list && apt-get -o Acquire::Check-Valid-Until=false update && apt-get install -y perl-modules build-essential autoconf libtool automake libboost-dev git libxml2 && rm -rf /var/lib/apt/lists/* +RUN apt-get update && apt-get install -y perl-modules build-essential autoconf libtool automake libboost-dev git libxml2 && rm -rf /var/lib/apt/lists/* + +ENV PATH /root/miniconda3/bin:$PATH +COPY Miniconda3-py39_4.10.3-Linux-x86_64.sh /root/ +RUN /bin/bash /root/Miniconda3-py39_4.10.3-Linux-x86_64.sh -b && \ + rm -f /root/Miniconda3* + +RUN conda install -y conda-build conda-verify + +FROM BUILDBASE AS CUDA111 +RUN touch /root/cuda111 +COPY cuda_11.1.1_455.32.00_linux.run /root +RUN /bin/bash /root/cuda_11.1.1_455.32.00_linux.run --toolkit --silent --installpath=/usr/local/cuda-11.1 && \ + rm -f /root/cuda_11.1.1_455.32.00_linux.run + +FROM BUILDBASE AS CUDA110 +RUN touch /root/cuda110 +COPY cuda_11.0.3_450.51.06_linux.run /root +RUN /bin/bash /root/cuda_11.0.3_450.51.06_linux.run --toolkit --silent --installpath=/usr/local/cuda-11.0 && \ + rm -f /root/cuda_11.0.3_450.51.06_linux.run + + +FROM BUILDBASE +RUN touch /root/cuda +COPY --from=CUDA111 /usr/local/cuda-11.1 /usr/local/cuda-11.1 +COPY --from=CUDA110 /usr/local/cuda-11.0 /usr/local/cuda-11.0 + +RUN conda create -y -n prep -c nvidia --download-only cudatoolkit=11.1 && \ + conda create -y -n prep -c nvidia --download-only cudatoolkit=11.0 diff --git a/python/conda/linux_release/buildenv/Dockerfile b/python/conda/linux_release/buildenv/Dockerfile deleted file mode 100644 index 7098dc8..0000000 --- a/python/conda/linux_release/buildenv/Dockerfile +++ /dev/null @@ -1,38 +0,0 @@ -FROM debian:9 AS BUILDBASE -ENV DEBIAN_FRONTEND noninteractive -#RUN echo 'deb http://archive.debian.org/debian/ wheezy main' > /etc/apt/sources.list && echo 'deb http://archive.debian.org/debian-security/ wheezy/updates main' >> /etc/apt/sources.list && apt-get -o Acquire::Check-Valid-Until=false update && apt-get install -y perl-modules build-essential autoconf libtool automake libboost-dev git libxml2 && rm -rf /var/lib/apt/lists/* -RUN apt-get update && apt-get install -y perl-modules build-essential autoconf libtool automake libboost-dev git libxml2 && rm -rf /var/lib/apt/lists/* - -ENV PATH /root/miniconda3/bin:$PATH -COPY Miniconda3-py39_4.10.3-Linux-x86_64.sh /root/ -RUN /bin/bash /root/Miniconda3-py39_4.10.3-Linux-x86_64.sh -b && \ - rm -f /root/Miniconda3* - -RUN conda install -y conda-build conda-verify - -FROM BUILDBASE AS CUDA112 -RUN touch /root/cuda112 -COPY cuda_11.2.2_460.32.03_linux.run /root -RUN /bin/bash /root/cuda_11.2.2_460.32.03_linux.run --toolkit --silent --installpath=/usr/local/cuda-11.2 && \ - rm -f /root/cuda_11.2.2_460.32.03_linux.run - -FROM BUILDBASE AS CUDA111 -RUN touch /root/cuda111 -COPY cuda_11.1.1_455.32.00_linux.run /root -RUN /bin/bash /root/cuda_11.1.1_455.32.00_linux.run --toolkit --silent --installpath=/usr/local/cuda-11.1 && \ - rm -f /root/cuda_11.1.1_455.32.00_linux.run - -FROM BUILDBASE AS CUDA110 -RUN touch /root/cuda110 -COPY cuda_11.0.3_450.51.06_linux.run /root -RUN /bin/bash /root/cuda_11.0.3_450.51.06_linux.run --toolkit --silent --installpath=/usr/local/cuda-11.0 && \ - rm -f /root/cuda_11.0.3_450.51.06_linux.run - - -FROM BUILDBASE -RUN touch /root/cuda -COPY --from=CUDA112 /usr/local/cuda-11.2 /usr/local/cuda-11.2 -COPY --from=CUDA111 /usr/local/cuda-11.1 /usr/local/cuda-11.1 -COPY --from=CUDA110 /usr/local/cuda-11.0 /usr/local/cuda-11.0 - - diff --git a/python/conda/linux_release/buildenv/archive.Dockerfile b/python/conda/linux_release/buildenv/archive.Dockerfile deleted file mode 100644 index 6096b07..0000000 --- a/python/conda/linux_release/buildenv/archive.Dockerfile +++ /dev/null @@ -1,67 +0,0 @@ -FROM debian:8 AS BUILDBASE -ENV DEBIAN_FRONTEND noninteractive -#RUN echo 'deb http://archive.debian.org/debian/ wheezy main' > /etc/apt/sources.list && echo 'deb http://archive.debian.org/debian-security/ wheezy/updates main' >> /etc/apt/sources.list && apt-get -o Acquire::Check-Valid-Until=false update && apt-get install -y perl-modules build-essential autoconf libtool automake libboost-dev git libxml2 && rm -rf /var/lib/apt/lists/* -RUN apt-get update && apt-get install -y perl-modules build-essential autoconf libtool automake libboost-dev git libxml2 && rm -rf /var/lib/apt/lists/* - -ENV PATH /root/miniconda3/bin:$PATH -COPY Miniconda3-py39_4.10.3-Linux-x86_64.sh /root/ -RUN /bin/bash /root/Miniconda3-py39_4.10.3-Linux-x86_64.sh -b && \ - rm -f /root/Miniconda3* - -RUN conda install -y conda-build conda-verify - -# cudatoolkit < 9.0 is not easily available anymore from recent versions of conda. -# We have to enable the free channel (globally) to reenable old versions of cudatookit.. -# See: https://docs.conda.io/projects/conda/en/latest/user-guide/configuration/free-channel.html#troubleshooting -# TODO: Remove when support for cudatoolkit 8.0 is dropped. -RUN conda config --set restore_free_channel true - -FROM BUILDBASE AS CUDA102 -RUN touch /root/cuda102 -COPY cuda_10.2.89_440.33.01_linux.run /root -RUN /bin/bash /root/cuda_10.2.89_440.33.01_linux.run --toolkit --silent --installpath=/usr/local/cuda-10.2 && \ - rm -f /root/cuda_10.2.89_440.33.01_linux.run - - -FROM BUILDBASE AS CUDA101 -RUN touch /root/cuda101 -COPY cuda_10.1.243_418.87.00_linux.run /root -RUN /bin/bash /root/cuda_10.1.243_418.87.00_linux.run --toolkit --silent --installpath=/usr/local/cuda-10.1 && \ - rm -f /root/cuda_10.1.243_418.87.00_linux.run - -FROM BUILDBASE AS CUDA100 -RUN touch /root/cuda100 -COPY cuda_10.0.130_410.48_linux /root -RUN /bin/bash /root/cuda_10.0.130_410.48_linux --toolkit --silent && \ - rm -f /root/cuda_10.0.130_410.48_linux - -FROM BUILDBASE AS CUDA92 -RUN touch /root/cuda92 -COPY cuda_9.2.148_396.37_linux /root -RUN /bin/bash /root/cuda_9.2.148_396.37_linux --toolkit --silent && \ - rm -f /root/cuda_9.2.148_396.37_linux - -FROM BUILDBASE AS CUDA90 -RUN touch /root/cuda90 -COPY cuda_9.0.176_384.81_linux-run /root -RUN /bin/bash /root/cuda_9.0.176_384.81_linux-run --toolkit --silent && \ - rm -f /root/cuda_9.0.176_384.81_linux-run - -FROM BUILDBASE AS CUDA80 -RUN touch /root/cuda80 -COPY cuda_8.0.61_375.26_linux-run /root -RUN /bin/bash /root/cuda_8.0.61_375.26_linux-run --toolkit --silent && \ - rm -f /root/cuda_8.0.61_375.26_linux-run -COPY cuda_8.0.61.2_linux-run /root -RUN /bin/bash /root/cuda_8.0.61.2_linux-run --silent --accept-eula && \ - rm -f /root/cuda_8.0.61.2_linux-run - -FROM BUILDBASE -RUN touch /root/cuda -COPY --from=CUDA102 /usr/local/cuda-10.2 /usr/local/cuda-10.2 -COPY --from=CUDA101 /usr/local/cuda-10.1 /usr/local/cuda-10.1 -COPY --from=CUDA100 /usr/local/cuda-10.0 /usr/local/cuda-10.0 -COPY --from=CUDA92 /usr/local/cuda-9.2 /usr/local/cuda-9.2 -COPY --from=CUDA90 /usr/local/cuda-9.0 /usr/local/cuda-9.0 -COPY --from=CUDA80 /usr/local/cuda-8.0 /usr/local/cuda-8.0 - diff --git a/python/conda/linux_release/buildenv/build.sh b/python/conda/linux_release/buildenv/build.sh deleted file mode 100755 index b122618..0000000 --- a/python/conda/linux_release/buildenv/build.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/sh - -set -e - -BRANCH=master -URL=https://github.com/astra-toolbox/astra-toolbox - -echo "Cloning from ${URL}" -echo " branch: ${BRANCH}" - -cd /root -git clone --depth 1 --branch ${BRANCH} ${URL} - -[ $# -eq 0 ] || perl -pi -e "s/^(\s*version:\s*)[0-9a-z+\.']+$/\${1}'$1'/" astra-toolbox/python/conda/libastra/meta.yaml astra-toolbox/python/conda/astra-toolbox/meta.yaml -[ $# -eq 0 ] || perl -pi -e "s/^(\s*number:\s*)[0-9]+$/\${1}$2/" astra-toolbox/python/conda/libastra/meta.yaml astra-toolbox/python/conda/astra-toolbox/meta.yaml -[ $# -eq 0 ] || perl -pi -e "s/^(\s*string:.+_)[0-9]+/\${1}$2/" astra-toolbox/python/conda/libastra/meta.yaml -[ $# -eq 0 ] || perl -pi -e "s/^(\s*-\s*libastra\s*==\s*)[0-9a-z+\.]+$/\${1}$1/" astra-toolbox/python/conda/astra-toolbox/meta.yaml - -if [ x$3 = xarchive ]; then - CONF=linux_archive_build_config.yaml -else - CONF=linux_build_config.yaml -fi - -conda-build -c nvidia -m astra-toolbox/python/conda/libastra/${CONF} astra-toolbox/python/conda/libastra - -[ x$3 = xarchive ] || conda-build -c nvidia -m astra-toolbox/python/conda/astra-toolbox/linux_build_config.yaml astra-toolbox/python/conda/astra-toolbox - -cp /root/miniconda3/conda-bld/linux-64/*astra* /out diff --git a/python/conda/linux_release/release.sh b/python/conda/linux_release/release.sh index 9b549cd..a936fbe 100644 --- a/python/conda/linux_release/release.sh +++ b/python/conda/linux_release/release.sh @@ -4,25 +4,48 @@ set -e D=`mktemp -d` -for F in https://repo.anaconda.com/miniconda/Miniconda3-py39_4.10.3-Linux-x86_64.sh https://developer.download.nvidia.com/compute/cuda/11.0.3/local_installers/cuda_11.0.3_450.51.06_linux.run https://developer.download.nvidia.com/compute/cuda/11.1.1/local_installers/cuda_11.1.1_455.32.00_linux.run https://developer.download.nvidia.com/compute/cuda/11.2.2/local_installers/cuda_11.2.2_460.32.03_linux.run ; do - [ -f buildenv/`basename $F` ] || (cd buildenv; wget $F ) +for F in \ + https://repo.anaconda.com/miniconda/Miniconda3-py39_4.10.3-Linux-x86_64.sh \ + https://developer.nvidia.com/compute/cuda/8.0/Prod2/local_installers/cuda_8.0.61_375.26_linux-run \ + https://developer.nvidia.com/compute/cuda/8.0/Prod2/patches/2/cuda_8.0.61.2_linux-run \ + https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run \ + https://developer.nvidia.com/compute/cuda/9.2/Prod2/local_installers/cuda_9.2.148_396.37_linux \ + https://developer.nvidia.com/compute/cuda/10.0/Prod/local_installers/cuda_10.0.130_410.48_linux \ + http://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda_10.1.243_418.87.00_linux.run \ + http://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda_10.2.89_440.33.01_linux.run \ +; do + [ -f buildenv.deb8/`basename $F` ] || (cd buildenv.deb8; wget $F ) done - -for F in https://repo.anaconda.com/miniconda/Miniconda3-py39_4.10.3-Linux-x86_64.sh https://developer.nvidia.com/compute/cuda/8.0/Prod2/local_installers/cuda_8.0.61_375.26_linux-run https://developer.nvidia.com/compute/cuda/8.0/Prod2/patches/2/cuda_8.0.61.2_linux-run https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run https://developer.nvidia.com/compute/cuda/9.2/Prod2/local_installers/cuda_9.2.148_396.37_linux https://developer.nvidia.com/compute/cuda/10.0/Prod/local_installers/cuda_10.0.130_410.48_linux http://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda_10.1.243_418.87.00_linux.run http://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda_10.2.89_440.33.01_linux.run ; do - [ -f buildenv/`basename $F` ] || (cd buildenv; wget $F ) +for F in \ + https://repo.anaconda.com/miniconda/Miniconda3-py39_4.10.3-Linux-x86_64.sh \ + https://developer.download.nvidia.com/compute/cuda/11.0.3/local_installers/cuda_11.0.3_450.51.06_linux.run \ + https://developer.download.nvidia.com/compute/cuda/11.1.1/local_installers/cuda_11.1.1_455.32.00_linux.run \ +; do + [ -f buildenv.deb9/`basename $F` ] || (cd buildenv.deb9; wget $F ) done +for F in \ + https://repo.anaconda.com/miniconda/Miniconda3-py39_4.10.3-Linux-x86_64.sh \ + https://developer.download.nvidia.com/compute/cuda/11.2.2/local_installers/cuda_11.2.2_460.32.03_linux.run \ + https://developer.download.nvidia.com/compute/cuda/11.3.1/local_installers/cuda_11.3.1_465.19.01_linux.run \ + https://developer.download.nvidia.com/compute/cuda/11.4.1/local_installers/cuda_11.4.1_470.57.02_linux.run \ + https://developer.download.nvidia.com/compute/cuda/11.5.0/local_installers/cuda_11.5.0_495.29.05_linux.run \ +; do + [ -f buildenv.deb11/`basename $F` ] || (cd buildenv.deb11; wget $F ) +done -docker build -t astra-build-env buildenv -docker build -t astra-build-env-archive -f buildenv/archive.Dockerfile buildenv +docker build -t astra-build-env-deb8 buildenv.deb8 +docker build -t astra-build-env-deb9 buildenv.deb9 +docker build -t astra-build-env-deb11 buildenv.deb11 -cp buildenv/build.sh $D +cp build.sh $D V=1.9.9.dev7 -docker run -v $D:/out:z astra-build-env-archive /bin/bash /out/build.sh $V 0 archive -docker run -v $D:/out:z astra-build-env /bin/bash /out/build.sh $V 0 +docker run -v $D:/out:z astra-build-env-deb8 /bin/bash /out/build.sh $V 0 deb8 +docker run -v $D:/out:z astra-build-env-deb9 /bin/bash /out/build.sh $V 0 deb9 full +docker run -v $D:/out:z astra-build-env-deb11 /bin/bash /out/build.sh $V 0 deb11 rm -f $D/build.sh -- cgit v1.2.3