diff --git a/.github/workflows/anaconda_alpine_ci.yml b/.github/workflows/anaconda_alpine_ci.yml deleted file mode 100644 index b435dd31..00000000 --- a/.github/workflows/anaconda_alpine_ci.yml +++ /dev/null @@ -1,35 +0,0 @@ -name: Build Anaconda3 Alpine Image -on: - push: - branches: - - master - paths: - - 'anaconda3/alpine/Dockerfile' - - '.github/workflows/anaconda_alpine_ci.yml' - pull_request: - paths: - - 'anaconda3/alpine/Dockerfile' - - '.github/workflows/anaconda_alpine_ci.yml' - workflow_dispatch: - -jobs: - build: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3 - - - name: Set up Docker Buildx - id: buildx - uses: docker/setup-buildx-action@4c0219f9ac95b02789c1075625400b2acbff50b1 # v2 - with: - version: latest - driver-opts: network=host - - - name: build anaconda3/alpine - uses: docker/build-push-action@2eb1c1961a95fc15694676618e422e8ba1d63825 # v4 - with: - context: ./anaconda3/alpine - builder: ${{ steps.buildx.outputs.name }} - file: ./anaconda3/alpine/Dockerfile - tags: continuumio/anaconda3/alpine:latest - push: false diff --git a/.github/workflows/miniconda_alpine_ci.yml b/.github/workflows/miniconda_alpine_ci.yml deleted file mode 100644 index 057aae2d..00000000 --- a/.github/workflows/miniconda_alpine_ci.yml +++ /dev/null @@ -1,57 +0,0 @@ -name: Build Miniconda3 Alpine Image -on: - push: - branches: - - master - tags: - - 'miniconda3-v*.*.*' - paths: - - 'miniconda3/alpine/Dockerfile' - - '.github/workflows/miniconda_alpine_ci.yml' - pull_request: - paths: - - 'miniconda3/alpine/Dockerfile' - - '.github/workflows/miniconda_alpine_ci.yml' - workflow_dispatch: - -jobs: - build: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3 - - - name: Login to DockerHub - uses: docker/login-action@465a07811f14bebb1938fbed4728c6a1ff8901fc # v2 - if: github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/tags') - with: - username: ${{ secrets.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_TOKEN }} - - - name: Set up Docker Buildx - id: buildx - uses: docker/setup-buildx-action@4c0219f9ac95b02789c1075625400b2acbff50b1 # v2 - with: - version: latest - driver-opts: network=host - - - name: Docker meta - id: meta - uses: docker/metadata-action@818d4b7b91585d195f67373fd9cb0332e31a7175 # v4 - with: - images: continuumio/miniconda3 - tags: | - type=ref,event=branch,suffix=-alpine - type=ref,event=pr,suffix=-alpine - type=match,pattern=miniconda3-v(.*),group=1,suffix=-alpine - flavor: | - latest=false - - - name: build miniconda3/alpine - uses: docker/build-push-action@2eb1c1961a95fc15694676618e422e8ba1d63825 # v4 - with: - context: ./miniconda3/alpine - builder: ${{ steps.buildx.outputs.name }} - file: ./miniconda3/alpine/Dockerfile - tags: ${{ steps.meta.outputs.tags }} - labels: ${{ steps.meta.outputs.labels }} - push: ${{ github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/tags') }} diff --git a/.github/workflows/miniconda_nanoserver_ci.yml b/.github/workflows/miniconda_nanoserver_ci.yml deleted file mode 100644 index 7677c5e3..00000000 --- a/.github/workflows/miniconda_nanoserver_ci.yml +++ /dev/null @@ -1,53 +0,0 @@ -name: Build Miniconda3 Nanoserver Image -on: - push: - branches: - - master - tags: - - 'miniconda3-v*.*.*-nanoserver' - paths: - - 'miniconda3/nanoserver/Dockerfile' - - '.github/workflows/miniconda_nanoserver_ci.yml' - pull_request: - paths: - - 'miniconda3/nanoserver/Dockerfile' - - '.github/workflows/miniconda_nanoserver_ci.yml' - workflow_dispatch: - -jobs: - build: - runs-on: windows-2019 - steps: - - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3 - - - name: Login to DockerHub - uses: docker/login-action@465a07811f14bebb1938fbed4728c6a1ff8901fc # v2 - if: github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/tags') - with: - username: ${{ secrets.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_TOKEN }} - - - name: Docker meta - id: meta - uses: docker/metadata-action@818d4b7b91585d195f67373fd9cb0332e31a7175 # v4 - with: - images: continuumio/miniconda3 - tags: | - type=ref,event=branch,suffix=-nanoserver - type=ref,event=pr,suffix=-nanoserver - type=match,pattern=miniconda3-v(.*)-nanoserver,group=1,suffix=-nanoserver - flavor: | - latest=false - - # The build push action does not support windows builds yet, - # thus using raw commands https://github.com/docker/build-push-action/issues/18 - # TODO: Parse and use the meta action generated tag list - - name: Build - run: | - echo "${{ steps.meta.outputs.tags }}" - cd miniconda3/nanoserver && docker build . -t continuumio/miniconda3:master-nanoserver && docker image inspect continuumio/miniconda3:master-nanoserver - - - name: Push - if: github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/tags') - run: | - cd miniconda3/nanoserver && docker push continuumio/miniconda3:master-nanoserver diff --git a/anaconda3/alpine/Dockerfile b/anaconda3/alpine/Dockerfile deleted file mode 100644 index fd2296d3..00000000 --- a/anaconda3/alpine/Dockerfile +++ /dev/null @@ -1,27 +0,0 @@ -FROM frolvlad/alpine-glibc:alpine-3.17 - -LABEL maintainer="Anaconda, Inc" -ENV ANACONDA_VERSION 2021.05 -ENV ANACONDA_MD5 25e3ebae8905450ddac0f5c93f89c467 - -# Create non-root user, install dependencies, install Anaconda -RUN addgroup -S anaconda && \ - adduser -D -u 10151 anaconda -G anaconda && \ - wget --quiet https://repo.continuum.io/archive/Anaconda3-$ANACONDA_VERSION-Linux-x86_64.sh -O anaconda.sh && \ - echo "${ANACONDA_MD5} anaconda.sh" > anaconda.md5 && \ - if ! md5sum -s -c anaconda.md5; then exit 1; fi && \ - mkdir -p /opt && \ - sh ./anaconda.sh -b -p /opt/conda && \ - rm anaconda.sh anaconda.md5 && \ - ln -s /opt/conda/etc/profile.d/conda.sh /etc/profile.d/conda.sh && \ - chown -R anaconda /opt && \ - echo ". /opt/conda/etc/profile.d/conda.sh" >> /home/anaconda/.profile && \ - echo "conda activate base" >> /home/anaconda/.profile && \ - find /opt/conda/ -follow -type f -name '*.a' -delete && \ - find /opt/conda/ -follow -type f -name '*.js.map' -delete && \ - /opt/conda/bin/conda clean -afy - -USER 10151 -ENV PATH "/bin:/sbin:/usr/bin" - -CMD [ "sh", "--login", "-i" ] diff --git a/ci/anaconda-alpine b/ci/anaconda-alpine deleted file mode 100644 index 851f0ff1..00000000 --- a/ci/anaconda-alpine +++ /dev/null @@ -1 +0,0 @@ -2021.05-alpine diff --git a/ci/anaconda-amazonlinux b/ci/anaconda-amazonlinux deleted file mode 100644 index f629fd8e..00000000 --- a/ci/anaconda-amazonlinux +++ /dev/null @@ -1 +0,0 @@ -2021.05-arm64 diff --git a/ci/anaconda-debian b/ci/anaconda-debian deleted file mode 100644 index fd10862f..00000000 --- a/ci/anaconda-debian +++ /dev/null @@ -1 +0,0 @@ -2021.05 diff --git a/ci/build-docker-images.yaml b/ci/build-docker-images.yaml deleted file mode 100644 index a940e5d1..00000000 --- a/ci/build-docker-images.yaml +++ /dev/null @@ -1,184 +0,0 @@ -# fly -t concourse set-pipeline -p docker-images -c build-docker-images.yaml -l config.yaml - -resource_types: -- name: docker-manifest - type: docker-image - source: - repository: mbialon/concourse-docker-manifest-resource - -resources: -- name: image-manifest - type: docker-manifest - source: - repository: mbialon/image - username: condabot - password: ((dockerhub_password)) - -- name: docker-images - type: git - source: - uri: https://((recipe-repo-access-token))@github.com/ContinuumIO/docker-images.git - branch: master - -- name: docker-image-miniconda - type: docker-image - source: - password: ((dockerhub_password)) - repository: continuumio/miniconda - username: condabot - -- name: docker-image-miniconda2 - type: docker-image - source: - password: ((dockerhub_password)) - repository: continuumio/miniconda2 - username: condabot - -- name: docker-image-miniconda3 - type: docker-image - source: - password: ((dockerhub_password)) - repository: continuumio/miniconda3 - username: condabot - -- name: docker-image-anaconda - type: docker-image - source: - password: ((dockerhub_password)) - repository: continuumio/anaconda - username: condabot - -- name: docker-image-anaconda2 - type: docker-image - source: - password: ((dockerhub_password)) - repository: continuumio/anaconda2 - username: condabot - -- name: docker-image-anaconda3 - type: docker-image - source: - password: ((dockerhub_password)) - repository: continuumio/anaconda3 - username: condabot - -- name: anaconda3-amd64-debian - type: docker-image - source: - password: ((dockerhub_password)) - repository: continuumio/anaconda3 - username: condabot - tag: 2021.05 - -- name: anaconda3-amd64-alpine - type: docker-image - source: - password: ((dockerhub_password)) - repository: continuumio/anaconda3 - username: condabot - tag: 2021.05-alpine - -- name: anaconda3-arm64-amazonlinux - type: docker-image - source: - password: ((dockerhub_password)) - repository: continuumio/anaconda3 - username: condabot - tag: 2021.05-amazonlinux - -jobs: - - name: build_miniconda - plan: - - get: docker-images - - put: docker-image-miniconda - params: - build: docker-images/miniconda/alpine - tag_file: docker-images/ci/miniconda-alpine - - put: docker-image-miniconda - params: - build: docker-images/miniconda/debian - tag_as_latest: true - tag_file: docker-images/ci/miniconda-debian - - name: build_miniconda2 - plan: - - get: docker-images - - put: docker-image-miniconda2 - params: - build: docker-images/miniconda/alpine - tag_file: docker-images/ci/miniconda-alpine - - put: docker-image-miniconda2 - params: - build: docker-images/miniconda/debian - tag_as_latest: true - tag_file: docker-images/ci/miniconda-debian - - name: build_miniconda3 - plan: - - get: docker-images - - put: docker-image-miniconda3 - params: - build: docker-images/miniconda3/alpine - tag_file: docker-images/ci/miniconda-alpine - - put: docker-image-miniconda3 - params: - build: docker-images/miniconda3/debian - tag_as_latest: true - tag_file: docker-images/ci/miniconda-debian - - - name: build_anaconda - plan: - - get: docker-images - - put: docker-image-anaconda - params: - build: docker-images/anaconda/alpine - tag_file: docker-images/ci/anaconda-alpine - - put: docker-image-anaconda - params: - build: docker-images/anaconda/debian - tag_as_latest: true - tag_file: docker-images/ci/anaconda-debian - - name: build_anaconda2 - plan: - - get: docker-images - - put: docker-image-anaconda2 - params: - build: docker-images/anaconda/alpine - tag_file: docker-images/ci/anaconda-alpine - - put: docker-image-anaconda2 - params: - build: docker-images/anaconda/debian - tag_as_latest: true - tag_file: docker-images/ci/anaconda-debian - - name: build_anaconda3 - plan: - - get: docker-images - - put: docker-image-anaconda3 - params: - build: docker-images/anaconda3/alpine - tag_file: docker-images/ci/anaconda-alpine - - put: docker-image-anaconda3 - params: - build: docker-images/anaconda3/debian - tag_as_latest: true - tag_file: docker-images/ci/anaconda-debian - - put: docker-image-anaconda3 - params: - build: docker-images/anaconda3/amazonlinux - tag_file: docker-images/ci/anaconda-amazonlinux - - name: build manifest from images - plan: - - get: anaconda3-amd64-debian - - get: anaconda3-amd64-alpine - - get: anaconda3-arm64-amazonlinux - - put: build manifest - params: - tag_file: docker-images/ci/anaconda-debian - manifests: - - arch: amd64 - os: linux - digest_file: anaconda3-amd64-debian/digest - - arch: amd64 - os: linux - digest_file: anaconda3-amd64-alpine/digest - - arch: arm64 - os: linux - digest_file: anaconda3-amazonlinux/digest diff --git a/ci/config.yaml b/ci/config.yaml deleted file mode 100644 index bfd28789..00000000 --- a/ci/config.yaml +++ /dev/null @@ -1,2 +0,0 @@ -recipe-repo-access-token: ((common.recipe-repo-access-token)) -dockerhub_password: ((docker-images.dockerhub_password)) diff --git a/ci/miniconda-alpine b/ci/miniconda-alpine deleted file mode 100644 index 887c446a..00000000 --- a/ci/miniconda-alpine +++ /dev/null @@ -1 +0,0 @@ -4.9.2-alpine diff --git a/ci/miniconda-debian b/ci/miniconda-debian deleted file mode 100644 index dad10c76..00000000 --- a/ci/miniconda-debian +++ /dev/null @@ -1 +0,0 @@ -4.9.2 diff --git a/miniconda3/alpine/Dockerfile b/miniconda3/alpine/Dockerfile deleted file mode 100644 index b7d95b83..00000000 --- a/miniconda3/alpine/Dockerfile +++ /dev/null @@ -1,26 +0,0 @@ -FROM frolvlad/alpine-glibc:alpine-3.17 - -LABEL maintainer="Anaconda, Inc" - -ENV PATH /opt/conda/bin:$PATH - -# Leave these args here to better use the Docker build cache -ARG CONDA_VERSION=py310_22.11.1-1 -ARG SHA256SUM=00938c3534750a0e4069499baf8f4e6dc1c2e471c86a59caa0dd03f4a9269db6 - -# hadolint ignore=DL3018 -RUN apk add -q --no-cache bash procps && \ - wget --quiet https://repo.anaconda.com/miniconda/Miniconda3-${CONDA_VERSION}-Linux-x86_64.sh -O miniconda.sh && \ - echo "${SHA256SUM} miniconda.sh" > miniconda.sha256 && \ - if ! sha256sum -cs miniconda.sha256; then exit 1; fi && \ - mkdir -p /opt && \ - sh miniconda.sh -b -p /opt/conda && \ - rm miniconda.sh miniconda.sha256 && \ - ln -s /opt/conda/etc/profile.d/conda.sh /etc/profile.d/conda.sh && \ - echo ". /opt/conda/etc/profile.d/conda.sh" >> ~/.bashrc && \ - echo "conda activate base" >> ~/.bashrc && \ - find /opt/conda/ -follow -type f -name '*.a' -delete && \ - find /opt/conda/ -follow -type f -name '*.js.map' -delete && \ - /opt/conda/bin/conda clean -afy - -CMD ["/bin/bash"] diff --git a/miniconda3/nanoserver/Dockerfile b/miniconda3/nanoserver/Dockerfile deleted file mode 100644 index b7419020..00000000 --- a/miniconda3/nanoserver/Dockerfile +++ /dev/null @@ -1,30 +0,0 @@ -FROM mcr.microsoft.com/windows/servercore:1809 AS buildbase - -WORKDIR /tmp - -# default and makes hadolint skip this intermediate container -SHELL [ "cmd", "/S", "/C" ] - -RUN powershell (New-Object System.Net.WebClient).DownloadFile('https://repo.anaconda.com/miniconda/Miniconda3-py39_4.10.3-Windows-x86_64.exe', 'Miniconda3.exe') && \ - powershell (Get-FileHash .\Miniconda3.exe).Hash -eq 'b33797064593ab2229a0135dc69001bea05cb56a20c2f243b1231213642e260a' && \ - powershell Unblock-File Miniconda3.exe && \ - Miniconda3.exe /InstallationType=JustMe /RegisterPython=1 /S /D=C:\Miniconda3 - -FROM mcr.microsoft.com/windows/nanoserver:1809 - -# default and makes hadolint skip this container -SHELL [ "cmd", "/S", "/C" ] - -COPY --from=buildbase C:/Miniconda3 C:/Miniconda3 - -USER ContainerAdministrator - -RUN C:\Miniconda3\Library\bin\conda init && \ - C:\Miniconda3\Library\bin\conda clean -afy - -# Test -RUN conda list && \ - conda create --name testenv numpy --dry-run && \ - conda clean -afy - -CMD ["cmd"] diff --git a/qa-images/s390x/README.md b/qa-images/s390x/README.md deleted file mode 100644 index 3116ae1c..00000000 --- a/qa-images/s390x/README.md +++ /dev/null @@ -1,17 +0,0 @@ -# `Dockerfile`s for creating test images for QA to use. - -Based on [anaconda-pkg-build](https://github.com/ContinuumIO/docker-images/blob/master/anaconda-pkg-build/linux/Dockerfile). - -## Build examples - -``` -docker build -f ubuntu.Dockerfile -t anaconda-qa/ubuntu20 . -docker build -f clefos.Dockerfile -t anaconda-qa/clefos7 . -``` - -## Run examples - -``` -docker run -it --rm anaconda-qa/ubuntu20 -docker run -it --rm anaconda-qa/clefos7 -``` \ No newline at end of file diff --git a/qa-images/s390x/clefos.Dockerfile b/qa-images/s390x/clefos.Dockerfile deleted file mode 100644 index 30e2a509..00000000 --- a/qa-images/s390x/clefos.Dockerfile +++ /dev/null @@ -1,72 +0,0 @@ -# Dockerfile for container images that Anaconda, Inc. used to provide test containers for QA. - -ARG BASEVERSION=7 - -FROM clefos:${BASEVERSION} - -# hadolint ignore=DL3031,DL3033 -RUN yum install -q -y deltarpm \ - # Hack to force locale generation, if needed - && yum update -q -y glibc-common \ - && yum install -q -y \ - #---------------------------------------- - # X11-related libraries needed for various CDTs - #---------------------------------------- - libX11 \ - libXau \ - libxcb \ - libXcomposite \ - libXcursor \ - libXdamage \ - libXdmcp \ - libXext \ - libXfixes \ - libXi \ - libXinerama \ - libXrandr \ - libXrender \ - libXScrnSaver \ - libXt \ - libXtst \ - #---------------------------------------- - # MESA 3D graphics library - #---------------------------------------- - #mesa-libEGL \ - #mesa-libGL \ - #mesa-libGLU \ - #---------------------------------------- - # X11 virtual framebuffer; useful for testing GUI apps - #---------------------------------------- - xorg-x11-server-Xvfb \ - #---------------------------------------- - # Other hardware and low-level system libraries - #---------------------------------------- - #alsa-lib \ - #libselinux \ - #pam \ - #pciutils-libs \ - #---------------------------------------- - # Low-level and basic system utilities. - # - # NOTE: previous versions of this image included tools like `patch` - # and `make`; these days, we prefer package recipes list the - # equivalent conda packages as build dependencies, rather than - # assume the build container provides these tools. - #---------------------------------------- - curl \ - file \ - net-tools \ - openssh-clients \ - psmisc \ - rsync \ - util-linux \ - #wget \ - which \ - && yum clean all - -# Set the locale -ENV LANG en_US.UTF-8 -ENV LANGUAGE en_US:en -ENV LC_ALL en_US.UTF-8 - -CMD [ "/bin/bash" ] diff --git a/qa-images/s390x/ubuntu.Dockerfile b/qa-images/s390x/ubuntu.Dockerfile deleted file mode 100644 index fd6f9bed..00000000 --- a/qa-images/s390x/ubuntu.Dockerfile +++ /dev/null @@ -1,71 +0,0 @@ -# Dockerfile for container images that Anaconda, Inc. used to provide test containers for QA. - -ARG BASEVERSION=20.04 - -FROM ubuntu:${BASEVERSION} - -# hadolint ignore=DL3008 -RUN apt-get update \ - # # Hack to force locale generation, if needed - && apt-get install -q -y --no-install-recommends locales locales-all \ - && apt-get install -q -y --no-install-recommends \ - #---------------------------------------- - # X11-related libraries needed for various CDTs - #---------------------------------------- - libx11-6 \ - libxau6 \ - libxcb1 \ - libxcomposite1 \ - libxcursor1 \ - libxdamage1 \ - libxdmcp6 \ - libxext6 \ - libxfixes3 \ - libxi6 \ - libxinerama1 \ - libxrandr2 \ - libxrender1 \ - libxss1 \ - libxt6 \ - libxtst6 \ - #---------------------------------------- - # MESA 3D graphics library - #---------------------------------------- - #mesa-libEGL \ - #mesa-libGL \ - #mesa-libGLU \ - #---------------------------------------- - # X11 virtual framebuffer; useful for testing GUI apps - #---------------------------------------- - xvfb \ - #---------------------------------------- - # Other hardware and low-level system libraries - #---------------------------------------- - #alsa-lib \ - #libselinux \ - #pam \ - #pciutils-libs \ - #---------------------------------------- - # Low-level and basic system utilities. - # - # NOTE: previous versions of this image included tools like `patch` - # and `make`; these days, we prefer package recipes list the - # equivalent conda packages as build dependencies, rather than - # assume the build container provides these tools. - #---------------------------------------- - curl \ - file \ - net-tools \ - openssh-client \ - psmisc \ - rsync \ - util-linux \ - && apt-get clean \ - && rm -rf /var/lib/apt/lists/* - -# Set the locale -ENV LANG en_US.UTF-8 -ENV LANGUAGE en_US:en -ENV LC_ALL en_US.UTF-8 - -CMD [ "/usr/bin/bash" ] diff --git a/scripts/build_anaconda.sh b/scripts/build_anaconda.sh deleted file mode 100644 index af1a47e0..00000000 --- a/scripts/build_anaconda.sh +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/bash - -set -o errtrace -o nounset -o pipefail -o errexit - -function usage { - echo -e "Usage: ./build_anaconda.sh -v version [-r repository] \n" - exit 1 -} -REPO="continuumio" - -while [[ $# -gt 0 ]] -do -key="$1" - -case ${key} in - -v|--version) - VERSION="$2" - shift - shift - ;; - -r|--repository) - REPO="$2" - shift - shift - ;; - *) - usage - ;; -esac -done - -cd .. - -echo "ANACONDA3 ALPINE" - -pushd anaconda3/alpine -docker build . -t "${REPO}/anaconda3:${VERSION}-alpine" -popd - -echo "ANACONDA3 DEBIAN" - -pushd anaconda3/debian -docker build . -t "${REPO}/anaconda3:${VERSION}" -t "${REPO}/anaconda3:latest" -popd diff --git a/scripts/conda_build_in_docker.sh b/scripts/conda_build_in_docker.sh deleted file mode 100755 index 885ce8d8..00000000 --- a/scripts/conda_build_in_docker.sh +++ /dev/null @@ -1,62 +0,0 @@ -#!/bin/bash - -set -o errtrace -o nounset -o pipefail -o errexit -x - -# -# This script allows you to build (linux) conda recipes with the only requirement that you have docker installed -# -# Examples -# -------- -# -# $ mkdir /tmp/conda_pkg -# $ ./conda_build_in_docker.sh ~/vc/conda-recipes/jinja2 /tmp/conda_pkg -# $ ls /tmp/conda_pkg -# jinja2-2.7.3-py27_0.tar.bz2 repodata.json repodata.json.bz2 -# -# You can also run the script with custom channels: -# -# $ ./conda_build_in_docker.sh ~/vc/conda-recipes/jinja2 /tmp/conda_pkg stuarteberg,asmeurer -# -# -# Notes -# ----- -# Your user need to be in the docker group (docker is not invoked with "sudo"). -# To add your user to the docker group you may write: -# -# $ sudo adduser $(whoami) docker -# -# TODO -# ---- -# Provide an mechanism to re-use package cache between -# invocations. Could be a 4th positional argument: -# and then -v $ABS_PKG_CACHE:/opt/conda/pkgs - -ABS_RECIPE_PATH=$(unset CDPATH && cd "$1" && echo "${PWD}") -ABS_OUTPUT_PATH=$(unset CDPATH && cd "$2" && echo "${PWD}") -CONDA_ENVS="" -# shellcheck disable=SC2154 -if [[ -n "${CONDA_PY}" ]]; then - CONDA_ENVS="${CONDA_ENVS} -e CONDA_PY" -fi -# shellcheck disable=SC2154 -if [[ -n "${CONDA_NPY}" ]]; then - CONDA_ENVS="${CONDA_ENVS} -e CONDA_NPY" -fi -# Since docker run as uid 0 by default we export our uid and gid and set ownership -# of files in our volume /output before exiting the container. -# shellcheck disable=SC2086,SC2312 -cat <<'EOF' | docker run --rm ${CONDA_ENVS} -e CONDA_CHANNELS="$3" -e HOST_UID="$(id -u)" -e HOST_GID="$(id -g)" -v "${ABS_RECIPE_PATH}:/recipe:ro" -v "${ABS_OUTPUT_PATH}:/output" -i continuumio/anaconda bash -x -set -o errtrace -o nounset -o pipefail -o errexit -IFS=',' read -a array <<< "$CONDA_CHANNELS" -for element in "${array[@]}" -do - conda config --add channels "$element" -done -conda info -conda config --set always_yes true -conda install patchelf -conda update -n root conda-build -conda build /recipe -cp `conda info --root`/conda-bld/linux-64/* /output -chown $HOST_GID:$HOST_UID /output/* -EOF