1name: Build & test234on:5 6 7 8 pull_request:9 branches:10 - develop11 types:12 - opened13 - edited14 - reopened15 16 17 18 workflow_dispatch:192021env:22 ubuntu_version: focal23 chains_release_dir: /opt/runner/chains_release24 opal_chain_workdir: ./src_opal_chain25 quartz_chain_workdir: ./src_quartz_chain26 unique_chain_workdir: ./src_unique_chain27 RUST_TOOLCHAIN: nightly-2022-05-1128 REPO_URL: ${{ github.server_url }}/${{ github.repository }}293031jobs:32 pre-requisites:33 34 runs-on: self-hosted-ci3536 steps:37 38 - name: Install dependencies39 run: |40 sudo apt-get install git curl libssl-dev llvm pkg-config libclang-dev clang make cmake41 sudo apt autoremove42 curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain none43 . $HOME/.cargo/env && cargo install --locked --git https://github.com/chevdor/subwasm44 rustup toolchain install ${{ env.RUST_TOOLCHAIN }}45 rustup default ${{ env.RUST_TOOLCHAIN }}46 rustup target add wasm32-unknown-unknown --toolchain ${{ env.RUST_TOOLCHAIN }}474849 build:50 51 runs-on: self-hosted-ci5253 needs: pre-requisites54 name: Build Container, Spin it Up an test5556 continue-on-error: true 5758 strategy:59 matrix:60 include:61 - network: "Opal"62 features: " "63 - network: "Quartz"64 features: "--features=quartz-runtime"65 - network: "Unique"66 features: "--features=unique-runtime"6768 steps:69 70 - uses: actions/checkout@v37172 - name: Generate ENV related extend file for docker-compose73 uses: cuchi/jinja2-action@v1.2.074 with:75 template: .docker/docker-compose.tmp.j276 output_file: .docker/docker-compose.${{ matrix.network }}.yml77 variables: |78 REPO_URL=${{ github.server_url }}/${{ github.repository }}.git79 RUST_TOOLCHAIN=${{ env.RUST_TOOLCHAIN }}80 FEATURE=${{ matrix.features }}81 BRANCH=${{ github.head_ref }}8283 - name: Show temporary file84 run: cat .docker/docker-compose.${{ matrix.network }}.yml8586 - name: Build the stack87 run: docker-compose -f ".docker/docker-compose-dev.yaml" -f ".docker/docker-compose.${{ matrix.network }}.yml" up -d --build8889909192 - name: Wait93 run: sleep 420s9495 - name: Install node96 uses: actions/setup-node@v197 with:98 node-version: 14.x99100 - name: Install dependencies101 run: |102 cd tests103 yarn install104 yarn add mochawesome105 yarn --pure-lockfile106107 - name: Run tests108 run: |109 cd tests110 NOW=$(date +%s) && yarn test --reporter mochawesome --reporter-options reportFilename=test-${NOW}111 env:112 RPC_URL: http://127.0.0.1:9933/113114 - name: Test Report115 uses: phoenix-actions/test-reporting@v8116 id: test-report 117 if: success() || failure() 118 with:119 name: Tests ${{ matrix.network }} 120 path: tests/mochawesome-report/test-*.json 121 reporter: mochawesome-json122 fail-on-error: 'false'123124 - name: Stop running containers125 if: always() 126 run: docker-compose -f ".docker/docker-compose-dev.yaml" -f ".docker/docker-compose.${{ matrix.network }}.yml" down127128129name: Build & test Master130131132on:133 134 135 136 pull_request:137 branches:138 - master139 types:140 - opened141 - edited142 - reopened143 144 145 146 workflow_dispatch:147148149env:150 ubuntu_version: focal151 chains_release_dir: /opt/runner/chains_release152 opal_chain_workdir: ./src_opal_chain153 quartz_chain_workdir: ./src_quartz_chain154 unique_chain_workdir: ./src_unique_chain155 RUST_TOOLCHAIN: nightly-2022-05-11156 REPO_URL: ${{ github.server_url }}/${{ github.repository }}157158159jobs:160 pre-requisites:161 162 runs-on: self-hosted-ci163164 steps:165 166 - name: Install dependencies167 run: |168 sudo apt-get install git curl libssl-dev llvm pkg-config libclang-dev clang make cmake169 sudo apt autoremove170 curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain none171 . $HOME/.cargo/env && cargo install --locked --git https://github.com/chevdor/subwasm172 rustup toolchain install ${{ env.RUST_TOOLCHAIN }}173 rustup default ${{ env.RUST_TOOLCHAIN }}174 rustup target add wasm32-unknown-unknown --toolchain ${{ env.RUST_TOOLCHAIN }}175176177 build:178 179 runs-on: self-hosted-ci180181 needs: pre-requisites182 name: Build Container, Spin it Up an test183184 continue-on-error: true 185186 strategy:187 matrix:188 include:189 - network: "Opal"190 features: " "191 - network: "Quartz"192 features: "--features=quartz-runtime"193 - network: "Unique"194 features: "--features=unique-runtime"195196 steps:197 198 - uses: actions/checkout@v3199200 - name: Generate ENV related extend file for docker-compose201 uses: cuchi/jinja2-action@v1.2.0202 with:203 template: .docker/docker-compose.tmp.j2204 output_file: .docker/docker-compose.${{ matrix.network }}.yml205 variables: |206 REPO_URL=${{ github.server_url }}/${{ github.repository }}.git207 RUST_TOOLCHAIN=${{ env.RUST_TOOLCHAIN }}208 FEATURE=${{ matrix.features }}209 BRANCH=${{ github.head_ref }}210211 - name: Show temporary file212 run: cat .docker/docker-compose.${{ matrix.network }}.yml213214 - name: Build the stack215 run: docker-compose -f ".docker/docker-compose-dev.yaml" -f ".docker/docker-compose.${{ matrix.network }}.yml" up -d --build216217218219220 - name: Wait221 run: sleep 420s222223 - name: Install node224 uses: actions/setup-node@v1225 with:226 node-version: 14.x227228 - name: Install dependencies229 run: |230 cd tests231 yarn install232 yarn add mochawesome233 yarn --pure-lockfile234235 - name: Run tests236 run: |237 cd tests238 NOW=$(date +%s) && yarn test --reporter mochawesome --reporter-options reportFilename=test-${NOW}239 env:240 RPC_URL: http://127.0.0.1:9933/241242 - name: Test Report243 uses: phoenix-actions/test-reporting@v8244 id: test-report 245 if: success() || failure() 246 with:247 name: Tests ${{ matrix.network }} 248 path: tests/mochawesome-report/test-*.json 249 reporter: mochawesome-json250 fail-on-error: 'false'251252 - name: Stop running containers253 if: always() 254 run: docker-compose -f ".docker/docker-compose-dev.yaml" -f ".docker/docker-compose.${{ matrix.network }}.yml" down