Merge branch '21999-packer-fixes'
[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 FROM debian:bullseye-slim
14 MAINTAINER Arvados Package Maintainers <packaging@arvados.org>
15
16 RUN DEBIAN_FRONTEND=noninteractive apt-get update -q && apt-get install -qy --no-install-recommends \
17     git python3-dev python3-venv libcurl4-gnutls-dev libgnutls28-dev nodejs build-essential
18
19 RUN python3 -m venv /opt/arvados-py
20 ENV PATH=/opt/arvados-py/bin:/usr/local/bin:/usr/bin:/bin
21 RUN python3 -m pip install --no-cache-dir setuptools wheel
22
23 # The build script sets up our build context with all the Python source
24 # packages to install.
25 COPY . /usr/local/src/
26 # Run a-c-r afterward to check for a successful install.
27 RUN python3 -m pip install --no-cache-dir /usr/local/src/* && arvados-cwl-runner --version && crunchstat-summary --version
28
29 RUN /usr/sbin/adduser --disabled-password \
30       --gecos 'Crunch execution user' crunch && \
31     /usr/bin/install --directory --owner=crunch --group=crunch --mode=0700 /keep /tmp/crunch-src /tmp/crunch-job
32
33 USER crunch