blob: 9e6ada1e9b0724744adcdf5def3ec29955c04d82 [file] [log] [blame]
David Crawshawb7a06632025-05-05 09:52:20 -07001FROM ghcr.io/boldsoftware/sketch:f5b4ebd9ca15d3dbd2cd08e6e7ab9548
David Crawshawbe10fa92025-04-18 01:16:00 -07002
Earl Lee2e463fb2025-04-17 11:22:22 -07003ARG GIT_USER_EMAIL
4ARG GIT_USER_NAME
5
6RUN git config --global user.email "$GIT_USER_EMAIL" && \
David Crawshawca535582025-05-03 13:04:34 -07007 git config --global user.name "$GIT_USER_NAME" && \
8 git config --global http.postBuffer 524288000
Earl Lee2e463fb2025-04-17 11:22:22 -07009
David Crawshaw8fd51042025-05-05 12:52:43 -070010LABEL sketch_context="79b4c82f0c892e5f79900afb235c0ab50044626be5d6d43b774f6f5da9537800"
Earl Lee2e463fb2025-04-17 11:22:22 -070011COPY . /app
David Crawshaw8fd51042025-05-05 12:52:43 -070012RUN rm -f /app/tmp-sketch-dockerfile
Earl Lee2e463fb2025-04-17 11:22:22 -070013
14WORKDIR /app
15RUN if [ -f go.mod ]; then go mod download; fi
16
David Crawshawb7a06632025-05-05 09:52:20 -070017# Switch to lenient shell so we are more likely to get past failing extra_cmds.
18SHELL ["/bin/bash", "-uo", "pipefail", "-c"]
19
David Crawshaw8fd51042025-05-05 12:52:43 -070020# Install Python 3.11 (if not already the default version) and set it up
David Crawshawfa67fe52025-05-01 20:42:08 +000021RUN apt-get update && \
David Crawshaw8fd51042025-05-05 12:52:43 -070022 apt-get install -y --no-install-recommends python3.11 python3.11-venv python3-pip || true && \
23 update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.11 1 || true && \
24 apt-get clean && \
David Crawshawfa67fe52025-05-01 20:42:08 +000025 rm -rf /var/lib/apt/lists/*
Josh Bleecher Snyderc76a3922025-05-01 01:18:56 +000026
David Crawshaw8fd51042025-05-05 12:52:43 -070027# Install DVC tool as mentioned in README
28RUN pip3 install dvc || true
29
David Crawshawb7a06632025-05-05 09:52:20 -070030# Switch back to strict shell after extra_cmds.
31SHELL ["/bin/bash", "-euxo", "pipefail", "-c"]
David Crawshaw11129492025-04-25 20:41:53 -070032
33CMD ["/bin/sketch"]