difftreelog
Merge pull request #931 from UniqueNetwork/ci/chainql-to-dot-env
in: master
chainql in env file
6 files changed
.docker/Dockerfile-chainql.j2diffbeforeafterboth--- /dev/null
+++ b/.docker/Dockerfile-chainql.j2
@@ -0,0 +1,40 @@
+# ===== Rust builder =====
+FROM ubuntu:22.04 as rust-builder
+LABEL maintainer="Unique.Network"
+
+ENV CARGO_HOME="/cargo-home"
+ENV PATH="/cargo-home/bin:$PATH"
+ENV TZ=UTC
+RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
+
+RUN apt-get update && \
+ apt-get install -y curl cmake pkg-config libssl-dev git clang llvm libudev-dev protobuf-compiler && \
+ apt-get clean && \
+ rm -r /var/lib/apt/lists/*
+
+RUN curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain none
+
+RUN rustup toolchain uninstall $(rustup toolchain list) && \
+ rustup toolchain install {{ RUST_TOOLCHAIN }} && \
+ rustup default {{ RUST_TOOLCHAIN }} && \
+ rustup target list --installed && \
+ rustup show
+RUN rustup target add wasm32-unknown-unknown --toolchain {{ RUST_TOOLCHAIN }}
+
+RUN mkdir /unique_parachain
+WORKDIR /unique_parachain
+
+# ===== BUILD CHAINQL =====
+FROM rust-builder as builder-chainql-bin
+
+RUN mkdir chainql
+WORKDIR /chainql
+
+RUN git clone -b {{ CHAINQL }} --depth 1 https://github.com/UniqueNetwork/chainql.git . && \
+ cargo build --release
+
+# ===== RUN ======
+
+FROM ubuntu:22.04 as builder-chainql
+
+COPY --from=builder-chainql-bin /chainql/target/release/chainql /chainql/target/release/chainql
.docker/Dockerfile-parachain-upgrade-data.j2diffbeforeafterboth--- a/.docker/Dockerfile-parachain-upgrade-data.j2
+++ b/.docker/Dockerfile-parachain-upgrade-data.j2
@@ -66,7 +66,7 @@
COPY --from=builder-unique-target /unique_parachain/.docker/forkless-config/fork.jsonnet /polkadot-launch/fork.jsonnet
COPY --from=builder-unique-target /unique_parachain/.docker/forkless-config/typeNames.jsonnet /polkadot-launch/typeNames.jsonnet
-COPY --from=uniquenetwork/builder-chainql:latest /chainql/target/release/chainql /chainql/target/release/
+COPY --from=uniquenetwork/builder-chainql:{{ CHAINQL }} /chainql/target/release/chainql /chainql/target/release/
COPY --from=polkadot /unique_parachain/polkadot/target/release/polkadot /polkadot/target/release/
COPY --from=polkadot /unique_parachain/polkadot/target/release/wbuild/westend-runtime/westend_runtime.compact.compressed.wasm /polkadot/target/release/wbuild/westend-runtime/westend_runtime.compact.compressed.wasm
.docker/Dockerfile-xcm.j2diffbeforeafterboth--- a/.docker/Dockerfile-xcm.j2
+++ b/.docker/Dockerfile-xcm.j2
@@ -60,7 +60,7 @@
COPY --from=uniquenetwork/builder-cumulus:{{ CUMULUS_BUILD_BRANCH }} /unique_parachain/cumulus/target/release/polkadot-parachain /cumulus/target/release/cumulus
COPY --from=uniquenetwork/builder-acala:{{ ACALA_BUILD_BRANCH }} /unique_parachain/Acala/target/production/acala /acala/target/release/
COPY --from=uniquenetwork/builder-astar:{{ ASTAR_BUILD_BRANCH }} /unique_parachain/astar/target/release/astar /astar/target/release/
-COPY --from=uniquenetwork/builder-chainql:latest /chainql/target/release/chainql /chainql/target/release/
+COPY --from=uniquenetwork/builder-chainql:{{ CHAINQL }} /chainql/target/release/chainql /chainql/target/release/
EXPOSE 9844
EXPOSE 9933
.envdiffbeforeafterboth1RUST_TOOLCHAIN=nightly-2022-11-151RUST_TOOLCHAIN=nightly-2022-11-152POLKADOT_LAUNCH_BRANCH=unique-network2POLKADOT_LAUNCH_BRANCH=unique-network3RELAY_CHAIN_TYPE=westend3RELAY_CHAIN_TYPE=westend4CHAINQL=v0.3.1455POLKADOT_MAINNET_BRANCH=release-v0.9.376POLKADOT_MAINNET_BRANCH=release-v0.9.376STATEMINT_BUILD_BRANCH=release-parachains-v93707STATEMINT_BUILD_BRANCH=release-parachains-v9370.github/workflows/forkless-update-data.ymldiffbeforeafterboth--- a/.github/workflows/forkless-update-data.yml
+++ b/.github/workflows/forkless-update-data.yml
@@ -83,6 +83,7 @@
POLKADOT_BUILD_BRANCH=${{ matrix.relay_branch }}
POLKADOT_LAUNCH_BRANCH=${{ env.POLKADOT_LAUNCH_BRANCH }}
REPLICA_FROM=${{ matrix.replica_from_address }}
+ CHAINQL=${{ env.CHAINQL }}
- name: Show build configuration
run: cat .docker/Dockerfile-parachain-upgrade-data.${{ matrix.network }}.yml
.github/workflows/xcm.ymldiffbeforeafterboth--- a/.github/workflows/xcm.yml
+++ b/.github/workflows/xcm.yml
@@ -251,9 +251,43 @@
fi
shell: bash
- - name: Pull chainql docker image
- run: docker pull uniquenetwork/builder-chainql:latest
+ # Check CHAINQL version and build it if it doesn't exist in repository
+ - name: Generate ENV related extend Dockerfile file for CHAINQL
+ uses: cuchi/jinja2-action@v1.2.0
+ with:
+ template: .docker/Dockerfile-chainql.j2
+ output_file: .docker/Dockerfile-chainql.${{ env.CHAINQL }}.yml
+ variables: |
+ RUST_TOOLCHAIN=${{ env.RUST_TOOLCHAIN }}
+ CHAINQL=${{ env.CHAINQL }}
+
+ - name: Check if the dockerhub repository contains the needed CHAINQL version
+ run: |
+ # aquire token
+ TOKEN=$(curl -s -H "Content-Type: application/json" -X POST -d '{"username": "'${{ secrets.CORE_DOCKERHUB_USERNAME }}'", "password": "'${{ secrets.CORE_DOCKERHUB_TOKEN }}'"}' https://hub.docker.com/v2/users/login/ | jq -r .token)
+ export TOKEN=$TOKEN
+
+ # Get TAGS from DOCKERHUB repository
+ CHAINQL_TAGS=$(curl -s -H "Authorization: JWT ${TOKEN}" https://hub.docker.com/v2/repositories/uniquenetwork/builder-chainql/tags/?page_size=100 | jq -r '."results"[]["name"]')
+ # Show TAGS
+ echo "CHAINQL TAGS:"
+ echo $CHAINQL_TAGS
+ # Check correct version CHAINQL and build it if it doesn't exist in CHAINQL TAGS
+ if [[ ${CHAINQL_TAGS[*]} =~ (^|[[:space:]])"${{ env.CHAINQL }}"($|[[:space:]]) ]]; then
+ echo "Repository has needed CHAINQL version";
+ docker pull uniquenetwork/builder-chainql:${{ env.CHAINQL }}
+ else
+ echo "Repository has not needed CHAINQL version, so build it";
+ cd .docker/ && docker build --no-cache --file ./Dockerfile-chainql.${{ env.CHAINQL }}.yml --tag uniquenetwork/builder-chainql:${{ env.CHAINQL }} .
+ echo "Push needed CHAINQL version to the repository";
+ docker push uniquenetwork/builder-chainql:${{ env.CHAINQL }}
+ fi
+ shell: bash
+
+ # - name: Pull chainql docker image
+ # run: docker pull uniquenetwork/builder-chainql:${{ env.CHAINQL }}
+
- name: Generate ENV related extend launch-config file
uses: cuchi/jinja2-action@v1.2.0
with:
@@ -281,6 +315,7 @@
ASTAR_BUILD_BRANCH=${{ matrix.astar_version }}
MOONBEAM_BUILD_BRANCH=${{ matrix.moonbeam_version }}
CUMULUS_BUILD_BRANCH=${{ matrix.cumulus_version }}
+ CHAINQL=${{ env.CHAINQL }}
- name: Show build Dockerfile
run: cat .docker/Dockerfile-xcm.${{ matrix.network }}.yml