| | |
| | |
| | |
| | |
| | |
| | ARG PY_3_14=3.14.2 |
| | ARG PY_3_13=3.13.11 |
| | ARG PY_3_12=3.12.12 |
| | ARG PY_3_11=3.11.14 |
| | ARG PY_3_10=3.10.19 |
| | ARG PY_3_9=3.9.24 |
| | |
| | ARG PYENV_VERSION=v2.6.16 |
| |
|
| | FROM ghcr.io/dependabot/dependabot-updater-core AS python-core |
| | ARG PY_3_14 |
| | ARG PY_3_13 |
| | ARG PY_3_12 |
| | ARG PY_3_11 |
| | ARG PY_3_10 |
| | ARG PY_3_9 |
| | ARG PYENV_VERSION |
| | USER root |
| |
|
| | COPY --chown=dependabot:dependabot python/helpers /opt/python/helpers |
| |
|
| | |
| | |
| | |
| | ENV PYENV_ROOT=/usr/local/.pyenv \ |
| | PATH="/usr/local/.pyenv/bin:$PATH" |
| | RUN mkdir -p "$PYENV_ROOT" && chown dependabot:dependabot "$PYENV_ROOT" |
| | USER dependabot |
| | ENV REQUESTS_CA_BUNDLE /etc/ssl/certs/ca-certificates.crt |
| | ENV SSL_CERT_FILE /etc/ssl/certs/ca-certificates.crt |
| | ENV DEPENDABOT_NATIVE_HELPERS_PATH="/opt" |
| | RUN git -c advice.detachedHead=false clone https://github.com/pyenv/pyenv.git --branch $PYENV_VERSION --single-branch --depth=1 /usr/local/.pyenv |
| |
|
| | |
| | |
| | |
| | |
| | RUN mkdir "${PYENV_ROOT}/versions" |
| |
|
| | |
| | |
| | |
| | FROM docker.io/library/python:$PY_3_9-bookworm AS upstream-python-3.9 |
| | FROM python-core AS python-3.9 |
| | ARG PYTHON_INSTALL_LOCATION="$PYENV_ROOT/versions/$PY_3_9" |
| | COPY --from=upstream-python-3.9 --chown=dependabot:dependabot /usr/local/bin $PYTHON_INSTALL_LOCATION/bin |
| | COPY --from=upstream-python-3.9 --chown=dependabot:dependabot /usr/local/include $PYTHON_INSTALL_LOCATION/include |
| | COPY --from=upstream-python-3.9 --chown=dependabot:dependabot /usr/local/lib $PYTHON_INSTALL_LOCATION/lib |
| | |
| | RUN find $PYTHON_INSTALL_LOCATION/bin -type f -exec sed -i "1s|^#!/usr/local/bin/python|#!$PYTHON_INSTALL_LOCATION/bin/python|" {} + |
| | |
| | RUN PYENV_VERSION=$PY_3_9 pyenv exec python --version | grep "Python $PY_3_9" || exit 1 |
| | RUN bash /opt/python/helpers/build $PY_3_9 |
| | |
| | RUN cd $PYENV_ROOT/versions \ |
| | && tar -acf $PY_3_9.tar.zst $PY_3_9 |
| |
|
| | |
| | |
| | |
| | FROM docker.io/library/python:$PY_3_10-bookworm AS upstream-python-3.10 |
| | FROM python-core AS python-3.10 |
| | ARG PYTHON_INSTALL_LOCATION="$PYENV_ROOT/versions/$PY_3_10" |
| | COPY --from=upstream-python-3.10 --chown=dependabot:dependabot /usr/local/bin $PYTHON_INSTALL_LOCATION/bin |
| | COPY --from=upstream-python-3.10 --chown=dependabot:dependabot /usr/local/include $PYTHON_INSTALL_LOCATION/include |
| | COPY --from=upstream-python-3.10 --chown=dependabot:dependabot /usr/local/lib $PYTHON_INSTALL_LOCATION/lib |
| | |
| | RUN find $PYTHON_INSTALL_LOCATION/bin -type f -exec sed -i "1s|^#!/usr/local/bin/python|#!$PYTHON_INSTALL_LOCATION/bin/python|" {} + |
| | |
| | RUN PYENV_VERSION=$PY_3_10 pyenv exec python --version | grep "Python $PY_3_10" || exit 1 |
| | RUN bash /opt/python/helpers/build $PY_3_10 |
| | |
| | RUN cd $PYENV_ROOT/versions \ |
| | && tar -acf $PY_3_10.tar.zst $PY_3_10 |
| |
|
| | |
| | |
| | |
| | FROM docker.io/library/python:$PY_3_11-bookworm AS upstream-python-3.11 |
| | FROM python-core AS python-3.11 |
| | ARG PYTHON_INSTALL_LOCATION="$PYENV_ROOT/versions/$PY_3_11" |
| | COPY --from=upstream-python-3.11 --chown=dependabot:dependabot /usr/local/bin $PYTHON_INSTALL_LOCATION/bin |
| | COPY --from=upstream-python-3.11 --chown=dependabot:dependabot /usr/local/include $PYTHON_INSTALL_LOCATION/include |
| | COPY --from=upstream-python-3.11 --chown=dependabot:dependabot /usr/local/lib $PYTHON_INSTALL_LOCATION/lib |
| | |
| | RUN find $PYTHON_INSTALL_LOCATION/bin -type f -exec sed -i "1s|^#!/usr/local/bin/python|#!${PYTHON_INSTALL_LOCATION}/bin/python|" {} + |
| | |
| | RUN PYENV_VERSION=$PY_3_11 pyenv exec python --version | grep "Python $PY_3_11" || exit 1 |
| | RUN bash /opt/python/helpers/build $PY_3_11 |
| | |
| | RUN cd $PYENV_ROOT/versions \ |
| | && tar -acf $PY_3_11.tar.zst $PY_3_11 |
| |
|
| | |
| | |
| | |
| | FROM docker.io/library/python:$PY_3_12-bookworm AS upstream-python-3.12 |
| | FROM python-core AS python-3.12 |
| | ARG PYTHON_INSTALL_LOCATION="$PYENV_ROOT/versions/$PY_3_12" |
| | COPY --from=upstream-python-3.12 --chown=dependabot:dependabot /usr/local/bin $PYTHON_INSTALL_LOCATION/bin |
| | COPY --from=upstream-python-3.12 --chown=dependabot:dependabot /usr/local/include $PYTHON_INSTALL_LOCATION/include |
| | COPY --from=upstream-python-3.12 --chown=dependabot:dependabot /usr/local/lib $PYTHON_INSTALL_LOCATION/lib |
| | |
| | RUN find $PYTHON_INSTALL_LOCATION/bin -type f -exec sed -i "1s|^#!/usr/local/bin/python|#!${PYTHON_INSTALL_LOCATION}/bin/python|" {} + |
| | |
| | RUN PYENV_VERSION=$PY_3_12 pyenv exec python --version | grep "Python $PY_3_12" || exit 1 |
| | RUN bash /opt/python/helpers/build $PY_3_12 |
| | |
| | RUN cd $PYENV_ROOT/versions \ |
| | && tar -acf $PY_3_12.tar.zst $PY_3_12 |
| |
|
| | |
| | |
| | |
| | FROM docker.io/library/python:$PY_3_13-bookworm AS upstream-python-3.13 |
| | FROM python-core AS python-3.13 |
| | ARG PYTHON_INSTALL_LOCATION="$PYENV_ROOT/versions/$PY_3_13" |
| | COPY --from=upstream-python-3.13 --chown=dependabot:dependabot /usr/local/bin $PYTHON_INSTALL_LOCATION/bin |
| | COPY --from=upstream-python-3.13 --chown=dependabot:dependabot /usr/local/include $PYTHON_INSTALL_LOCATION/include |
| | COPY --from=upstream-python-3.13 --chown=dependabot:dependabot /usr/local/lib $PYTHON_INSTALL_LOCATION/lib |
| | |
| | RUN find $PYTHON_INSTALL_LOCATION/bin -type f -exec sed -i "1s|^#!/usr/local/bin/python|#!${PYTHON_INSTALL_LOCATION}/bin/python|" {} + |
| | |
| | RUN PYENV_VERSION=$PY_3_13 pyenv exec python --version | grep "Python $PY_3_13" || exit 1 |
| | RUN bash /opt/python/helpers/build $PY_3_13 |
| | RUN cd $PYENV_ROOT/versions \ |
| | && tar -acf $PY_3_13.tar.zst $PY_3_13 |
| |
|
| | |
| | |
| | |
| | FROM docker.io/library/python:$PY_3_14-bookworm AS upstream-python-3.14 |
| | FROM python-core AS python-3.14 |
| | ARG PYTHON_INSTALL_LOCATION="$PYENV_ROOT/versions/$PY_3_14" |
| | COPY --from=upstream-python-3.14 --chown=dependabot:dependabot /usr/local/bin $PYTHON_INSTALL_LOCATION/bin |
| | COPY --from=upstream-python-3.14 --chown=dependabot:dependabot /usr/local/include $PYTHON_INSTALL_LOCATION/include |
| | COPY --from=upstream-python-3.14 --chown=dependabot:dependabot /usr/local/lib $PYTHON_INSTALL_LOCATION/lib |
| | |
| | RUN find $PYTHON_INSTALL_LOCATION/bin -type f -exec sed -i "1s|^#!/usr/local/bin/python|#!${PYTHON_INSTALL_LOCATION}/bin/python|" {} + |
| | |
| | RUN PYENV_VERSION=$PY_3_14 pyenv exec python --version | grep "Python $PY_3_14" || exit 1 |
| | RUN bash /opt/python/helpers/build $PY_3_14 |
| | |
| |
|
| | FROM python-core |
| | |
| | USER root |
| | RUN apt-get update \ |
| | && apt-get upgrade -y \ |
| | && apt-get install -y --no-install-recommends \ |
| | |
| | libcurl4-openssl-dev \ |
| | |
| | libmysqlclient-dev \ |
| | pkg-config \ |
| | |
| | libpq-dev \ |
| | |
| | tzdata \ |
| | |
| | libkrb5-dev \ |
| | |
| | libcairo2-dev \ |
| | libgirepository-2.0-dev \ |
| | && rm -rf /var/lib/apt/lists/* |
| |
|
| | USER dependabot |
| |
|
| | COPY --chown=dependabot:dependabot --parents python common $DEPENDABOT_HOME/ |
| | COPY --chown=dependabot:dependabot updater $DEPENDABOT_HOME/dependabot-updater |
| |
|
| | |
| | COPY --from=python-3.9 $PYENV_ROOT/versions/$PY_3_9.tar.zst $PYENV_ROOT/versions/$PY_3_9.tar.zst |
| | COPY --from=python-3.10 $PYENV_ROOT/versions/$PY_3_10.tar.zst $PYENV_ROOT/versions/$PY_3_10.tar.zst |
| | COPY --from=python-3.11 $PYENV_ROOT/versions/$PY_3_11.tar.zst $PYENV_ROOT/versions/$PY_3_11.tar.zst |
| | COPY --from=python-3.12 $PYENV_ROOT/versions/$PY_3_12.tar.zst $PYENV_ROOT/versions/$PY_3_12.tar.zst |
| | COPY --from=python-3.13 $PYENV_ROOT/versions/$PY_3_13.tar.zst $PYENV_ROOT/versions/$PY_3_13.tar.zst |
| | COPY --from=python-3.14 $PYENV_ROOT/versions/ $PYENV_ROOT/versions/ |
| |
|
| | |
| | COPY --from=python-3.14 /opt/python/ /opt/python/ |
| |
|
| | RUN pyenv global $PY_3_14 |
| |
|
| | USER root |
| |
|
| | |
| | ENV RUSTUP_HOME=/opt/rust \ |
| | CARGO_HOME=/opt/rust \ |
| | CARGO_REGISTRIES_CRATES_IO_PROTOCOL=sparse \ |
| | PATH="${PATH}:/opt/rust/bin" |
| | RUN mkdir -p "$RUSTUP_HOME" && chown dependabot:dependabot "$RUSTUP_HOME" |
| |
|
| | USER dependabot |
| |
|
| | COPY --from=rust /usr/local/rustup $RUSTUP_HOME |
| | COPY --from=rust /usr/local/cargo $CARGO_HOME |
| |
|
| | |
| | RUN mkdir -p ~/.cargo && printf "[net]\ngit-fetch-with-cli = true\n" >> ~/.cargo/config.toml |
| |
|
| | COPY --chown=dependabot:dependabot --parents cargo common $DEPENDABOT_HOME/ |
| |
|
| | COPY --chown=dependabot:dependabot updater $DEPENDABOT_HOME/dependabot-updater |
| |
|