difftreelog
Merge branch 'develop' into feature/collator-selection
in: master
17 files changed
.docker/Dockerfile-parachain-node-onlydiffbeforeafterboth--- a/.docker/Dockerfile-parachain-node-only
+++ b/.docker/Dockerfile-parachain-node-only
@@ -61,6 +61,7 @@
ARG NETWORK
ARG POLKADOT_LAUNCH_BRANCH
+ARG WASM_NAME
RUN apt-get -y update && \
apt-get -y install curl git && \
@@ -82,7 +83,7 @@
COPY --from=builder-unique-current /unique_parachain/target/release/unique-collator /unique-chain/current/release/
COPY --from=builder-unique-target /unique_parachain/target/release/unique-collator /unique-chain/target/release/
-COPY --from=builder-unique-target /unique_parachain/target/release/wbuild/"$NETWORK"-runtime/"$NETWORK"_runtime.compact.compressed.wasm /unique-chain/target/release/wbuild/"$NETWORK"-runtime/"$NETWORK"_runtime.compact.compressed.wasm
+COPY --from=builder-unique-target /unique_parachain/target/release/wbuild/"$WASM_NAME"-runtime/"$WASM_NAME"_runtime.compact.compressed.wasm /unique-chain/target/release/wbuild/"$WASM_NAME"-runtime/"$WASM_NAME"_runtime.compact.compressed.wasm
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-parachain-upgradediffbeforeafterboth--- a/.docker/Dockerfile-parachain-upgrade
+++ b/.docker/Dockerfile-parachain-upgrade
@@ -59,6 +59,7 @@
ARG NETWORK
ARG POLKADOT_LAUNCH_BRANCH
+ARG WASM_NAME
RUN apt-get -y update && \
apt-get -y install curl git && \
@@ -80,7 +81,7 @@
COPY --from=builder-unique-current /unique_parachain/target/release/unique-collator /unique-chain/current/release/
COPY --from=builder-unique-target /unique_parachain/target/release/unique-collator /unique-chain/target/release/
-COPY --from=builder-unique-target /unique_parachain/target/release/wbuild/"$NETWORK"-runtime/"$NETWORK"_runtime.compact.compressed.wasm /unique-chain/target/release/wbuild/"$NETWORK"-runtime/"$NETWORK"_runtime.compact.compressed.wasm
+COPY --from=builder-unique-target /unique_parachain/target/release/wbuild/"$WASM_NAME"-runtime/"$WASM_NAME"_runtime.compact.compressed.wasm /unique-chain/target/release/wbuild/"$WASM_NAME"-runtime/"$WASM_NAME"_runtime.compact.compressed.wasm
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-parachain-upgrade-datadiffbeforeafterboth--- a/.docker/Dockerfile-parachain-upgrade-data
+++ b/.docker/Dockerfile-parachain-upgrade-data
@@ -63,6 +63,7 @@
ARG REPLICA_FROM
ENV REPLICA_FROM=${REPLICA_FROM}
ARG POLKADOT_LAUNCH_BRANCH
+ARG WASM_NAME
RUN apt-get -y update && \
apt-get -y install curl git && \
@@ -85,7 +86,7 @@
COPY --from=builder-unique-current /unique_parachain/target/release/unique-collator /unique-chain/current/release/
COPY --from=builder-unique-target /unique_parachain/target/release/unique-collator /unique-chain/target/release/
-COPY --from=builder-unique-target /unique_parachain/target/release/wbuild/"$NETWORK"-runtime/"$NETWORK"_runtime.compact.compressed.wasm /unique-chain/target/release/wbuild/"$NETWORK"-runtime/"$NETWORK"_runtime.compact.compressed.wasm
+COPY --from=builder-unique-target /unique_parachain/target/release/wbuild/"$WASM_NAME"-runtime/"$WASM_NAME"_runtime.compact.compressed.wasm /unique-chain/target/release/wbuild/"$WASM_NAME"-runtime/"$WASM_NAME"_runtime.compact.compressed.wasm
COPY --from=uniquenetwork/builder-chainql:latest /chainql/target/release/chainql /chainql/target/release/
.docker/Dockerfile-try-runtimediffbeforeafterboth--- a/.docker/Dockerfile-try-runtime
+++ b/.docker/Dockerfile-try-runtime
@@ -35,8 +35,10 @@
ARG PROFILE=release
ARG NETWORK
ARG REPLICA_FROM
+ARG WASM_NAME
ENV NETWORK $NETWORK
ENV REPLICA_FROM $REPLICA_FROM
+ENV WASM_NAME $WASM_NAME
COPY . /unique_parachain
WORKDIR /unique_parachain
@@ -46,4 +48,4 @@
echo "Fork from: $REPLICA_FROM\n" && \
cargo build --features=try-runtime,${NETWORK}-runtime --release
-CMD cargo run --release --features ${NETWORK}-runtime,try-runtime -- try-runtime --runtime target/release/wbuild/${NETWORK}-runtime/${NETWORK}_runtime.compact.compressed.wasm -lruntime=debug -ltry-runtime::cli=debug on-runtime-upgrade --checks live --uri $REPLICA_FROM
+CMD cargo run --release --features ${NETWORK}-runtime,try-runtime -- try-runtime --runtime target/release/wbuild/${WASM_NAME}-runtime/${WASM_NAME}_runtime.compact.compressed.wasm -lruntime=debug -ltry-runtime::cli=debug on-runtime-upgrade --checks live --uri $REPLICA_FROM
.docker/docker-compose.tmp-forkless-data.j2diffbeforeafterboth--- a/.docker/docker-compose.tmp-forkless-data.j2
+++ b/.docker/docker-compose.tmp-forkless-data.j2
@@ -13,6 +13,7 @@
- "MAINNET_TAG={{ MAINNET_TAG }}"
- "MAINNET_BRANCH={{ MAINNET_BRANCH }}"
- "REPLICA_FROM={{ REPLICA_FROM }}"
+ - "WASM_NAME={{ WASM_NAME }}"
context: ../
dockerfile: .docker/Dockerfile-parachain-upgrade-data
image: node-parachain
.docker/docker-compose.tmp-forkless-nodata.j2diffbeforeafterboth--- a/.docker/docker-compose.tmp-forkless-nodata.j2
+++ b/.docker/docker-compose.tmp-forkless-nodata.j2
@@ -12,6 +12,7 @@
- "POLKADOT_LAUNCH_BRANCH={{ POLKADOT_LAUNCH_BRANCH }}"
- "MAINNET_TAG={{ MAINNET_TAG }}"
- "MAINNET_BRANCH={{ MAINNET_BRANCH }}"
+ - "WASM_NAME={{ WASM_NAME }}"
context: ../
dockerfile: .docker/Dockerfile-parachain-upgrade
image: node-parachain
.docker/docker-compose.tmp-node.j2diffbeforeafterboth--- a/.docker/docker-compose.tmp-node.j2
+++ b/.docker/docker-compose.tmp-node.j2
@@ -12,6 +12,7 @@
- "POLKADOT_LAUNCH_BRANCH={{ POLKADOT_LAUNCH_BRANCH }}"
- "MAINNET_TAG={{ MAINNET_TAG }}"
- "MAINNET_BRANCH={{ MAINNET_BRANCH }}"
+ - "WASM_NAME={{ WASM_NAME }}"
context: ../
dockerfile: .docker/Dockerfile-parachain-node-only
image: node-parachain
.docker/docker-compose.tmp-try-runtime.j2diffbeforeafterboth--- a/.docker/docker-compose.tmp-try-runtime.j2
+++ b/.docker/docker-compose.tmp-try-runtime.j2
@@ -8,7 +8,8 @@
args:
- "RUST_TOOLCHAIN={{ RUST_TOOLCHAIN }}"
- "NETWORK={{ NETWORK }}"
- - "REPLICA_FROM={{ REPLICA_FROM }}"
+ - "REPLICA_FROM={{ REPLICA_FROM }}"
+ - "WASM_NAME={{ WASM_NAME }}"
image: try-runtime
container_name: try-runtime
expose:
.docker/forkless-config/launch-config-forkless-data.j2diffbeforeafterboth--- a/.docker/forkless-config/launch-config-forkless-data.j2
+++ b/.docker/forkless-config/launch-config-forkless-data.j2
@@ -88,7 +88,7 @@
{
"bin": "/unique-chain/current/release/unique-collator",
"upgradeBin": "/unique-chain/target/release/unique-collator",
- "upgradeWasm": "/unique-chain/target/release/wbuild/{{ NETWORK }}-runtime/{{ NETWORK }}_runtime.compact.compressed.wasm",
+ "upgradeWasm": "/unique-chain/target/release/wbuild/{{ WASM_NAME }}-runtime/{{ WASM_NAME }}_runtime.compact.compressed.wasm",
"id": "1000",
"balance": "1000000000000000000000000",
"chainRawInitializer": [
.docker/forkless-config/launch-config-forkless-nodata.j2diffbeforeafterboth--- a/.docker/forkless-config/launch-config-forkless-nodata.j2
+++ b/.docker/forkless-config/launch-config-forkless-nodata.j2
@@ -88,7 +88,7 @@
{
"bin": "/unique-chain/current/release/unique-collator",
"upgradeBin": "/unique-chain/target/release/unique-collator",
- "upgradeWasm": "/unique-chain/target/release/wbuild/{{ NETWORK }}-runtime/{{ NETWORK }}_runtime.compact.compressed.wasm",
+ "upgradeWasm": "/unique-chain/target/release/wbuild/{{ WASM_NAME }}-runtime/{{ WASM_NAME }}_runtime.compact.compressed.wasm",
"id": "1000",
"balance": "1000000000000000000000000",
"nodes": [
.docker/forkless-config/launch-config-node-update-only-v3.j2diffbeforeafterboth--- a/.docker/forkless-config/launch-config-node-update-only-v3.j2
+++ b/.docker/forkless-config/launch-config-node-update-only-v3.j2
@@ -88,7 +88,7 @@
{
"bin": "/unique-chain/current/release/unique-collator",
"upgradeBin": "/unique-chain/target/release/unique-collator",
- "upgradeWasm": "/unique-chain/target/release/wbuild/{{ NETWORK }}-runtime/{{ NETWORK }}_runtime.compact.compressed.wasm",
+ "upgradeWasm": "/unique-chain/target/release/wbuild/{{ WASM_NAME }}-runtime/{{ WASM_NAME }}_runtime.compact.compressed.wasm",
"id": "1000",
"balance": "1000000000000000000000000",
"nodes": [
.github/workflows/forkless-update-data.ymldiffbeforeafterboth--- a/.github/workflows/forkless-update-data.yml
+++ b/.github/workflows/forkless-update-data.yml
@@ -35,10 +35,10 @@
id: create_matrix
with:
matrix: |
- network {quartz}, mainnet_branch {${{ env.QUARTZ_MAINNET_BRANCH }}}, replica_from_address {${{ env.QUARTZ_REPLICA_FROM }}}, relay_branch {${{ env.KUSAMA_MAINNET_BRANCH }}}
- network {unique}, mainnet_branch {${{ env.UNIQUE_MAINNET_BRANCH }}}, replica_from_address {${{ env.UNIQUE_REPLICA_FROM }}}, relay_branch {${{ env.POLKADOT_MAINNET_BRANCH }}}
- network {opal}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}}, replica_from_address {${{ env.OPAL_REPLICA_FROM }}}, relay_branch {${{ env.UNIQUEWEST_MAINNET_BRANCH }}}
- network {sapphire}, mainnet_branch {${{ env.SAPPHIRE_MAINNET_BRANCH }}}, replica_from_address {${{ env.SAPPHIRE_REPLICA_FROM }}}, relay_branch {${{ env.UNIQUEEAST_MAINNET_BRANCH }}}
+ network {quartz}, wasm_name {quartz}, mainnet_branch {${{ env.QUARTZ_MAINNET_BRANCH }}}, replica_from_address {${{ env.QUARTZ_REPLICA_FROM }}}, relay_branch {${{ env.KUSAMA_MAINNET_BRANCH }}}
+ network {unique}, wasm_name {unique}, mainnet_branch {${{ env.UNIQUE_MAINNET_BRANCH }}}, replica_from_address {${{ env.UNIQUE_REPLICA_FROM }}}, relay_branch {${{ env.POLKADOT_MAINNET_BRANCH }}}
+ network {opal}, wasm_name {opal}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}}, replica_from_address {${{ env.OPAL_REPLICA_FROM }}}, relay_branch {${{ env.UNIQUEWEST_MAINNET_BRANCH }}}
+ network {sapphire}, wasm_name {opal}, mainnet_branch {${{ env.SAPPHIRE_MAINNET_BRANCH }}}, replica_from_address {${{ env.SAPPHIRE_REPLICA_FROM }}}, relay_branch {${{ env.UNIQUEEAST_MAINNET_BRANCH }}}
forkless-update-data:
needs: execution-marix
@@ -81,6 +81,7 @@
NETWORK=${{ matrix.network }}
# BRANCH=${{ github.head_ref }}
REPLICA_FROM=${{ matrix.replica_from_address }}
+ WASM_NAME=${{ matrix.wasm_name }}
- name: Show build configuration
run: cat .docker/docker-compose-forkless-data.${{ matrix.network }}.yml
@@ -93,6 +94,7 @@
variables: |
NETWORK=${{ matrix.network }}
REPLICA_FROM=${{ matrix.replica_from_address }}
+ WASM_NAME=${{ matrix.wasm_name}}
- name: Show launch-config-forkless configuration
run: cat .docker/launch-config-forkless-data.json
.github/workflows/forkless-update-nodata.ymldiffbeforeafterboth--- a/.github/workflows/forkless-update-nodata.yml
+++ b/.github/workflows/forkless-update-nodata.yml
@@ -34,10 +34,10 @@
id: create_matrix
with:
matrix: |
- network {quartz}, mainnet_branch {${{ env.QUARTZ_MAINNET_BRANCH }}}, relay_branch {${{ env.KUSAMA_MAINNET_BRANCH }}}
- network {unique}, mainnet_branch {${{ env.UNIQUE_MAINNET_BRANCH }}}, relay_branch {${{ env.POLKADOT_MAINNET_BRANCH }}}
- network {opal}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEWEST_MAINNET_BRANCH }}}
- network {sapphire}, mainnet_branch {${{ env.SAPPHIRE_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEEAST_MAINNET_BRANCH }}}
+ network {quartz}, wasm_name {quartz}, mainnet_branch {${{ env.QUARTZ_MAINNET_BRANCH }}}, relay_branch {${{ env.KUSAMA_MAINNET_BRANCH }}}
+ network {unique}, wasm_name {unique}, mainnet_branch {${{ env.UNIQUE_MAINNET_BRANCH }}}, relay_branch {${{ env.POLKADOT_MAINNET_BRANCH }}}
+ network {opal}, wasm_name {opal}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEWEST_MAINNET_BRANCH }}}
+ network {sapphire}, wasm_name {opal}, mainnet_branch {${{ env.SAPPHIRE_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEEAST_MAINNET_BRANCH }}}
forkless-update-nodata:
@@ -82,6 +82,7 @@
MAINNET_BRANCH=${{ matrix.mainnet_branch }}
NETWORK=${{ matrix.network }}
# BRANCH=${{ github.head_ref }}
+ WASM_NAME=${{ matrix.wasm_name }}
- name: Show build configuration
run: cat .docker/docker-compose.${{ matrix.network }}.yml
@@ -93,6 +94,7 @@
output_file: .docker/launch-config-forkless-nodata.json
variables: |
NETWORK=${{ matrix.network }}
+ WASM_NAME=${{ matrix.wasm_name }}
- name: Show launch-config-forkless configuration
run: cat .docker/launch-config-forkless-nodata.json
.github/workflows/integration-tests.ymldiffbeforeafterboth--- a/.github/workflows/integration-tests.yml
+++ b/.github/workflows/integration-tests.yml
@@ -35,9 +35,10 @@
id: create_matrix
with:
matrix: |
- network {opal}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}}
- network {quartz}, mainnet_branch {${{ env.QUARTZ_MAINNET_BRANCH }}}
- network {unique}, mainnet_branch {${{ env.UNIQUE_MAINNET_BRANCH }}}
+ network {opal}, wasm_name {opal}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}}
+ network {sapphire}, wasm_name {opal}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}}
+ network {quartz}, wasm_name {quartz}, mainnet_branch {${{ env.QUARTZ_MAINNET_BRANCH }}}
+ network {unique}, wasm_name {unique}, mainnet_branch {${{ env.UNIQUE_MAINNET_BRANCH }}}
parallel-test:
needs: nodes-execution-matrix
@@ -82,6 +83,7 @@
MAINNET_BRANCH=${{ matrix.mainnet_branch }}
NETWORK=${{ matrix.network }}
BRANCH=${{ github.head_ref }}
+ WASM_NAME=${{ matrix.wasm_name }}
- name: Show build configuration
run: cat .docker/docker-compose.node.${{ matrix.network }}.yml
@@ -230,6 +232,7 @@
MAINNET_BRANCH=${{ matrix.mainnet_branch }}
NETWORK=${{ matrix.network }}
BRANCH=${{ github.head_ref }}
+ WASM_NAME=${{ matrix.wasm_name }}
- name: Show build configuration
run: cat .docker/docker-compose.node.${{ matrix.network }}.yml
.github/workflows/node-only-update.ymldiffbeforeafterboth1# https://cryptousetech.atlassian.net/wiki/spaces/CI/pages/2586837028/Nodes+only+update2# Node only update with restart polkadot-launch process.34name: nodes-only update56# Triger: only call from main workflow(re-usable workflows)7on:8 workflow_call:91011# A workflow run is made up of one or more jobs that can run sequentially or in parallel12jobs:1314 nodes-execution-matrix:1516 name: execution matrix1718 runs-on: self-hosted-ci19 outputs:20 matrix: ${{ steps.create_matrix.outputs.matrix }}2122 steps:2324 - name: Clean Workspace25 uses: AutoModality/action-clean@v1.1.02627 # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it28 - uses: actions/checkout@v329 with:30 ref: ${{ github.head_ref }} #Checking out head commit3132 - name: Read .env file33 uses: xom9ikk/dotenv@v23435 - name: Create Execution matrix36 uses: CertainLach/create-matrix-action@v337 id: create_matrix38 with:39 matrix: |40 network {opal}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEWEST_MAINNET_BRANCH }}}41 network {sapphire}, mainnet_branch {${{ env.SAPPHIRE_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEEAST_MAINNET_BRANCH }}}42 network {quartz}, mainnet_branch {${{ env.QUARTZ_MAINNET_BRANCH }}}, relay_branch {${{ env.KUSAMA_MAINNET_BRANCH }}}43 network {unique}, mainnet_branch {${{ env.UNIQUE_MAINNET_BRANCH }}}, relay_branch {${{ env.POLKADOT_MAINNET_BRANCH }}}444546 nodes-only-update:47 needs: nodes-execution-matrix48 # The type of runner that the job will run on49 runs-on: [self-hosted-ci]5051 timeout-minutes: 2880 # 48 hours for execution jobs.5253 name: ${{ matrix.network }}5455 continue-on-error: true #Do not stop testing of matrix runs failed. As it decided during PR review - it required 50/50& Let's check it with false.5657 strategy:58 matrix:59 include: ${{fromJson(needs.nodes-execution-matrix.outputs.matrix)}}6061 steps:6263 - name: Clean Workspace64 uses: AutoModality/action-clean@v1.1.06566 # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it67 - uses: actions/checkout@v368 with:69 ref: ${{ github.head_ref }} #Checking out head commit7071 - name: Read .env file72 uses: xom9ikk/dotenv@v27374 - name: Generate ENV related extend file for docker-compose75 uses: cuchi/jinja2-action@v1.2.076 with:77 template: .docker/docker-compose.tmp-node.j278 output_file: .docker/docker-compose.node.${{ matrix.network }}.yml79 variables: |80 REPO_URL=${{ github.server_url }}/${{ github.repository }}.git81 RUST_TOOLCHAIN=${{ env.RUST_TOOLCHAIN }}82 POLKADOT_BUILD_BRANCH=${{ matrix.relay_branch }}83 POLKADOT_LAUNCH_BRANCH=${{ env.POLKADOT_LAUNCH_BRANCH }}84 # POLKADOT_MAINNET_BRANCH=${{ env.POLKADOT_MAINNET_BRANCH }}85 # MAINNET_TAG=${{ matrix.mainnet_tag }}86 MAINNET_BRANCH=${{ matrix.mainnet_branch }}87 NETWORK=${{ matrix.network }}88 # BRANCH=${{ github.head_ref }}8990 - name: Show build configuration91 run: cat .docker/docker-compose.node.${{ matrix.network }}.yml9293 - name: Generate launch-config-forkless-nodata.json94 uses: cuchi/jinja2-action@v1.2.095 with:96 template: .docker/forkless-config/launch-config-forkless-nodata.j297 output_file: .docker/launch-config-forkless-nodata.json98 variables: |99 NETWORK=${{ matrix.network }}100101 - name: Show launch-config-forkless configuration102 run: cat .docker/launch-config-forkless-nodata.json103104 - uses: actions/setup-node@v3105 with:106 node-version: 16107108 - name: Build the stack109 run: docker-compose -f ".docker/docker-compose.node.${{ matrix.network }}.yml" up -d --build --remove-orphans --force-recreate --timeout 300110111 # 🚀 POLKADOT LAUNCH COMPLETE 🚀112 - name: Check if docker logs consist messages related to testing of Node Parachain Upgrade.113 if: success()114 run: |115 counter=160116 function check_container_status {117 docker inspect -f {{.State.Running}} node-parachain118 }119 function do_docker_logs {120 docker logs --details node-parachain 2>&1121 }122 function is_started {123 if [ "$(check_container_status)" == "true" ]; then124 echo "Container: node-parachain RUNNING";125 echo "Check Docker logs"126 DOCKER_LOGS=$(do_docker_logs)127 if [[ ${DOCKER_LOGS} = *"POLKADOT LAUNCH COMPLETE"* ]];then128 echo "🚀 POLKADOT LAUNCH COMPLETE 🚀"129 return 0130 else131 echo "Message not found in logs output, repeating..."132 return 1133 fi134 else135 echo "Container node-parachain NOT RUNNING"136 echo "Halting all future checks"137 exit 1138 fi139 echo "something goes wrong"140 exit 1141 }142 while ! is_started; do143 echo "Waiting for special message in log files "144 sleep 30s145 counter=$(( $counter - 1 ))146 echo "Counter: $counter"147 if [ "$counter" -gt "0" ]; then148 continue149 else150 break151 fi152 done153 echo "Halting script"154 exit 0155 shell: bash156157 - name: Checkout at '${{ matrix.mainnet_branch }}' branch158 uses: actions/checkout@master159 with:160 ref: ${{ matrix.mainnet_branch }} #Checking out head commit161 path: ${{ matrix.mainnet_branch }}162163 - name: Run Parallel tests before Node Parachain upgrade164 working-directory: ${{ matrix.mainnet_branch }}/tests165 if: success() || failure()166 run: |167 yarn install168 yarn add mochawesome169 node scripts/readyness.js170 echo "Ready to start tests"171 yarn polkadot-types172 NOW=$(date +%s) && yarn testParallel --reporter mochawesome --reporter-options reportFilename=test-parallel-${NOW}173 env:174 RPC_URL: http://127.0.0.1:9933/175176 # - name: Upload Parallel Test Report Before Node upgrade177 # uses: phoenix-actions/test-reporting@v8178 # id: test-parallel-report-before179 # if: success() || failure() # run this step even if previous step failed180 # with:181 # name: Tests before node upgrade ${{ matrix.network }} # Name of the check run which will be created182 # path: ${{ matrix.mainnet_branch }}/tests/mochawesome-report/test-parallel-*.json # Path to test results183 # reporter: mochawesome-json184 # fail-on-error: 'false'185186 - name: Run Sequential tests before Node Parachain upgrade187 if: success() || failure()188 working-directory: ${{ matrix.mainnet_branch }}/tests189 run: NOW=$(date +%s) && yarn testSequential --reporter mochawesome --reporter-options reportFilename=test-sequential-${NOW}190 env:191 RPC_URL: http://127.0.0.1:9933/192193 # - name: Upload Sequential Test Report Before Node upgrade194 # uses: phoenix-actions/test-reporting@v8195 # id: test-sequential-report-before196 # if: success() || failure() # run this step even if previous step failed197 # with:198 # name: Tests before node upgrade ${{ matrix.network }} # Name of the check run which will be created199 # path: ${{ matrix.mainnet_branch }}/tests/mochawesome-report/test-sequential-*.json # Path to test results200 # reporter: mochawesome-json201 # fail-on-error: 'false'202203 - name: Send SIGUSR1 to polkadot-launch process204 if: success() || failure()205 run: |206 #Get PID of polkadot-launch207 ContainerID=$(docker ps -aqf "name=node-parachain")208 PID=$(docker exec node-parachain pidof 'polkadot-launch')209 sleep 30s210 echo -e "\n"211 echo -e "Restart polkadot-launch process: $PID\n"212 docker exec node-parachain kill -SIGUSR1 ${PID}213 echo "SIGUSR1 sent to Polkadot-launch PID: $PID"214 sleep 60s215 echo -e "Show logs of node-parachain container.\n" 216 docker logs ${ContainerID}217218 - name: Get chain logs in case of docker image crashed after Polkadot Launch restart219 if: failure() # run this step only at failure220 run: |221 docker exec node-parachain tail -n 1000 /polkadot-launch/9944.log222 docker exec node-parachain tail -n 1000 /polkadot-launch/9945.log223 docker exec node-parachain tail -n 1000 /polkadot-launch/alice.log224225 - name: copy chain log files from container to the host226 if: success() || failure() # run this step even if previous step failed227 run: |228 mkdir -p /tmp/node-only-update229 docker cp node-parachain:/polkadot-launch/9944.log /tmp/node-only-update/230 docker cp node-parachain:/polkadot-launch/9945.log /tmp/node-only-update/231 docker cp node-parachain:/polkadot-launch/alice.log /tmp/node-only-update/232233 - name: Upload chain log files234 if: success() || failure()235 uses: actions/upload-artifact@v3236 with:237 name: node-only-update-chain-logs238 path: /tmp/node-only-update/239 if-no-files-found: warn240241 - name: Check if docker logs consist messages related to testing of Node Parachain Upgrade.242 if: success()243 run: |244 counter=160245 function check_container_status {246 docker inspect -f {{.State.Running}} node-parachain247 }248 function do_docker_logs {249 docker logs --details node-parachain 2>&1250 }251 function is_started {252 if [ "$(check_container_status)" == "true" ]; then253 echo "Container: node-parachain RUNNING";254 echo "Check Docker logs"255 DOCKER_LOGS=$(do_docker_logs)256 if [[ ${DOCKER_LOGS} = *"All parachain collators restarted with the new binaries."* ]];then257 echo "🌗 All parachain collators restarted with the new binaries."258 return 0259 else260 echo "Message not found in logs output, repeating..."261 return 1262 fi263 else264 echo "Container node-parachain NOT RUNNING"265 echo "Halting all future checks"266 exit 1267 fi268 echo "something goes wrong"269 exit 1270 }271 while ! is_started; do272 echo "Waiting for special message in log files "273 sleep 30s274 counter=$(( $counter - 1 ))275 echo "Counter: $counter"276 if [ "$counter" -gt "0" ]; then277 continue278 else279 break280 fi281 done282 echo "Halting script"283 exit 0284 shell: bash285286 - name: Run Parallel tests after Node Parachain upgrade287 working-directory: ${{ matrix.mainnet_branch }}/tests288 if: success() || failure() # run this step even if previous step failed289 run: |290 yarn install291 yarn add mochawesome292 node scripts/readyness.js293 echo "Ready to start tests"294 yarn polkadot-types295 NOW=$(date +%s) && yarn testParallel --reporter mochawesome --reporter-options reportFilename=test-parallel-${NOW}296 env:297 RPC_URL: http://127.0.0.1:9933/298299 #- name: Test Report Parallel After Node upgrade300 # uses: phoenix-actions/test-reporting@v8301 # id: test-report-parallel-after302 # if: success() || failure() # run this step even if previous step failed303 # with:304 # name: Tests after node upgrade ${{ matrix.network }} # Name of the check run which will be created305 # path: ${{ matrix.mainnet_branch }}/tests/mochawesome-report/test-parallel-*.json # Path to test results306 # reporter: mochawesome-json307 # fail-on-error: 'false'308309 - name: Run Sequential tests after Node Parachain upgrade310 if: success() || failure()311 working-directory: ${{ matrix.mainnet_branch }}/tests312 run: NOW=$(date +%s) && yarn testSequential --reporter mochawesome --reporter-options reportFilename=test-sequential-${NOW}313 env:314 RPC_URL: http://127.0.0.1:9933/315316 #- name: Upload Sequential Test Report After Node upgrade317 # uses: phoenix-actions/test-reporting@v8318 # id: test-sequential-report-after319 # if: success() || failure() # run this step even if previous step failed320 # with:321 # name: Tests before node upgrade ${{ matrix.network }} # Name of the check run which will be created322 # path: ${{ matrix.mainnet_branch }}/tests/mochawesome-report/test-sequential-*.json # Path to test results323 # reporter: mochawesome-json324 # fail-on-error: 'false'325326 - name: Stop running containers327 if: always() # run this step always328 run: docker-compose -f ".docker/docker-compose.node.${{ matrix.network }}.yml" down --volumes329330 - name: Remove builder cache331 if: always() # run this step always332 run: |333 docker builder prune -f -a334 docker system prune -f335 docker image prune -f -a336337 - name: Remove repo at the end338 if: always() # run this step always339 run: |340 ls -ls ./1# https://cryptousetech.atlassian.net/wiki/spaces/CI/pages/2586837028/Nodes+only+update2# Node only update with restart polkadot-launch process.34name: nodes-only update56# Triger: only call from main workflow(re-usable workflows)7on:8 workflow_call:91011# A workflow run is made up of one or more jobs that can run sequentially or in parallel12jobs:1314 nodes-execution-matrix:1516 name: execution matrix1718 runs-on: self-hosted-ci19 outputs:20 matrix: ${{ steps.create_matrix.outputs.matrix }}2122 steps:2324 - name: Clean Workspace25 uses: AutoModality/action-clean@v1.1.02627 # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it28 - uses: actions/checkout@v329 with:30 ref: ${{ github.head_ref }} #Checking out head commit3132 - name: Read .env file33 uses: xom9ikk/dotenv@v23435 - name: Create Execution matrix36 uses: CertainLach/create-matrix-action@v337 id: create_matrix38 with:39 matrix: |40 network {opal}, wasm_name {opal}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEWEST_MAINNET_BRANCH }}}41 network {sapphire}, wasm_name {opal}, mainnet_branch {${{ env.SAPPHIRE_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEEAST_MAINNET_BRANCH }}}42 network {quartz}, wasm_name {quartz}, mainnet_branch {${{ env.QUARTZ_MAINNET_BRANCH }}}, relay_branch {${{ env.KUSAMA_MAINNET_BRANCH }}}43 network {unique}, wasm_name {unique}, mainnet_branch {${{ env.UNIQUE_MAINNET_BRANCH }}}, relay_branch {${{ env.POLKADOT_MAINNET_BRANCH }}}444546 nodes-only-update:47 needs: nodes-execution-matrix48 # The type of runner that the job will run on49 runs-on: [self-hosted-ci]5051 timeout-minutes: 2880 # 48 hours for execution jobs.5253 name: ${{ matrix.network }}5455 continue-on-error: true #Do not stop testing of matrix runs failed. As it decided during PR review - it required 50/50& Let's check it with false.5657 strategy:58 matrix:59 include: ${{fromJson(needs.nodes-execution-matrix.outputs.matrix)}}6061 steps:6263 - name: Clean Workspace64 uses: AutoModality/action-clean@v1.1.06566 # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it67 - uses: actions/checkout@v368 with:69 ref: ${{ github.head_ref }} #Checking out head commit7071 - name: Read .env file72 uses: xom9ikk/dotenv@v27374 - name: Generate ENV related extend file for docker-compose75 uses: cuchi/jinja2-action@v1.2.076 with:77 template: .docker/docker-compose.tmp-node.j278 output_file: .docker/docker-compose.node.${{ matrix.network }}.yml79 variables: |80 REPO_URL=${{ github.server_url }}/${{ github.repository }}.git81 RUST_TOOLCHAIN=${{ env.RUST_TOOLCHAIN }}82 POLKADOT_BUILD_BRANCH=${{ matrix.relay_branch }}83 POLKADOT_LAUNCH_BRANCH=${{ env.POLKADOT_LAUNCH_BRANCH }}84 # POLKADOT_MAINNET_BRANCH=${{ env.POLKADOT_MAINNET_BRANCH }}85 # MAINNET_TAG=${{ matrix.mainnet_tag }}86 MAINNET_BRANCH=${{ matrix.mainnet_branch }}87 NETWORK=${{ matrix.network }}88 WASM_NAME=${{ matrix.wasm_name }}89 # BRANCH=${{ github.head_ref }}9091 - name: Show build configuration92 run: cat .docker/docker-compose.node.${{ matrix.network }}.yml9394 - name: Generate launch-config-forkless-nodata.json95 uses: cuchi/jinja2-action@v1.2.096 with:97 template: .docker/forkless-config/launch-config-forkless-nodata.j298 output_file: .docker/launch-config-forkless-nodata.json99 variables: |100 NETWORK=${{ matrix.network }}101 WASM_NAME=${{ matrix.wasm_name }}102103 - name: Show launch-config-forkless configuration104 run: cat .docker/launch-config-forkless-nodata.json105106 - uses: actions/setup-node@v3107 with:108 node-version: 16109110 - name: Build the stack111 run: docker-compose -f ".docker/docker-compose.node.${{ matrix.network }}.yml" up -d --build --remove-orphans --force-recreate --timeout 300112113 # 🚀 POLKADOT LAUNCH COMPLETE 🚀114 - name: Check if docker logs consist messages related to testing of Node Parachain Upgrade.115 if: success()116 run: |117 counter=160118 function check_container_status {119 docker inspect -f {{.State.Running}} node-parachain120 }121 function do_docker_logs {122 docker logs --details node-parachain 2>&1123 }124 function is_started {125 if [ "$(check_container_status)" == "true" ]; then126 echo "Container: node-parachain RUNNING";127 echo "Check Docker logs"128 DOCKER_LOGS=$(do_docker_logs)129 if [[ ${DOCKER_LOGS} = *"POLKADOT LAUNCH COMPLETE"* ]];then130 echo "🚀 POLKADOT LAUNCH COMPLETE 🚀"131 return 0132 else133 echo "Message not found in logs output, repeating..."134 return 1135 fi136 else137 echo "Container node-parachain NOT RUNNING"138 echo "Halting all future checks"139 exit 1140 fi141 echo "something goes wrong"142 exit 1143 }144 while ! is_started; do145 echo "Waiting for special message in log files "146 sleep 30s147 counter=$(( $counter - 1 ))148 echo "Counter: $counter"149 if [ "$counter" -gt "0" ]; then150 continue151 else152 break153 fi154 done155 echo "Halting script"156 exit 0157 shell: bash158159 - name: Checkout at '${{ matrix.mainnet_branch }}' branch160 uses: actions/checkout@master161 with:162 ref: ${{ matrix.mainnet_branch }} #Checking out head commit163 path: ${{ matrix.mainnet_branch }}164165 - name: Run Parallel tests before Node Parachain upgrade166 working-directory: ${{ matrix.mainnet_branch }}/tests167 if: success() || failure()168 run: |169 yarn install170 yarn add mochawesome171 node scripts/readyness.js172 echo "Ready to start tests"173 yarn polkadot-types174 NOW=$(date +%s) && yarn testParallel --reporter mochawesome --reporter-options reportFilename=test-parallel-${NOW}175 env:176 RPC_URL: http://127.0.0.1:9933/177178 # - name: Upload Parallel Test Report Before Node upgrade179 # uses: phoenix-actions/test-reporting@v8180 # id: test-parallel-report-before181 # if: success() || failure() # run this step even if previous step failed182 # with:183 # name: Tests before node upgrade ${{ matrix.network }} # Name of the check run which will be created184 # path: ${{ matrix.mainnet_branch }}/tests/mochawesome-report/test-parallel-*.json # Path to test results185 # reporter: mochawesome-json186 # fail-on-error: 'false'187188 - name: Run Sequential tests before Node Parachain upgrade189 if: success() || failure()190 working-directory: ${{ matrix.mainnet_branch }}/tests191 run: NOW=$(date +%s) && yarn testSequential --reporter mochawesome --reporter-options reportFilename=test-sequential-${NOW}192 env:193 RPC_URL: http://127.0.0.1:9933/194195 # - name: Upload Sequential Test Report Before Node upgrade196 # uses: phoenix-actions/test-reporting@v8197 # id: test-sequential-report-before198 # if: success() || failure() # run this step even if previous step failed199 # with:200 # name: Tests before node upgrade ${{ matrix.network }} # Name of the check run which will be created201 # path: ${{ matrix.mainnet_branch }}/tests/mochawesome-report/test-sequential-*.json # Path to test results202 # reporter: mochawesome-json203 # fail-on-error: 'false'204205 - name: Send SIGUSR1 to polkadot-launch process206 if: success() || failure()207 run: |208 #Get PID of polkadot-launch209 ContainerID=$(docker ps -aqf "name=node-parachain")210 PID=$(docker exec node-parachain pidof 'polkadot-launch')211 sleep 30s212 echo -e "\n"213 echo -e "Restart polkadot-launch process: $PID\n"214 docker exec node-parachain kill -SIGUSR1 ${PID}215 echo "SIGUSR1 sent to Polkadot-launch PID: $PID"216 sleep 60s217 echo -e "Show logs of node-parachain container.\n" 218 docker logs ${ContainerID}219220 - name: Get chain logs in case of docker image crashed after Polkadot Launch restart221 if: failure() # run this step only at failure222 run: |223 docker exec node-parachain tail -n 1000 /polkadot-launch/9944.log224 docker exec node-parachain tail -n 1000 /polkadot-launch/9945.log225 docker exec node-parachain tail -n 1000 /polkadot-launch/alice.log226227 - name: copy chain log files from container to the host228 if: success() || failure() # run this step even if previous step failed229 run: |230 mkdir -p /tmp/node-only-update231 docker cp node-parachain:/polkadot-launch/9944.log /tmp/node-only-update/232 docker cp node-parachain:/polkadot-launch/9945.log /tmp/node-only-update/233 docker cp node-parachain:/polkadot-launch/alice.log /tmp/node-only-update/234235 - name: Upload chain log files236 if: success() || failure()237 uses: actions/upload-artifact@v3238 with:239 name: node-only-update-chain-logs240 path: /tmp/node-only-update/241 if-no-files-found: warn242243 - name: Check if docker logs consist messages related to testing of Node Parachain Upgrade.244 if: success()245 run: |246 counter=160247 function check_container_status {248 docker inspect -f {{.State.Running}} node-parachain249 }250 function do_docker_logs {251 docker logs --details node-parachain 2>&1252 }253 function is_started {254 if [ "$(check_container_status)" == "true" ]; then255 echo "Container: node-parachain RUNNING";256 echo "Check Docker logs"257 DOCKER_LOGS=$(do_docker_logs)258 if [[ ${DOCKER_LOGS} = *"All parachain collators restarted with the new binaries."* ]];then259 echo "🌗 All parachain collators restarted with the new binaries."260 return 0261 else262 echo "Message not found in logs output, repeating..."263 return 1264 fi265 else266 echo "Container node-parachain NOT RUNNING"267 echo "Halting all future checks"268 exit 1269 fi270 echo "something goes wrong"271 exit 1272 }273 while ! is_started; do274 echo "Waiting for special message in log files "275 sleep 30s276 counter=$(( $counter - 1 ))277 echo "Counter: $counter"278 if [ "$counter" -gt "0" ]; then279 continue280 else281 break282 fi283 done284 echo "Halting script"285 exit 0286 shell: bash287288 - name: Run Parallel tests after Node Parachain upgrade289 working-directory: ${{ matrix.mainnet_branch }}/tests290 if: success() || failure() # run this step even if previous step failed291 run: |292 yarn install293 yarn add mochawesome294 node scripts/readyness.js295 echo "Ready to start tests"296 yarn polkadot-types297 NOW=$(date +%s) && yarn testParallel --reporter mochawesome --reporter-options reportFilename=test-parallel-${NOW}298 env:299 RPC_URL: http://127.0.0.1:9933/300301 #- name: Test Report Parallel After Node upgrade302 # uses: phoenix-actions/test-reporting@v8303 # id: test-report-parallel-after304 # if: success() || failure() # run this step even if previous step failed305 # with:306 # name: Tests after node upgrade ${{ matrix.network }} # Name of the check run which will be created307 # path: ${{ matrix.mainnet_branch }}/tests/mochawesome-report/test-parallel-*.json # Path to test results308 # reporter: mochawesome-json309 # fail-on-error: 'false'310311 - name: Run Sequential tests after Node Parachain upgrade312 if: success() || failure()313 working-directory: ${{ matrix.mainnet_branch }}/tests314 run: NOW=$(date +%s) && yarn testSequential --reporter mochawesome --reporter-options reportFilename=test-sequential-${NOW}315 env:316 RPC_URL: http://127.0.0.1:9933/317318 #- name: Upload Sequential Test Report After Node upgrade319 # uses: phoenix-actions/test-reporting@v8320 # id: test-sequential-report-after321 # if: success() || failure() # run this step even if previous step failed322 # with:323 # name: Tests before node upgrade ${{ matrix.network }} # Name of the check run which will be created324 # path: ${{ matrix.mainnet_branch }}/tests/mochawesome-report/test-sequential-*.json # Path to test results325 # reporter: mochawesome-json326 # fail-on-error: 'false'327328 - name: Stop running containers329 if: always() # run this step always330 run: docker-compose -f ".docker/docker-compose.node.${{ matrix.network }}.yml" down --volumes331332 - name: Remove builder cache333 if: always() # run this step always334 run: |335 docker builder prune -f -a336 docker system prune -f337 docker image prune -f -a338339 - name: Remove repo at the end340 if: always() # run this step always341 run: |342 ls -ls ./.github/workflows/try-runtime.ymldiffbeforeafterboth--- a/.github/workflows/try-runtime.yml
+++ b/.github/workflows/try-runtime.yml
@@ -33,9 +33,10 @@
id: create_matrix
with:
matrix: |
- network {opal}, replica_from_address {${{ env.OPAL_REPLICA_FROM }}}
- network {quartz}, replica_from_address {${{ env.QUARTZ_REPLICA_FROM }}}
- network {unique}, replica_from_address {${{ env.UNIQUE_REPLICA_FROM }}}
+ network {opal}, wasm_name {opal}, replica_from_address {${{ env.OPAL_REPLICA_FROM }}}
+ network {sapphire}, wasm_name {opal}, replica_from_address {${{ env.SAPPHIRE_REPLICA_FROM }}}
+ network {quartz}, wasm_name {quartz}, replica_from_address {${{ env.QUARTZ_REPLICA_FROM }}}
+ network {unique}, wasm_name {unique}, replica_from_address {${{ env.UNIQUE_REPLICA_FROM }}}
try-runtime:
needs: prepare-execution-marix
@@ -70,6 +71,7 @@
variables: |
RUST_TOOLCHAIN=${{ env.RUST_TOOLCHAIN }}
NETWORK=${{ matrix.network }}
+ WASM_NAME=${{ matrix.wasm_name }}
REPLICA_FROM=${{ matrix.replica_from_address }}
- name: Show build configuration
.github/workflows/yarn-dev.ymldiffbeforeafterboth--- a/.github/workflows/yarn-dev.yml
+++ b/.github/workflows/yarn-dev.yml
@@ -24,6 +24,7 @@
matrix:
include:
- network: "opal"
+ - network: "sapphire"
- network: "quartz"
- network: "unique"