FROM python:3.12-alpine@sha256:ae35274f417fc81ba6ee1fc84206e8517f28117566ee6a04a64f004c1409bdac LABEL maintainer="Robert Kaussow " LABEL org.opencontainers.image.authors="Robert Kaussow " 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" ARG ANSIBLE_VERSION ARG BUILD_VERSION # renovate: datasource=pypi depName=molecule ENV MOLECULE_VERSION="${BUILD_VERSION:-6.0.2}" # renovate: datasource=pypi depName=ansible ENV ANSIBLE_VERSION="${ANSIBLE_VERSION:-8.3.0}" 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 COPY overlay/ / RUN apk add --update --no-cache --virtual .build-deps build-base libffi-dev musl-dev openssl-dev python3-dev cargo && \ apk add --update --no-cache git openssh-client && \ echo "Installing requirements ..." && \ pip install -qq --upgrade --no-cache-dir pip && \ pip install -qq --no-cache-dir -r /root/requirements.txt && \ echo "Installing ansible 'v$ANSIBLE_VERSION' ..." && \ pip install -qq --no-cache-dir ansible=="$ANSIBLE_VERSION" && \ MOLECULE_VERSION="${MOLECULE_VERSION##v}" && \ MOLECULE_MAJOR="${MOLECULE_VERSION%%.*}" && \ if [ -z "${MOLECULE_MAJOR//[0-9]}" ] && [ -n "$MOLECULE_MAJOR" ]; then \ echo "Installing molecule version '$MOLECULE_VERSION' ..." && \ pip install -qq --no-cache-dir molecule=="$MOLECULE_VERSION" molecule-plugins[docker]; \ else \ echo "Installing latest molecule ..." && \ pip install -qq --no-cache-dir molecule molecule-plugins[docker]; \ fi && \ apk del .build-deps && \ rm -rf /var/cache/apk/* && \ rm -rf /tmp/* && \ rm -rf /root/.cache/ USER root CMD [] ENTRYPOINT ["/bin/molecule"]