18766: because our Ubuntu 18.04 Python packages now depend on
[arvados.git] / docker / jobs / Dockerfile
index 29c9d540b5f402828178586471dadd51a707a2cc..1b75e13420bce8bf77b3d4942705ce726e5a8e6e 100644 (file)
@@ -1,22 +1,37 @@
-FROM arvados/base
-MAINTAINER Brett Smith <brett@curoverse.com>
+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: Apache-2.0
+
+# Based on Debian
+FROM debian:buster-slim
+MAINTAINER Arvados Package Maintainers <packaging@arvados.org>
+
+ENV DEBIAN_FRONTEND noninteractive
+
+RUN apt-get update -q
+RUN apt-get install -yq --no-install-recommends gnupg
+
+ARG repo_version
+RUN echo repo_version $repo_version
+ADD apt.arvados.org-$repo_version.list /etc/apt/sources.list.d/
+
+ADD 1078ECD7.key /tmp/
+RUN cat /tmp/1078ECD7.key | apt-key add -
+
+ARG python_sdk_version
+ARG cwl_runner_version
+RUN echo cwl_runner_version $cwl_runner_version python_sdk_version $python_sdk_version
+
+RUN apt-get update -q
+RUN apt-get install -yq --no-install-recommends python3-arvados-cwl-runner=$cwl_runner_version
+
+# use the Python executable from the python-arvados-cwl-runner package
+RUN PYTHON=`ls /usr/share/python3*/dist/python3-arvados-cwl-runner/bin/python|head -n1` && rm -f /usr/bin/python && ln -s $PYTHON /usr/bin/python
+RUN PYTHON3=`ls /usr/share/python3*/dist/python3-arvados-cwl-runner/bin/python3|head -n1` && rm -f /usr/bin/python3 && ln -s $PYTHON3 /usr/bin/python3
 
 # Install dependencies and set up system.
-# The FUSE packages help ensure that we can install the Python SDK (arv-mount).
-RUN /usr/bin/apt-get install -q -y python-dev python-llfuse python-pip \
-      libio-socket-ssl-perl libjson-perl liburi-perl libwww-perl \
-      fuse libattr1-dev libfuse-dev && \
-    /usr/sbin/adduser --disabled-password \
+RUN /usr/sbin/adduser --disabled-password \
       --gecos 'Crunch execution user' crunch && \
-    /usr/bin/install -d -o crunch -g crunch -m 0700 /tmp/crunch-job && \
-    /bin/ln -s /usr/src/arvados /usr/local/src/arvados
-
-# Install Arvados packages.
-RUN find /usr/src/arvados/sdk -name '*.gem' -print0 | \
-      xargs -0rn 1 gem install && \
-    cd /usr/src/arvados/services/fuse && \
-    python setup.py install && \
-    cd /usr/src/arvados/sdk/python && \
-    python setup.py install
+    /usr/bin/install --directory --owner=crunch --group=crunch --mode=0700 /keep /tmp/crunch-src /tmp/crunch-job
 
 USER crunch