mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-25 15:17:57 +00:00
[ci] Add build docker test-parachain for zombienet (#1327)
* [ci] Add build docker test-parachain for zombienet * debug ci * disable cancel pipeline * fix wrong rename * enable jobs * uncomment needs * fixes
This commit is contained in:
committed by
GitHub
parent
7f2e6a157b
commit
3e8a5465cf
+48
-9
@@ -171,19 +171,32 @@ build-linux-stable:
|
||||
- echo "___The VERSION is either a tag name or the curent branch if triggered not by a tag___"
|
||||
- echo ${CI_COMMIT_REF_NAME} | tee ./artifacts/VERSION
|
||||
|
||||
build-test-parachain:
|
||||
stage: build
|
||||
<<: *docker-env
|
||||
<<: *collect-artifacts
|
||||
variables:
|
||||
# Enable debug assertions since we are running optimized builds for testing
|
||||
# but still want to have debug assertions.
|
||||
RUSTFLAGS: "-Cdebug-assertions=y -Dwarnings"
|
||||
# this is an artificial job dependency, for pipeline optimization using GitLab's DAGs
|
||||
needs:
|
||||
- job: check-rustdoc
|
||||
artifacts: false
|
||||
script:
|
||||
- echo "___Building a binary, please refrain from using it in production since it goes with the debug assertions.___"
|
||||
- time cargo +nightly build --release --locked --bin test-parachain
|
||||
- echo "___Packing the artifacts___"
|
||||
- mkdir -p ./artifacts
|
||||
- mv ./target/release/test-parachain ./artifacts/.
|
||||
|
||||
#### stage: publish
|
||||
|
||||
build-push-image:
|
||||
stage: publish
|
||||
<<: *kubernetes-env
|
||||
<<: *common-refs
|
||||
.build-push-image: &build-push-image
|
||||
image: quay.io/buildah/stable
|
||||
needs:
|
||||
- job: build-linux-stable
|
||||
artifacts: true
|
||||
variables:
|
||||
DOCKERFILE: "docker/polkadot-parachain-debug_unsigned_injected.Dockerfile"
|
||||
IMAGE_NAME: docker.io/paritypr/polkadot-parachain-debug
|
||||
DOCKERFILE: "" # docker/path-to.Dockerfile
|
||||
IMAGE_NAME: "" # docker.io/paritypr/image_name
|
||||
VERSION: "${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHORT_SHA}"
|
||||
script:
|
||||
- test "$PARITYPR_USER" -a "$PARITYPR_PASS" ||
|
||||
@@ -202,6 +215,32 @@ build-push-image:
|
||||
after_script:
|
||||
- buildah logout --all
|
||||
|
||||
build-push-image-polkadot-parachain-debug:
|
||||
stage: publish
|
||||
<<: *kubernetes-env
|
||||
<<: *common-refs
|
||||
<<: *build-push-image
|
||||
needs:
|
||||
- job: build-linux-stable
|
||||
artifacts: true
|
||||
variables:
|
||||
DOCKERFILE: "docker/polkadot-parachain-debug_unsigned_injected.Dockerfile"
|
||||
IMAGE_NAME: "docker.io/paritypr/polkadot-parachain-debug"
|
||||
VERSION: "${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHORT_SHA}"
|
||||
|
||||
build-push-image-test-parachain:
|
||||
stage: publish
|
||||
<<: *kubernetes-env
|
||||
<<: *common-refs
|
||||
<<: *build-push-image
|
||||
needs:
|
||||
- job: build-test-parachain
|
||||
artifacts: true
|
||||
variables:
|
||||
DOCKERFILE: "docker/test-parachain_injected.Dockerfile"
|
||||
IMAGE_NAME: "docker.io/paritypr/test-parachain"
|
||||
VERSION: "${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHORT_SHA}"
|
||||
|
||||
publish-s3:
|
||||
stage: publish
|
||||
<<: *kubernetes-env
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
FROM docker.io/library/ubuntu:20.04
|
||||
|
||||
# metadata
|
||||
ARG VCS_REF
|
||||
ARG BUILD_DATE
|
||||
ARG IMAGE_NAME
|
||||
|
||||
LABEL io.parity.image.authors="devops-team@parity.io" \
|
||||
io.parity.image.vendor="Parity Technologies" \
|
||||
io.parity.image.title="${IMAGE_NAME}" \
|
||||
io.parity.image.description="Test parachain for Zombienet" \
|
||||
io.parity.image.source="https://github.com/paritytech/cumulus/blob/${VCS_REF}/docker/test-parachain_injected.Dockerfile" \
|
||||
io.parity.image.revision="${VCS_REF}" \
|
||||
io.parity.image.created="${BUILD_DATE}" \
|
||||
io.parity.image.documentation="https://github.com/paritytech/cumulus/"
|
||||
|
||||
# show backtraces
|
||||
ENV RUST_BACKTRACE 1
|
||||
|
||||
# install tools and dependencies
|
||||
RUN apt-get update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get install -y \
|
||||
libssl1.1 \
|
||||
ca-certificates \
|
||||
curl && \
|
||||
# apt cleanup
|
||||
apt-get autoremove -y && \
|
||||
apt-get clean && \
|
||||
find /var/lib/apt/lists/ -type f -not -name lock -delete; \
|
||||
# add user and link ~/.local/share/test-parachain to /data
|
||||
useradd -m -u 10000 -U -s /bin/sh -d /test-parachain test-parachain && \
|
||||
mkdir -p /data /test-parachain/.local/share && \
|
||||
chown -R test-parachain:test-parachain /data && \
|
||||
ln -s /data /test-parachain/.local/share/test-parachain && \
|
||||
mkdir -p /specs
|
||||
|
||||
# add test-parachain binary to the docker image
|
||||
COPY ./artifacts/test-parachain /usr/local/bin
|
||||
COPY ./parachains/chain-specs/*.json /specs/
|
||||
|
||||
USER test-parachain
|
||||
|
||||
# check if executable works in this container
|
||||
RUN /usr/local/bin/test-parachain --version
|
||||
|
||||
EXPOSE 30333 9933 9944
|
||||
VOLUME ["/test-parachain"]
|
||||
|
||||
ENTRYPOINT ["/usr/local/bin/test-parachain"]
|
||||
Reference in New Issue
Block a user