-
Notifications
You must be signed in to change notification settings - Fork 4
/
integrations-builder.Dockerfile
48 lines (43 loc) · 1.35 KB
/
integrations-builder.Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
ARG DATADOG_MAJOR_VERSION
ARG BASE_IMAGE_PREFIX=
FROM ${BASE_IMAGE_PREFIX}datadog-agent:${DATADOG_MAJOR_VERSION}-alpine
WORKDIR /wheels
RUN apk add --no-cache \
gcc \
g++ \
git \
libffi-dev \
libunwind-dev \
lz4-dev \
openssl-dev \
make \
musl-dev \
py3-aiohttp \
py3-bcrypt \
py3-cryptography \
py3-distlib \
py3-packaging \
py3-pynacl \
py3-pip \
python3-dev \
patchelf \
rustup
RUN rustup-init -y
RUN git clone --depth=1 https://github.com/DataDog/integrations-core.git /tmp/integrations-core \
&& cd /tmp/integrations-core \
&& git fetch --depth=1 origin refs/tags/${DATADOG_INTEGRATIONS_CORE_VERSION}:refs/tags/${DATADOG_INTEGRATIONS_CORE_VERSION} \
&& git checkout refs/tags/${DATADOG_INTEGRATIONS_CORE_VERSION} \
&& version() { apk info $1 2> /dev/null | sed -n 's/\S\+-\([0-9\.]\+\)-r[0-9]\+ description:/\1/p'; } \
&& . ${HOME}/.cargo/env \
&& python3 -m pip install \
aiohttp==$(version py3-aiohttp) \
bcrypt==$(version py3-bcrypt) \
cryptography==$(version py3-cryptography) \
distlib==$(version py3-distlib) \
packaging==$(version py3-packaging) \
pynacl==$(version py3-pynacl) \
pip==$(version py3-pip) \
"/tmp/integrations-core/datadog_checks_dev[cli]" \
"/tmp/integrations-core/ddev" \
&& rm -rf /tmp/integrations-core
CMD ["/bin/sh"]