39 lines
1.8 KiB
Docker
39 lines
1.8 KiB
Docker
FROM python:3.12.4-alpine3.20@sha256:a982997504b8ec596f553d78f4de4b961bbdf5254e0177f6e99bb34f4ef16f95
|
|
COPY --from=koalaman/shellcheck:v0.10.0@sha256:2097951f02e735b613f4a34de20c40f937a6c8f18ecb170612c88c34517221fb /bin/shellcheck /usr/bin/
|
|
COPY --from=ghcr.io/gitleaks/gitleaks:v8.18.4@sha256:f44e526acc67786b7476db413edb993ce2d152660d32fb3eb48d9bca06fa83f8 /usr/bin/gitleaks /usr/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 mkdir /data /tmp/pre-commit
|
|
COPY .pre-commit-config.yaml /tmp/pre-commit
|
|
|
|
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}" && \
|
|
git config --global --add safe.directory /data && \
|
|
cd /tmp/pre-commit && \
|
|
git init --initial-branch main && \
|
|
pre-commit install --install-hooks && \
|
|
rm -rf /tmp/pre-commit
|
|
|
|
WORKDIR /data
|