diff --git a/Dockerfile b/Dockerfile index 4bbdc4b9f4dc540eb030baa610ae159383709939..fe3fe69bef436c3fd5a3f653558dfda5abc401cf 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,19 +1,21 @@ FROM registry.cyberbrain.pw/docker/alpine:latest AS builder -ARG ANSIBLE_VERSION +ARG ANSIBLE_BUILD_DEPENDENCIES +ARG ANSIBLE_PACKAGES ENV PATH="/opt/ansible/bin:$PATH" RUN apk --no-cache add python3 && \ - apk --no-cache add --virtual build-dependencies musl-dev python3-dev libffi-dev openssl-dev yaml-dev cargo && \ + apk --no-cache add --virtual build-dependencies ${ANSIBLE_BUILD_DEPENDENCIES} && \ python3 -m venv /opt/ansible && \ pip3 install --ignore-installed --no-cache-dir --upgrade pip setuptools wheel && \ - export ANSIBLE_PACKAGES="pyyaml ansible-lint mitogen jmespath pywinrm patch hvac" && \ - ( test -z $ANSIBLE_VERSION && pip install --ignore-installed --no-cache-dir ansible ${ANSIBLE_PACKAGES} || pip install --ignore-installed --no-cache-dir ansible\<=$ANSIBLE_VERSION ${ANSIBLE_PACKAGES} ) && \ + pip3 install --ignore-installed --no-cache-dir ansible ${ANSIBLE_PACKAGES} && \ #apk del build-dependencies && \ rm -rf /var/cache/apk/* FROM registry.cyberbrain.pw/docker/alpine:latest AS runtime +ARG ANSIBLE_RUNTIME_DEPENDENCIES ENV PATH="/opt/ansible/bin:$PATH" WORKDIR /srv/ansible -RUN apk --no-cache add python3 yaml openssl ca-certificates sshpass openssh-client rsync git && \ +RUN apk --no-cache add python3 && \ + apk --no-cache add ${ANSIBLE_RUNTIME_DEPENDENCIES} && \ rm -rf /var/cache/apk/* COPY --from=builder /opt/ansible /opt/ansible CMD [ "ansible", "--version" ]