mirror of
https://github.com/cp2k/cp2k.git
synced 2026-07-27 21:55:16 -04:00
Docker: User build context for precommit test
This commit is contained in:
parent
e861a83b17
commit
74473a6d04
6 changed files with 112 additions and 76 deletions
|
|
@ -2,55 +2,13 @@ FROM ubuntu:20.04
|
|||
|
||||
# author: Ole Schuett
|
||||
|
||||
# Install clang-format, shellcheck, and other Ubuntu packages.
|
||||
# https://github.com/koalaman/shellcheck
|
||||
# https://clang.llvm.org/docs/ClangFormat.html
|
||||
RUN export DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true && \
|
||||
apt-get update -qq && apt-get install -qq --no-install-recommends \
|
||||
ca-certificates \
|
||||
clang-format \
|
||||
git \
|
||||
less \
|
||||
nano \
|
||||
npm \
|
||||
python3 \
|
||||
python3-pip \
|
||||
python3-wheel \
|
||||
python3-setuptools \
|
||||
shellcheck \
|
||||
wget \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Install markdownlint-cli and dependencies.
|
||||
# https://github.com/DavidAnson/markdownlint
|
||||
# https://github.com/igorshubovych/markdownlint-cli
|
||||
WORKDIR /opt/cp2k-precommit
|
||||
COPY package.json package-lock.json ./
|
||||
RUN npm install .
|
||||
RUN ln -s /opt/cp2k-precommit/node_modules/markdownlint-cli/markdownlint.js /usr/bin/markdownlint
|
||||
|
||||
# Install black, flask, gunicorn, and dependencies.
|
||||
# https://github.com/psf/black
|
||||
COPY requirements.txt .
|
||||
RUN pip3 install --quiet -r requirements.txt
|
||||
|
||||
# Install shfmt.
|
||||
# https://github.com/mvdan/sh
|
||||
RUN wget -q https://github.com/mvdan/sh/releases/download/v3.2.2/shfmt_v3.2.2_linux_amd64 && \
|
||||
echo '3a32a69286a19491a81fcd854154f0d886c379ff28d99e32d5594490b8bbef4b shfmt_v3.2.2_linux_amd64' | sha256sum --check && \
|
||||
chmod +x shfmt_v3.2.2_linux_amd64 && \
|
||||
ln -s /opt/cp2k-precommit/shfmt_v3.2.2_linux_amd64 /usr/bin/shfmt
|
||||
|
||||
# Clone cp2k repository (needed for CI mode).
|
||||
RUN git clone --quiet --recursive --single-branch -b master https://github.com/cp2k/cp2k.git /workspace/cp2k
|
||||
|
||||
# Install Flask app.
|
||||
COPY precommit_server.py .
|
||||
COPY . /opt/cp2k-precommit/
|
||||
RUN ./install_requirements.sh
|
||||
|
||||
ARG REVISION
|
||||
ENV REVISION=${REVISION}
|
||||
|
||||
COPY entrypoint.sh .
|
||||
CMD ["./entrypoint.sh"]
|
||||
CMD ["gunicorn", "--bind=:8080", "--workers=1", "--threads=8", "--timeout=0", "precommit_server:app"]
|
||||
|
||||
#EOF
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue