From 5d9b7b00267e99baefcfba2d53dbfc312daa84eb Mon Sep 17 00:00:00 2001 From: Willem Jan Palenstijn Date: Mon, 28 Nov 2016 16:37:08 +0100 Subject: Add scripts for building conda packages using Docker --- python/conda/linux_release/README.txt | 2 ++ python/conda/linux_release/buildenv/Dockerfile | 15 +++++++++++++++ python/conda/linux_release/builder/Dockerfile | 8 ++++++++ python/conda/linux_release/release.sh | 19 +++++++++++++++++++ 4 files changed, 44 insertions(+) create mode 100644 python/conda/linux_release/README.txt create mode 100644 python/conda/linux_release/buildenv/Dockerfile create mode 100644 python/conda/linux_release/builder/Dockerfile create mode 100644 python/conda/linux_release/release.sh diff --git a/python/conda/linux_release/README.txt b/python/conda/linux_release/README.txt new file mode 100644 index 0000000..12cfcbb --- /dev/null +++ b/python/conda/linux_release/README.txt @@ -0,0 +1,2 @@ +This directory contains a Docker container based environment for building linux release packages for conda. + diff --git a/python/conda/linux_release/buildenv/Dockerfile b/python/conda/linux_release/buildenv/Dockerfile new file mode 100644 index 0000000..c73e4b9 --- /dev/null +++ b/python/conda/linux_release/buildenv/Dockerfile @@ -0,0 +1,15 @@ +FROM debian:7 +ENV PATH /root/miniconda3/bin:$PATH +ENV DEBIAN_FRONTEND noninteractive +# http://developer.download.nvidia.com/compute/cuda/5_5/rel/installers/cuda_5.5.22_linux_64.run +ADD cuda_5.5.22_linux_64.run /root/ +# https://repo.continuum.io/miniconda/Miniconda3-4.2.12-Linux-x86_64.sh +ADD Miniconda3-4.2.12-Linux-x86_64.sh /root/ +RUN apt-get update +RUN apt-get install -y perl-modules build-essential autoconf libtool automake libboost-dev git +RUN /bin/bash /root/Miniconda3-4.2.12-Linux-x86_64.sh -b +RUN /bin/bash /root/cuda_5.5.22_linux_64.run -toolkit -silent +RUN conda install -y conda-build +ENV CUDA_ROOT /usr/local/cuda +ENV CC gcc +ENV CXX g++ diff --git a/python/conda/linux_release/builder/Dockerfile b/python/conda/linux_release/builder/Dockerfile new file mode 100644 index 0000000..6acef62 --- /dev/null +++ b/python/conda/linux_release/builder/Dockerfile @@ -0,0 +1,8 @@ +FROM astra-build-env +ARG BUILD_NUMBER= +WORKDIR /root +RUN git clone -b conda_release https://github.com/astra-toolbox/astra-toolbox +RUN [ -z $BUILD_NUMBER ] || perl -pi -e "s/^(\s*number:\s*)[0-9]+$/\${1}$BUILD_NUMBER/" astra-toolbox/python/conda/libastra/meta.yaml astra-toolbox/python/conda//meta.yaml +RUN conda-build --python=3.5 astra-toolbox/python/conda/libastra +RUN conda-build --python=3.5 astra-toolbox/python/conda +RUN conda-build --python=2.7 astra-toolbox/python/conda diff --git a/python/conda/linux_release/release.sh b/python/conda/linux_release/release.sh new file mode 100644 index 0000000..35cbdd0 --- /dev/null +++ b/python/conda/linux_release/release.sh @@ -0,0 +1,19 @@ +#!/bin/bash + +D=`mktemp -d` + +[ -f buildenv/cuda_5.5.22_linux_64.run ] || (cd buildenv; wget http://developer.download.nvidia.com/compute/cuda/5_5/rel/installers/cuda_5.5.22_linux_64.run ) +[ -f buildenv/Miniconda3-4.2.12-Linux-x86_64.sh ] || (cd buildenv; wget https://repo.continuum.io/miniconda/Miniconda3-4.2.12-Linux-x86_64.sh ) + +docker build -t astra-build-env buildenv +docker build --no-cache -t astra-builder builder + +docker run --name astra-build-cnt -v $D:/out:z astra-builder /bin/bash -c "cp /root/miniconda3/conda-bld/linux-64/*astra* /out" + +mkdir -p pkgs +mv $D/* pkgs +rmdir $D + +docker rm astra-build-cnt +docker rmi astra-builder + -- cgit v1.2.3