Improve CI #153
3 changed files with 38 additions and 36 deletions
|
@ -26,10 +26,38 @@ RUN set -eux; \
|
||||||
--accept-license \
|
--accept-license \
|
||||||
splat \
|
splat \
|
||||||
--output /xwin; \
|
--output /xwin; \
|
||||||
rm -rf \
|
# Even though this build step only exists temporary, to copy the
|
||||||
/root/.xwin-cache;
|
# final data out of, it still generates a cache entry on the Docker host.
|
||||||
|
# And to keep that to a minimum, we still delete the stuff we don't need.
|
||||||
|
rm -rf /root/.xwin-cache;
|
||||||
|
|
||||||
FROM dtmt-ci-base-linux as final
|
FROM rust:slim-bullseye as linux
|
||||||
|
|
||||||
|
RUN set -eux; \
|
||||||
|
apt-get update; \
|
||||||
|
apt-get install --no-install-recommends -y \
|
||||||
|
build-essential \
|
||||||
|
curl \
|
||||||
|
git \
|
||||||
|
gpg \
|
||||||
|
jq \
|
||||||
|
libatk1.0-dev \
|
||||||
|
libclang-13-dev \
|
||||||
|
libglib2.0-dev \
|
||||||
|
libgtk-3-dev \
|
||||||
|
libpango1.0-dev \
|
||||||
|
libssl-dev \
|
||||||
|
libzstd-dev \
|
||||||
|
pkg-config; \
|
||||||
|
apt-get remove -y --auto-remove; \
|
||||||
|
rm -rf /var/lib/apt/lists/*; \
|
||||||
|
rustup default nightly
|
||||||
|
|
||||||
|
WORKDIR /src/dtmt
|
||||||
|
|
||||||
|
COPY lib/oodle/*.so lib/oodle/*.a /src/
|
||||||
|
|
||||||
|
FROM linux as msvc
|
||||||
|
|
||||||
ENV KEYRINGS /usr/local/share/keyrings
|
ENV KEYRINGS /usr/local/share/keyrings
|
||||||
|
|
|
@ -1,25 +0,0 @@
|
||||||
FROM rust:slim-bullseye
|
|
||||||
|
|
||||||
RUN set -eux; \
|
|
||||||
apt-get update; \
|
|
||||||
apt-get install --no-install-recommends -y \
|
|
||||||
build-essential \
|
|
||||||
curl \
|
|
||||||
git \
|
|
||||||
gpg \
|
|
||||||
jq \
|
|
||||||
libatk1.0-dev \
|
|
||||||
libclang-13-dev \
|
|
||||||
libglib2.0-dev \
|
|
||||||
libgtk-3-dev \
|
|
||||||
libpango1.0-dev \
|
|
||||||
libssl-dev \
|
|
||||||
libzstd-dev \
|
|
||||||
pkg-config; \
|
|
||||||
apt-get remove -y --auto-remove; \
|
|
||||||
rm -rf /var/lib/apt/lists/*; \
|
|
||||||
rustup default nightly
|
|
||||||
|
|
||||||
WORKDIR /src/dtmt
|
|
||||||
|
|
||||||
COPY lib/oodle/*.so lib/oodle/*.a /src/
|
|
15
Justfile
15
Justfile
|
@ -16,16 +16,15 @@ build-image-msvc:
|
||||||
build-image-linux:
|
build-image-linux:
|
||||||
docker build -f .ci/Dockerfile.linux .
|
docker build -f .ci/Dockerfile.linux .
|
||||||
|
|
||||||
ci-image: ci-image-msvc ci-image-linux
|
ci-image:
|
||||||
|
# The MSVC image depends on the Linux image. So by building that first,
|
||||||
ci-image-msvc:
|
# we actually build both, and cache them, so that "building" the
|
||||||
docker build -t dtmt-ci-base-msvc -f .ci/image/Dockerfile.msvc .
|
# Linux image afterwards merely needs to pull the cache.
|
||||||
|
docker build --target msvc -t dtmt-ci-base-msvc -f .ci/image/Dockerfile .
|
||||||
|
docker build --target linux -t dtmt-ci-base-linux -f .ci/image/Dockerfile .
|
||||||
docker tag dtmt-ci-base-msvc registry.sclu1034.dev/dtmt-ci-base-msvc
|
docker tag dtmt-ci-base-msvc registry.sclu1034.dev/dtmt-ci-base-msvc
|
||||||
docker push registry.sclu1034.dev/dtmt-ci-base-msvc
|
|
||||||
|
|
||||||
ci-image-linux:
|
|
||||||
docker build -t dtmt-ci-base-linux -f .ci/image/Dockerfile.linux .
|
|
||||||
docker tag dtmt-ci-base-linux registry.sclu1034.dev/dtmt-ci-base-linux
|
docker tag dtmt-ci-base-linux registry.sclu1034.dev/dtmt-ci-base-linux
|
||||||
|
docker push registry.sclu1034.dev/dtmt-ci-base-msvc
|
||||||
docker push registry.sclu1034.dev/dtmt-ci-base-linux
|
docker push registry.sclu1034.dev/dtmt-ci-base-linux
|
||||||
|
|
||||||
set-base-pipeline:
|
set-base-pipeline:
|
||||||
|
|
Loading…
Add table
Reference in a new issue