mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-12 19:21:13 +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 "___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
|
- 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
|
#### stage: publish
|
||||||
|
|
||||||
build-push-image:
|
.build-push-image: &build-push-image
|
||||||
stage: publish
|
|
||||||
<<: *kubernetes-env
|
|
||||||
<<: *common-refs
|
|
||||||
image: quay.io/buildah/stable
|
image: quay.io/buildah/stable
|
||||||
needs:
|
|
||||||
- job: build-linux-stable
|
|
||||||
artifacts: true
|
|
||||||
variables:
|
variables:
|
||||||
DOCKERFILE: "docker/polkadot-parachain-debug_unsigned_injected.Dockerfile"
|
DOCKERFILE: "" # docker/path-to.Dockerfile
|
||||||
IMAGE_NAME: docker.io/paritypr/polkadot-parachain-debug
|
IMAGE_NAME: "" # docker.io/paritypr/image_name
|
||||||
VERSION: "${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHORT_SHA}"
|
VERSION: "${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHORT_SHA}"
|
||||||
script:
|
script:
|
||||||
- test "$PARITYPR_USER" -a "$PARITYPR_PASS" ||
|
- test "$PARITYPR_USER" -a "$PARITYPR_PASS" ||
|
||||||
@@ -202,6 +215,32 @@ build-push-image:
|
|||||||
after_script:
|
after_script:
|
||||||
- buildah logout --all
|
- 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:
|
publish-s3:
|
||||||
stage: publish
|
stage: publish
|
||||||
<<: *kubernetes-env
|
<<: *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