1name: Develop - Build & test23# Controls when the action will run.4on:5 # Triggers the workflow on push or pull request events but only for the master branch6 pull_request:7 branches:8 - develop9 types:10 - opened11 - reopened12 - synchronize #commit(s) pushed to the pull request1314 # Allows you to run this workflow manually from the Actions tab15 workflow_dispatch:1617#Define Workflow variables18env:19 RUST_TOOLCHAIN: nightly-2022-05-1120 REPO_URL: ${{ github.server_url }}/${{ github.repository }}21 POLKA_VERSION: release-v0.9.242223# A workflow run is made up of one or more jobs that can run sequentially or in parallel24jobs:25 build:26 # The type of runner that the job will run on27 runs-on: self-hosted-ci2829 name: Build Container, Spin it Up an test3031 continue-on-error: false #Do not stop testing of matrix runs failed. As it decided during PR review - it required 50/50& Let's check it with 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 # `if: github.event.pull_request.draft == true` should be kept here, at46 # the step level, rather than at the job level. The latter is not47 # recommended because when the PR is moved from "Draft" to "Ready to48 # review" the workflow will immediately be passing (since it was skipped),49 # even though it hasn't actually ran, since it takes a few seconds for50 # the workflow to start. This is also disclosed in:51 # https://github.community/t/dont-run-actions-on-draft-pull-requests/16817/1752 # That scenario would open an opportunity for the check to be bypassed:53 # 1. Get your PR approved54 # 2. Move it to Draft55 # 3. Push whatever commits you want56 # 4. Move it to "Ready for review"; now the workflow is passing (it was57 # skipped) and "Check reviews" is also passing (it won't be updated58 # until the workflow is finished)59 if: github.event.pull_request.draft == true60 run: exit 16162 # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it63 - uses: actions/checkout@v364 with:65 ref: ${{ github.event.pull_request.head.sha }} #Checking out head commit6667 - 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 --build8485# - name: Wait86# run: sleep 420s8788 - uses: actions/setup-node@v389 with:90 node-version: 169192# - name: Install dependencies93# run: |94# cd tests95# yarn install96# yarn add @polkadot/api @polkadot/util@9.4.1 mochawesome97# yarn --pure-lockfile9899 - name: Run tests100 run: |101 cd tests102 yarn add @polkadot/api @polkadot/util mochawesome103 echo "Ready to start tests"104 node .docker/readyness.js105 NOW=$(date +%s) && yarn test --reporter mochawesome --reporter-options reportFilename=test-${NOW}106 env:107 RPC_URL: http://127.0.0.1:9933/108109# - name: Test Report110# uses: phoenix-actions/test-reporting@v8111# id: test-report # Set ID reference for step112# if: success() || failure() # run this step even if previous step failed113# with:114# name: Tests ${{ matrix.network }} # Name of the check run which will be created115# path: tests/mochawesome-report/test-*.json # Path to test results116# reporter: mochawesome-json117# fail-on-error: 'false'118119# - name: Stop running containers120# if: always() # run this step always121# run: docker-compose -f ".docker/docker-compose-dev.yaml" -f ".docker/docker-compose.${{ matrix.network }}.yml" downdifftreelog
source
.github/workflows/node_build_test.yml4.6 KiBsourcehistory