FROM python:3.12.3-alpine3.20@sha256:53cab1eabac71d6160eeabe09fd3144de789f75de62b9833e49f67534edc547e
COPY --from=koalaman/shellcheck:v0.10.0@sha256:2097951f02e735b613f4a34de20c40f937a6c8f18ecb170612c88c34517221fb /bin/shellcheck /bin/

# renovate: datasource=repology depName=alpine_3_20/build-base versioning=loose
ENV BUILD_BASE_VERSION="0.5-r3"
# renovate: datasource=repology depName=alpine_3_20/gcc versioning=loose
ENV GCC_VERSION="13.2.1_git20240309-r0"
# renovate: datasource=repology depName=alpine_3_20/ruby versioning=loose
ENV RUBY_VERSION="3.3.1-r0"
# renovate: datasource=repology depName=alpine_3_20/git versioning=loose
ENV GIT_VERSION="2.45.2-r0"
# renovate: datasource=repology depName=alpine_3_20/openssh-keygen versioning=loose
ENV OPENSSH_KEYGEN_VERSION="9.7_p1-r3"
# renovate: datasource=pypi depName=pre-commit versioning=pep440
ENV PRE_COMMIT_VERSION="3.7.1"
# renovate: datasource=rubygems depName=mdl versioning=ruby
ENV MDL_VERSION="0.13.0"

RUN apk add --update --no-cache \
      build-base="${BUILD_BASE_VERSION}" \
      gcc="${GCC_VERSION}" \
      ruby="${RUBY_VERSION}" \
      ruby-dev="${RUBY_VERSION}" \
      git="${GIT_VERSION}" \
      openssh-keygen="${OPENSSH_KEYGEN_VERSION}" \
    && \
    pip install --no-cache-dir pre-commit=="${PRE_COMMIT_VERSION}" && \
    gem install --no-document mdl -v "${MDL_VERSION}" && \
    mkdir /data && \
    git config --global --add safe.directory /data

WORKDIR /data