1name: Develop - Build & test234on:5 6 pull_request:7 branches:8 - develop9 types:10 - opened11 - reopened12 - synchronize 1314 15 workflow_dispatch:161718env:19 RUST_TOOLCHAIN: nightly-2022-05-1120 REPO_URL: ${{ github.server_url }}/${{ github.repository }}21 POLKA_VERSION: release-v0.9.24222324jobs:25 build:26 27 runs-on: self-hosted-ci2829 name: Build Container, Spin it Up an test3031 continue-on-error: false 3233 strategy:34 matrix:35 include:36 - network: "Opal"37 features: "--features=opal-runtime"38 - network: "Quartz"39 features: "--features=quartz-runtime"40 - network: "Unique"41 features: "--features=unique-runtime"4243 steps:44 - name: Skip if pull request is in Draft45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 if: github.event.pull_request.draft == true60 run: exit 16162 63 - uses: actions/checkout@v364 with:65 ref: ${{ github.event.pull_request.head.sha }} 6667 - name: Generate ENV related extend file for docker-compose68 uses: cuchi/jinja2-action@v1.2.069 with:70 template: .docker/docker-compose.tmp.j271 output_file: .docker/docker-compose.${{ matrix.network }}.yml72 variables: |73 REPO_URL=${{ github.server_url }}/${{ github.repository }}.git74 RUST_TOOLCHAIN=${{ env.RUST_TOOLCHAIN }}75 POLKA_VERSION=${{ env.POLKA_VERSION }}76 FEATURE=${{ matrix.features }}77 BRANCH=${{ github.head_ref }}7879 - name: Show build configuration80 run: cat .docker/docker-compose.${{ matrix.network }}.yml8182 - name: Build the stack83 run: docker-compose -f ".docker/docker-compose-dev.yaml" -f ".docker/docker-compose.${{ matrix.network }}.yml" up -d --build8485868788 - uses: actions/setup-node@v389 with:90 node-version: 169192 - name: Run tests93 run: |94 yarn add @polkadot/api @polkadot/util mochawesome95 node -v96 echo "Ready to start tests"97 node .docker/readyness.js98 cd tests99 NOW=$(date +%s) && yarn test --reporter mochawesome --reporter-options reportFilename=test-${NOW}100 env:101 RPC_URL: http://127.0.0.1:9933/102103 - name: Test Report104 uses: phoenix-actions/test-reporting@v8105 id: test-report 106 if: success() || failure() 107 with:108 name: Tests ${{ matrix.network }} 109 path: tests/mochawesome-report/test-*.json 110 reporter: mochawesome-json111 fail-on-error: 'false'112113 - name: Stop running containers114 if: always() 115 run: docker-compose -f ".docker/docker-compose-dev.yaml" -f ".docker/docker-compose.${{ matrix.network }}.yml" down