Skip to content

Merge pull request #14 from lakshya-sky/ext_crypto_ecdsa_generate_ver… #91

Merge pull request #14 from lakshya-sky/ext_crypto_ecdsa_generate_ver…

Merge pull request #14 from lakshya-sky/ext_crypto_ecdsa_generate_ver… #91

Workflow file for this run

name: Integration Testsuite
on:
push:
paths:
- '.github/workflows/integration.yml'
- 'test/**'
- '!test/fixtures/**'
- 'test/fixtures/genesis/**'
- '!test/adapters/**'
- 'test/adapters/substrate/**'
- '!test/README.md'
pull_request:
paths:
- '.github/workflows/integration.yml'
- 'test/**'
- '!test/fixtures/**'
- 'test/fixtures/genesis/**'
- '!test/adapters/**'
- 'test/adapters/substrate/**'
- '!test/README.md'
jobs:
build-host-substrate:
name: "[build] substrate-host"
runs-on: ubuntu-20.04
steps:
- name: Checkout repository
uses: actions/checkout@v2
with:
submodules: true
- name: Setup rust toolchain
id: rustup
uses: actions-rs/toolchain@v1
with:
toolchain: nightly-2020-06-15
target: wasm32-unknown-unknown
default: true
profile: minimal
- name: Cache cargo registry
uses: actions/cache@v1
with:
path: ~/.cargo/registry
key: cargo-registry-host-substrate-${{ hashFiles('test/hosts/substrate/Cargo.lock') }}
restore-keys: cargo-registry-host-substrate-
- name: Cache cargo index
uses: actions/cache@v1
with:
path: ~/.cargo/git
key: cargo-index-host-substrate-${{ hashFiles('test/hosts/substrate/Cargo.lock') }}
restore-keys: cargo-index-host-substrate-
- name: Cache cargo build output
uses: actions/cache@v1
with:
path: test/hosts/substrate/target
key: cargo-build-host-substrate-${{ steps.rustup.outputs.rustc_hash }}-${{ hashFiles('test/hosts/substrate/Cargo.lock') }}
restore-keys: cargo-build-host-substrate-${{ steps.rustup.outputs.rustc_hash }}-
- name: Build substrate
run: make -C test substrate-host
- name: Upload substrate
uses: actions/upload-artifact@v1
with:
name: substrate-host
path: test/bin/polkadot
build-host-kagome:
name: "[build] kagome-host"
runs-on: ubuntu-20.04
steps:
- name: Checkout repository
uses: actions/checkout@v2
with:
submodules: true
- name: Cache hunter outputs
uses: actions/cache@v1
with:
path: ~/.hunter
key: hunter-host-kagome-${{ hashFiles('test/hosts/kagome/CMakeLists.txt') }}
restore-keys: hunter-host-kagome-
- name: Build kagome
env:
CC: gcc-9
CXX: g++-9
run: make -C test kagome-host
- name: Upload kagome_validating
uses: actions/upload-artifact@v1
with:
name: kagome-host
path: test/bin/kagome_validating
- name: Upload kagome_full_syncing
uses: actions/upload-artifact@v1
with:
name: kagome-host
path: test/bin/kagome_full_syncing
- name: Upload kagome_block_producing
uses: actions/upload-artifact@v1
with:
name: kagome-host
path: test/bin/kagome_block_producing
build-host-gossamer:
name: "[build] gossamer-host"
runs-on: ubuntu-20.04
steps:
- name: Checkout repository
uses: actions/checkout@v2
with:
submodules: true
- name: Cache go modules
uses: actions/cache@v1
with:
path: ~/go/pkg/mod
key: go-mod-host-gossamer-${{ hashFiles('test/hosts/gossamer/go.sum') }}
restore-keys: go-mod-host-gossamer-
- name: Build gossamer
run: make -C test gossamer-host
- name: Upload gossamer
uses: actions/upload-artifact@v1
with:
name: gossamer-host
path: test/bin/gossamer
- name: Upload libwasmer.so
uses: actions/upload-artifact@v1
with:
name: gossamer-host
path: test/lib/libwasmer.so
build-adapter-substrate:
name: "[build] substrate-adapter"
runs-on: ubuntu-20.04
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Setup rust toolchain
id: rustup
uses: actions-rs/toolchain@v1
with:
toolchain: nightly-2020-06-15
target: wasm32-unknown-unknown
default: true
profile: minimal
- name: Cache cargo registry
uses: actions/cache@v1
with:
path: ~/.cargo/registry
key: cargo-registry-adapter-substrate-${{ hashFiles('test/adapters/substrate/Cargo.lock') }}
restore-keys: cargo-registry-adapter-substrate-
- name: Cache cargo index
uses: actions/cache@v1
with:
path: ~/.cargo/git
key: cargo-index-adapter-substrate-${{ hashFiles('test/adapters/substrate/Cargo.lock') }}
restore-keys: cargo-index-adapter-substrate-
- name: Cache cargo build ouput
uses: actions/cache@v1
with:
path: test/adapters/substrate/target
key: cargo-build-adapter-substrate-${{ steps.rustup.outputs.rustc_hash }}-${{ hashFiles('test/adapters/substrate/Cargo.lock') }}
restore-keys: cargo-build-adapter-substrate-${{ steps.rustup.outputs.rustc_hash }}-
- name: Build substrate adapters
run: make -C test substrate-adapter
- name: Upload substrate adapter
uses: actions/upload-artifact@v1
with:
name: substrate-adapter
path: test/bin/substrate-adapter
build-runtime-tester:
name: "[build] tester-runtime"
runs-on: ubuntu-20.04
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Setup rust toolchain
id: rustup
uses: actions-rs/toolchain@v1
with:
toolchain: nightly-2020-06-15
target: wasm32-unknown-unknown
default: true
profile: minimal
- name: Setup python toolchain
uses: actions/setup-python@v2
- name: Install yq
run: |
python -m pip install wheel
python -m pip install yq
- name: Cache cargo registry
uses: actions/cache@v1
with:
path: ~/.cargo/registry
key: cargo-registry-runtime-tester-${{ hashFiles('test/runtimes/tester/Cargo.lock') }}
restore-keys: cargo-registry-runtime-tester-
- name: Cache cargo index
uses: actions/cache@v1
with:
path: ~/.cargo/git
key: cargo-index-runtime-tester-${{ hashFiles('test/runtimes/tester/Cargo.lock') }}
restore-keys: cargo-index-runtime-tester-
- name: Cache cargo build output
uses: actions/cache@v1
with:
path: test/runtimes/tester/target
key: cargo-build-runtime-tester-${{ steps.rustup.outputs.rustc_hash }}-${{ hashFiles('test/runtimes/tester/Cargo.lock') }}
restore-keys: cargo-build-runtime-tester-${{ steps.rustup.outputs.rustc_hash }}-
- name: Build and generate host tester genesis
run: make -C test tester-runtime
- name: Upload host tester runtime
uses: actions/upload-artifact@v1
with:
name: tester_runtime.compact.wasm
path: test/runtimes/tester/target/release/wbuild/tester-runtime/tester_runtime.compact.wasm
- name: Upload host tester genesis file
uses: actions/upload-artifact@v1
with:
name: tester-runtime-genesis
path: test/runtimes/tester/genesis.json
- name: Upload host tester state file
uses: actions/upload-artifact@v1
with:
name: tester-runtime-genesis
path: test/runtimes/tester/genesis.yaml
build-runtime-tester-legacy:
name: "[build] tester-runtime-legacy"
runs-on: ubuntu-20.04
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Setup rust toolchain
id: rustup
uses: actions-rs/toolchain@v1
with:
toolchain: nightly-2020-06-15
target: wasm32-unknown-unknown
default: true
profile: minimal
- name: Setup python toolchain
uses: actions/setup-python@v2
- name: Install yq
run: |
python -m pip install wheel
python -m pip install yq
- name: Cache cargo registry
uses: actions/cache@v1
with:
path: ~/.cargo/registry
key: cargo-registry-runtime-tester-legacy-${{ hashFiles('test/runtimes/tester/Cargo.lock') }}
restore-keys: cargo-registry-runtime-tester-legacy-
- name: Cache cargo index
uses: actions/cache@v1
with:
path: ~/.cargo/git
key: cargo-index-runtime-tester-legacy-${{ hashFiles('test/runtimes/tester/Cargo.lock') }}
restore-keys: cargo-index-runtime-tester-legacy-
- name: Cache cargo build
uses: actions/cache@v1
with:
path: test/runtimes/tester-legacy/target
key: cargo-build-runtime-tester-legacy-${{ steps.rustup.outputs.rustc_hash }}-${{ hashFiles('test/runtimes/tester/Cargo.lock') }}
restore-keys: cargo-build-runtime-tester-legacy-${{ steps.rustup.outputs.rustc_hash }}-
- name: Build and generate host tester legacy genesis
run: make -C test tester-runtime-legacy
- name: Upload host tester legacy runtime
uses: actions/upload-artifact@v1
with:
name: tester_runtime_legacy.compact.wasm
path: test/runtimes/tester-legacy/target/release/wbuild/tester-runtime-legacy/tester_runtime_legacy.compact.wasm
- name: Upload host tester legacy genesis file
uses: actions/upload-artifact@v1
with:
name: tester-runtime-legacy-genesis
path: test/runtimes/tester-legacy/genesis-legacy.json
- name: Upload host tester legacy state file
uses: actions/upload-artifact@v1
with:
name: tester-runtime-legacy-genesis
path: test/runtimes/tester-legacy/genesis-legacy.yaml
- name: Upload host tester legacy genesis file for kagome
uses: actions/upload-artifact@v1
with:
name: tester-runtime-legacy-genesis
path: test/runtimes/tester-legacy/genesis-legacy.kagome.json
test-substrate:
needs: [ build-host-substrate, build-adapter-substrate, build-runtime-tester ]
name: "[test-genesis] substrate"
runs-on: ubuntu-20.04
steps:
- name: Checkout repository
uses: actions/checkout@v2
- uses: actions/download-artifact@v1
with:
name: substrate-host
path: test/bin
- run: chmod +x test/bin/polkadot
- uses: actions/download-artifact@v1
with:
name: substrate-adapter
path: test/bin
- run: chmod +x test/bin/substrate-adapter
- uses: actions/download-artifact@v1
with:
name: tester-runtime-genesis
path: test/runtimes/tester
- name: Run substrate with tester genesis
run: test/runtests.jl substrate genesis
test-kagome:
needs: [ build-host-kagome, build-adapter-substrate, build-runtime-tester-legacy ]
name: "[test-genesis] kagome"
runs-on: ubuntu-20.04
steps:
- name: Checkout repository
uses: actions/checkout@v2
- uses: actions/download-artifact@v1
with:
name: kagome-host
path: test/bin
- run: chmod +x test/bin/kagome_validating
- uses: actions/download-artifact@v1
with:
name: substrate-adapter
path: test/bin
- run: chmod +x test/bin/substrate-adapter
- uses: actions/download-artifact@v1
with:
name: tester-runtime-legacy-genesis
path: test/runtimes/tester-legacy
- name: Run kagome with tester genesis
run: test/runtests.jl kagome genesis
test-gossamer:
needs: [ build-host-gossamer, build-adapter-substrate, build-runtime-tester-legacy ]
name: "[test-genesis] gossamer"
runs-on: ubuntu-20.04
steps:
- name: Checkout repository
uses: actions/checkout@v2
- uses: actions/download-artifact@v1
with:
name: gossamer-host
path: test/bin
- run: |
chmod +x test/bin/gossamer
mkdir -p test/lib
mv test/bin/libwasmer.so test/lib/
- uses: actions/download-artifact@v1
with:
name: substrate-adapter
path: test/bin
- run: chmod +x test/bin/substrate-adapter
- uses: actions/download-artifact@v1
with:
name: tester-runtime-legacy-genesis
path: test/runtimes/tester-legacy
- name: Run gossamer with tester genesis
run: test/runtests.jl gossamer genesis