2023-03-25 17:22:21 +00:00
|
|
|
FROM python:3.11-alpine@sha256:8af856dc9d9f8c6721f80ae6ca5e31184899f593bb77888c0b8da4772c1ec12f
|
2019-11-22 20:52:56 +00:00
|
|
|
|
2020-12-20 21:47:43 +00:00
|
|
|
LABEL maintainer="Robert Kaussow <mail@thegeeklab.de>"
|
|
|
|
LABEL org.opencontainers.image.authors="Robert Kaussow <mail@thegeeklab.de>"
|
|
|
|
LABEL org.opencontainers.image.title="molecule"
|
|
|
|
LABEL org.opencontainers.image.url="https://gitea.rknet.org/docker/molecule"
|
|
|
|
LABEL org.opencontainers.image.source="https://gitea.rknet.org/docker/molecule"
|
|
|
|
LABEL org.opencontainers.image.documentation="https://gitea.rknet.org/docker/molecule"
|
2019-11-22 20:52:56 +00:00
|
|
|
|
2020-10-18 20:20:24 +00:00
|
|
|
ARG ANSIBLE_VERSION
|
|
|
|
ARG BUILD_VERSION
|
|
|
|
|
|
|
|
# renovate: datasource=pypi depName=molecule
|
2022-12-09 22:16:18 +00:00
|
|
|
ENV MOLECULE_VERSION="${BUILD_VERSION:-4.0.4}"
|
2020-10-18 20:20:24 +00:00
|
|
|
# renovate: datasource=pypi depName=ansible
|
2023-03-13 08:04:15 +00:00
|
|
|
ENV ANSIBLE_VERSION="${ANSIBLE_VERSION:-7.3.0}"
|
2020-02-20 16:24:52 +00:00
|
|
|
|
2021-02-21 14:45:18 +00:00
|
|
|
ENV PY_COLORS=1
|
|
|
|
ENV CARGO_NET_GIT_FETCH_WITH_CLI=true
|
|
|
|
ENV ANSIBLE_FORCE_COLOR=true
|
|
|
|
ENV USER=root
|
|
|
|
ENV PATH=/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin
|
2019-11-22 20:52:56 +00:00
|
|
|
|
|
|
|
COPY overlay/ /
|
|
|
|
|
2021-02-21 14:45:18 +00:00
|
|
|
RUN apk add --update --no-cache --virtual .build-deps build-base libffi-dev musl-dev openssl-dev python3-dev cargo && \
|
2020-02-20 20:19:20 +00:00
|
|
|
apk add --update --no-cache git openssh-client && \
|
2021-02-10 10:13:51 +00:00
|
|
|
echo "Installing requirements ..." && \
|
|
|
|
pip install -qq --upgrade --no-cache-dir pip && \
|
|
|
|
pip install -qq --no-cache-dir -r /root/requirements.txt && \
|
2020-02-20 20:19:20 +00:00
|
|
|
echo "Installing ansible 'v$ANSIBLE_VERSION' ..." && \
|
2020-10-18 20:20:24 +00:00
|
|
|
pip install -qq --no-cache-dir ansible=="$ANSIBLE_VERSION" && \
|
2020-02-22 15:46:02 +00:00
|
|
|
MOLECULE_VERSION="${MOLECULE_VERSION##v}" && \
|
2020-02-20 20:19:20 +00:00
|
|
|
MOLECULE_MAJOR="${MOLECULE_VERSION%%.*}" && \
|
|
|
|
if [ -z "${MOLECULE_MAJOR//[0-9]}" ] && [ -n "$MOLECULE_MAJOR" ]; then \
|
2020-02-22 15:46:02 +00:00
|
|
|
echo "Installing molecule version '$MOLECULE_VERSION' ..." && \
|
2021-09-21 21:33:07 +00:00
|
|
|
pip install -qq --no-cache-dir molecule[docker,lint,test]=="$MOLECULE_VERSION"; \
|
2020-02-20 20:19:20 +00:00
|
|
|
else \
|
|
|
|
echo "Installing latest molecule ..." && \
|
2021-09-21 21:33:07 +00:00
|
|
|
pip install -qq --no-cache-dir molecule[docker,lint,test]; \
|
2020-02-20 20:19:20 +00:00
|
|
|
fi && \
|
|
|
|
apk del .build-deps && \
|
2019-11-22 20:52:56 +00:00
|
|
|
rm -rf /var/cache/apk/* && \
|
|
|
|
rm -rf /tmp/* && \
|
|
|
|
rm -rf /root/.cache/
|
|
|
|
|
|
|
|
USER root
|
|
|
|
CMD []
|
|
|
|
ENTRYPOINT ["/bin/molecule"]
|