11789: Merge branch 'master' into 11789-arvput-exclude-flag
[arvados.git] / sdk / dev-jobs.dockerfile
1 # Copyright (C) The Arvados Authors. All rights reserved.
2 #
3 # SPDX-License-Identifier: Apache-2.0
4
5 # Dockerfile for building an arvados/jobs Docker image from local git tree.
6 #
7 # Intended for use by developers working on arvados-python-client or
8 # arvados-cwl-runner and need to run a crunch job with a custom package
9 # version.
10 #
11 # Use arvados/build/build-dev-docker-jobs-image.sh to build.
12 #
13 # (This dockerfile file must be located in the arvados/sdk/ directory because
14 #  of the docker build root.)
15
16 FROM debian:jessie
17 MAINTAINER Ward Vandewege <ward@curoverse.com>
18
19 ENV DEBIAN_FRONTEND noninteractive
20
21 RUN apt-get update -q && apt-get install -qy git python-pip python-virtualenv python-dev libcurl4-gnutls-dev libgnutls28-dev nodejs python-pyasn1-modules
22
23 RUN pip install -U setuptools
24
25 ARG sdk
26 ARG runner
27 ARG cwltool
28
29 ADD python/dist/$sdk /tmp/
30 ADD cwl/cwltool_dist/$cwltool /tmp/
31 ADD cwl/dist/$runner /tmp/
32
33 RUN cd /tmp/arvados-python-client-* && python setup.py install
34 RUN if test -d /tmp/cwltool-* ; then cd /tmp/cwltool-* && python setup.py install ; fi
35 RUN cd /tmp/arvados-cwl-runner-* && python setup.py install
36
37 # Install dependencies and set up system.
38 RUN /usr/sbin/adduser --disabled-password \
39       --gecos 'Crunch execution user' crunch && \
40     /usr/bin/install --directory --owner=crunch --group=crunch --mode=0700 /keep /tmp/crunch-src /tmp/crunch-job
41
42 USER crunch