]> git.proxmox.com Git - libgit2.git/blob - azure-pipelines/docker/xenial
Prep for unstable release
[libgit2.git] / azure-pipelines / docker / xenial
1 ARG BASE
2 FROM $BASE AS apt
3 RUN apt-get update && \
4 DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
5 bzip2 \
6 clang \
7 cmake \
8 curl \
9 gcc \
10 git \
11 krb5-user \
12 libcurl4-gnutls-dev \
13 libgcrypt20-dev \
14 libkrb5-dev \
15 libpcre3-dev \
16 libssl-dev \
17 libz-dev \
18 make \
19 ninja-build \
20 openjdk-8-jre-headless \
21 openssh-server \
22 openssl \
23 pkgconf \
24 python \
25 sudo \
26 valgrind \
27 && \
28 rm -rf /var/lib/apt/lists/*
29
30 FROM apt AS mbedtls
31 RUN cd /tmp && \
32 curl --location --silent https://tls.mbed.org/download/mbedtls-2.16.2-apache.tgz | \
33 tar -xz && \
34 cd mbedtls-2.16.2 && \
35 scripts/config.pl set MBEDTLS_MD4_C 1 && \
36 CFLAGS=-fPIC cmake -G Ninja -DENABLE_PROGRAMS=OFF -DENABLE_TESTING=OFF -DUSE_SHARED_MBEDTLS_LIBRARY=OFF -DUSE_STATIC_MBEDTLS_LIBRARY=ON . && \
37 ninja install && \
38 cd .. && \
39 rm -rf mbedtls-2.16.2
40
41 FROM mbedtls AS libssh2
42 RUN cd /tmp && \
43 curl --location --silent https://www.libssh2.org/download/libssh2-1.8.2.tar.gz | \
44 tar -xz && \
45 cd libssh2-1.8.2 && \
46 CFLAGS=-fPIC cmake -G Ninja -DBUILD_SHARED_LIBS=ON -DCRYPTO_BACKEND=Libgcrypt . && \
47 ninja install && \
48 cd .. && \
49 rm -rf libssh2-1.8.2
50
51 FROM libssh2 AS valgrind
52 RUN cd /tmp && \
53 curl --location --silent https://sourceware.org/pub/valgrind/valgrind-3.15.0.tar.bz2 | \
54 tar -xj && \
55 cd valgrind-3.15.0 && \
56 ./configure && \
57 make && \
58 make install && \
59 cd .. && \
60 rm -rf valgrind-3.15.0
61
62 FROM valgrind AS configure
63 COPY entrypoint.sh /usr/local/bin/entrypoint.sh
64 RUN chmod a+x /usr/local/bin/entrypoint.sh
65 RUN mkdir /var/run/sshd
66
67 ENTRYPOINT ["/usr/local/bin/entrypoint.sh"]