difftreelog
change trugger for xcm-tests
in: master
1 file changed
.github/workflows/xcm-tests.ymldiffbeforeafterboth1name: xcm-tests23# Controls when the action will run.4on:5 # Triggers the workflow after xcm-testnet-build 6 workflow_run:7 workflows: ["xcm-testnet-build"]8 types: [requested] 9 # Triggers the workflow on push or pull request events but only for the master branch10 pull_request:11 branches:12 - master13 types:14 - opened15 - reopened16 - synchronize #commit(s) pushed to the pull request17 - ready_for_review1819 # Allows you to run this workflow manually from the Actions tab20 workflow_dispatch:2122#Define Workflow variables23env:24 REPO_URL: ${{ github.server_url }}/${{ github.repository }}2526concurrency:27 group: ${{ github.workflow }}-${{ github.head_ref }}28 cancel-in-progress: true2930# A workflow run is made up of one or more jobs that can run sequentially or in parallel31jobs:3233 prepare-execution-marix:3435 name: Prepare execution matrix3637 runs-on: XL38 outputs:39 matrix: ${{ steps.create_matrix.outputs.matrix }}4041 steps:4243 - name: Clean Workspace44 uses: AutoModality/action-clean@v1.1.04546 # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it47 - uses: actions/checkout@v348 with:49 ref: ${{ github.head_ref }} #Checking out head commit5051 - name: Read .env file52 uses: xom9ikk/dotenv@v1.0.25354 - name: Create Execution matrix55 uses: fabiocaccamo/create-matrix-action@v256 id: create_matrix57 with:58 matrix: |59 network {opal}, runtime {opal}, features {opal-runtime}, runtest {testXcmOpal}60 network {quartz}, runtime {quartz}, features {quartz-runtime}, runtest {testXcmQuartz}61 network {unique}, runtime {unique}, features {unique-runtime}, runtest {testXcmUnique}6263 xcm-tests:64 needs: prepare-execution-marix65 # The type of runner that the job will run on66 runs-on: [XL]6768 timeout-minutes: 6006970 name: ${{ matrix.network }}7172 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.7374 strategy:75 matrix:76 include: ${{fromJson(needs.prepare-execution-marix.outputs.matrix)}}777879 steps:80 # - name: Skip if pull request is in Draft81 # if: github.event.pull_request.draft == true82 # run: exit 18384 - name: Clean Workspace85 uses: AutoModality/action-clean@v1.1.08687 # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it88 - uses: actions/checkout@v389 with:90 ref: ${{ github.head_ref }} #Checking out head commit9192 - name: Read .env file93 uses: xom9ikk/dotenv@v1.0.29495 - name: Generate ENV related extend file for docker-compose96 uses: cuchi/jinja2-action@v1.2.097 with:98 template: .docker/docker-compose.tmp-xcm-tests.j299 output_file: .docker/docker-compose.xcm-tests.${{ matrix.network }}.yml100 variables: |101 NETWORK=${{ matrix.network }}102103 - name: Show build configuration104 run: cat .docker/docker-compose.xcm-tests.${{ matrix.network }}.yml105106 - uses: actions/setup-node@v3107 with:108 node-version: 16109110 - name: Build the stack111 run: docker-compose -f ".docker/docker-compose.xcm-tests.${{ matrix.network }}.yml" up -d --remove-orphans --force-recreate --timeout 300112113 # 🚀 POLKADOT LAUNCH COMPLETE 🚀114 - name: Check if docker logs consist messages related to testing of xcm tests 115 if: success()116 run: |117 counter=160118 function check_container_status {119 docker inspect -f {{.State.Running}} xcm-${{ matrix.network }}-testnet-local120 }121 function do_docker_logs {122 docker logs --details xcm-${{ matrix.network }}-testnet-local 2>&1123 }124 function is_started {125 if [ "$(check_container_status)" == "true" ]; then126 echo "Container: xcm-${{ matrix.network }}-testnet-local 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 xcm-${{ matrix.network }}-testnet-local 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: Run XCM tests 160 working-directory: tests161 run: |162 yarn install163 yarn add mochawesome164 echo "Ready to start tests"165 NOW=$(date +%s) && yarn ${{ matrix.runtest }} --reporter mochawesome --reporter-options reportFilename=test-${NOW}166167 - name: XCM Test Report168 uses: phoenix-actions/test-reporting@v8169 id: test-report170 if: success() || failure() # run this step even if previous step failed171 with:172 name: XCM Tests ${{ matrix.network }} # Name of the check run which will be created173 path: tests/mochawesome-report/test-*.json # Path to test results174 reporter: mochawesome-json175 fail-on-error: 'false'176177 - name: Stop running containers178 if: always() # run this step always179 run: docker-compose -f ".docker/docker-compose.xcm-tests.${{ matrix.network }}.yml" down180181 - name: Clean Workspace182 if: always()183 uses: AutoModality/action-clean@v1.1.0184185 - name: Remove builder cache186 if: always() # run this step always187 run: |188 docker system prune -a -f189