difftreelog
tests: change docker-compose file and workflow for forkless upgrade
in: master
20 files changed
.docker/Dockerfile-parachain-upgradediffbeforeafterboth25RUN rustup target add wasm32-unknown-unknown --toolchain $RUST_TOOLCHAIN25RUN rustup target add wasm32-unknown-unknown --toolchain $RUST_TOOLCHAIN2626272728#RUN mkdir /unique_parachain28RUN mkdir /unique_parachain29#WORKDIR /unique_parachain29WORKDIR /unique_parachain3030313132# ===== BUILD current version ======32# ===== BUILD current version ======37ARG MAINNET_BRANCH=37ARG MAINNET_BRANCH=38ARG REPO_URL=38ARG REPO_URL=393940RUN mkdir /unique_parachain41WORKDIR /unique_parachain40WORKDIR /unique_parachain424143RUN git clone $REPO_URL -b $MAINNET_BRANCH . && \42RUN git clone $REPO_URL -b $MAINNET_BRANCH . && \52ARG BRANCH=51ARG BRANCH=53ARG REPO_URL=52ARG REPO_URL=545355RUN mkdir /unique_parachain54COPY . /unique_parachain56WORKDIR /unique_parachain55WORKDIR /unique_parachain575658RUN git clone $REPO_URL -b $BRANCH . && \57RUN cargo build --features=$FEATURE --$PROFILE59 cargo build --features=$FEATURE --$PROFILE605861# ===== BUILD POLKADOT =====59# ===== BUILD POLKADOT =====62FROM rust-builder as builder-polkadot60FROM rust-builder as builder-polkadot636164ARG POLKADOT_BUILD_BRANCH=62ARG POLKADOT_BUILD_BRANCH=65ENV POLKADOT_BUILD_BRANCH $POLKADOT_BUILD_BRANCH63ENV POLKADOT_BUILD_BRANCH $POLKADOT_BUILD_BRANCH666467RUN mkdir /unique_parachain6568WORKDIR /unique_parachain66WORKDIR /unique_parachain696770RUN git clone -b $POLKADOT_BUILD_BRANCH --depth 1 https://github.com/paritytech/polkadot.git && \68RUN git clone -b $POLKADOT_BUILD_BRANCH --depth 1 https://github.com/paritytech/polkadot.git && \.docker/Dockerfile-parachain-upgrade-datadiffbeforeafterbothno changes
.docker/docker-compose-forkless.yamldiffbeforeafterbothno changes
.docker/docker-compose-forkless.ymldiffbeforeafterbothno changes
.docker/docker-compose.opal.ymldiffbeforeafterbothno changes
.docker/docker-compose.tmp-forkless-data.j2diffbeforeafterbothno changes
.docker/docker-compose.tmp-forkless-nodata.j2diffbeforeafterbothno changes
.docker/docker-compose.tmp-forkless.j2diffbeforeafterbothno changes
.docker/forking/Dockerfile-parachain-live-forkdiffbeforeafterbothno changes
.docker/forking/docker-compose-fork.yamldiffbeforeafterbothno changes
.docker/forking/docker-compose.tmp-fork.j2diffbeforeafterbothno changes
.docker/forking/fork.jsonnetdiffbeforeafterbothno changes
.docker/forking/launch-config-fork.j2diffbeforeafterbothno changes
.docker/forkless-config/fork.jsonnetdiffbeforeafterbothno changes
.docker/forkless-config/launch-config-forkless-data.j2diffbeforeafterbothno changes
.docker/forkless-config/launch-config-forkless-nodata.j2diffbeforeafterbothno changes
.docker/launch-config.j2diffbeforeafterbothno changes
.github/workflows/fork-update-withdata.ymldiffbeforeafterbothno changes
.github/workflows/forkless-update-data.ymldiffbeforeafterbothno changes
.github/workflows/forkless-update-nodata.ymldiffbeforeafterboth1name: Upgrade nodata1name: upgrade nodata223# Controls when the action will run.3# Controls when the action will run.4on:4on:61 forkless-update-nodata:61 forkless-update-nodata:62 needs: prepare-execution-marix62 needs: prepare-execution-marix63 # The type of runner that the job will run on63 # The type of runner that the job will run on64 runs-on: [self-hosted-ci,medium]64 runs-on: [self-hosted-ci,large]65 65 66 66 6767109 - name: Generate ENV related extend file for docker-compose109 - name: Generate ENV related extend file for docker-compose110 uses: cuchi/jinja2-action@v1.2.0110 uses: cuchi/jinja2-action@v1.2.0111 with:111 with:112 template: .docker/docker-compose.tmp-forkless.j2112 template: .docker/docker-compose.tmp-forkless-nodata.j2113 output_file: .docker/docker-compose.${{ matrix.network }}.yml113 output_file: .docker/docker-compose.${{ matrix.network }}.yml114 variables: |114 variables: |115 REPO_URL=${{ github.server_url }}/${{ github.repository }}.git115 REPO_URL=${{ github.server_url }}/${{ github.repository }}.git125 - name: Show build configuration125 - name: Show build configuration126 run: cat .docker/docker-compose.${{ matrix.network }}.yml126 run: cat .docker/docker-compose.${{ matrix.network }}.yml127127128 - name: Generate launch-config.json128 - name: Generate launch-config-forkless-nodata.json129 uses: cuchi/jinja2-action@v1.2.0129 uses: cuchi/jinja2-action@v1.2.0130 with:130 with:131 template: .docker/launch-config.j2131 template: .docker/forkless-config/launch-config-forkless-nodata.j2132 output_file: .docker/launch-config-forkless.json132 output_file: .docker/launch-config-forkless-nodata.json133 variables: |133 variables: |134 FEATURE=${{ matrix.features }}134 FEATURE=${{ matrix.features }}135 RUNTIME=${{ matrix.runtime }}135 RUNTIME=${{ matrix.runtime }}136136137 - name: Show launch-config-forkless configuration137 - name: Show launch-config-forkless configuration138 run: cat .docker/launch-config-forkless.json138 run: cat .docker/launch-config-forkless-nodata.json139139140140141 - name: Build the stack141 - name: Build the stack142 run: docker-compose -f ".docker/docker-compose-forkless.yaml" -f ".docker/docker-compose.${{ matrix.network }}.yml" up -d --build --force-recreate --timeout 300142 run: docker-compose -f ".docker/docker-compose-forkless.yml" -f ".docker/docker-compose.${{ matrix.network }}.yml" up -d --build --force-recreate --timeout 300143143144 - name: Check if docker logs consist logs related to Runtime Upgrade testing.144 - name: Check if docker logs consist logs related to Runtime Upgrade testing.145 if: success()145 if: success()146 run: |146 run: |147 counter=160147 counter=160148 function check_container_status {148 function check_container_status {149 docker inspect -f {{.State.Running}} node-parachain149 docker inspect -f {{.State.Running}} node-parachain150 }150 }151 function do_docker_logs {151 function do_docker_logs {152 docker logs --details node-parachain 2>&1152 docker logs --details node-parachain 2>&1153 }153 }154 function is_started {154 function is_started {155 if [ "$(check_container_status)" == "true" ]; then155 if [ "$(check_container_status)" == "true" ]; then156 echo "Container: node-parachain RUNNING";156 echo "Container: node-parachain RUNNING";157 echo "Check Docker logs"157 echo "Check Docker logs"158 DOCKER_LOGS=$(do_docker_logs)158 DOCKER_LOGS=$(do_docker_logs)159 if [[ ${DOCKER_LOGS} = *"🛸 PARACHAINS' RUNTIME UPGRADE TESTING COMPLETE 🛸"* ]];then159 if [[ ${DOCKER_LOGS} = *"🛸 PARACHAINS' RUNTIME UPGRADE TESTING COMPLETE 🛸"* ]];then160 echo "🛸 PARACHAINS' RUNTIME UPGRADE TESTING COMPLETE 🛸"160 echo "🛸 PARACHAINS' RUNTIME UPGRADE TESTING COMPLETE 🛸"161 return 0161 return 0162 exit 1162 elif [[ ${DOCKER_LOGS} = *"🚧 PARACHAINS' RUNTIME UPGRADE TESTING FAILED 🚧"* ]];then163 else 163 echo "🚧 PARACHAINS' RUNTIME UPGRADE TESTING FAILED 🚧"164 echo "🛸 PARACHAINS' RUNTIME UPGRADE TESTING COMPLETE 🛸 - Not found in logs output."164 return 1165 return 1165 else166 exit 1166 echo "Message not found in logs output, repeating..."167 return 1167 fi168 fi168 else169 else169 echo "Container node-parachain not RUNNING"170 echo "Container node-parachain not RUNNING"170 echo "Halting all future checks"171 echo "Halting all future checks"171 exit 1172 exit 1172 fi173 fi173 exit 0174 exit 0174 }175 }175 while ! is_started; do176 while ! is_started; do176 echo "Waiting for special message in log files "177 echo "Waiting for special message in log files "177 sleep 30s178 sleep 30s178 counter=$(( $counter - 1 ))179 counter=$(( $counter - 1 ))179 echo "Counter: $counter"180 echo "Counter: $counter"180 if [ "$counter" -gt "0" ]; then181 if [ "$counter" -gt "0" ]; then181 continue182 continue182 else183 else183 break184 break184 fi185 fi185 done186 done186 echo "Halting script"187 echo "Halting script"187 exit 0188 exit 0188 shell: bash189 shell: bash189190190 - name: Collect Docker Logs191 - name: Collect Docker Logs191 if: success() || failure()192 if: success() || failure()192 uses: jwalton/gh-docker-logs@v2.2.0193 uses: jwalton/gh-docker-logs@v2.2.0193 with:194 with:194 dest: './forkless-parachain-update-nodata-logs.${{ matrix.features }}'195 dest: './forkless-parachain-upgrade-nodata-logs.${{ matrix.features }}.log'195 images: 'node-parachain' 196 images: 'node-parachain' 196197197 - name: Tar logs198 - name: Show docker logs198 if: success() || failure()199 run: tar cvzf ./forkless-parachain-update-nodata-logs.${{ matrix.features }}.tgz ./forkless-parachain-update-nodata-logs.${{ matrix.features }}199 run: cat './forkless-parachain-upgrade-nodata-logs.${{ matrix.features }}.log'200201 - name: Upload logs to GitHub202 if: success() || failure()203 uses: actions/upload-artifact@master204 with:205 name: forkless-parachain-update-nodata-logs.${{ matrix.features }}.tgz206 path: ./forkless-parachain-update-nodata-logs.${{ matrix.features }}.tgz207200208 - name: Stop running containers201 - name: Stop running containers209 if: always() # run this step always202 if: always() # run this step always210 run: docker-compose -f ".docker/docker-compose-forkless.yaml" -f ".docker/docker-compose.${{ matrix.network }}.yml" down203 run: docker-compose -f ".docker/docker-compose-forkless.yml" -f ".docker/docker-compose.${{ matrix.network }}.yml" down211204