Merge upstream changes from informalsystems/hermes #66
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Integration | |
on: | |
pull_request: | |
paths: | |
- .github/workflows/integration.yaml | |
- Cargo.toml | |
- Cargo.lock | |
- flake.nix | |
- flake.lock | |
- ci/** | |
- e2e/** | |
- crates/** | |
- tools/** | |
push: | |
branches: main | |
paths: | |
- .github/workflows/integration.yaml | |
- Cargo.toml | |
- Cargo.lock | |
- flake.nix | |
- flake.lock | |
- ci/** | |
- e2e/** | |
- crates/** | |
- tools/** | |
env: | |
CARGO_INCREMENTAL: 0 | |
CARGO_PROFILE_DEV_DEBUG: 1 | |
CARGO_PROFILE_RELEASE_DEBUG: 1 | |
RUST_BACKTRACE: short | |
CARGO_NET_RETRY: 10 | |
RUSTUP_MAX_RETRIES: 10 | |
RUSTFLAGS: --cfg tokio_unstable | |
# Cancel previous runs of this workflow when a new commit is added to the PR, branch or tag | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
integration-test: | |
runs-on: buildjet-16vcpu-ubuntu-2204 | |
timeout-minutes: 180 | |
strategy: | |
fail-fast: false | |
matrix: | |
chain: | |
- package: gaia13 | |
command: gaiad | |
account_prefix: cosmos | |
native_token: stake | |
features: forward-packet,clean-workers | |
- package: gaia14 | |
command: gaiad | |
account_prefix: cosmos | |
native_token: stake | |
features: forward-packet,clean-workers | |
- package: ibc-go-v6-simapp | |
command: simd | |
account_prefix: cosmos | |
native_token: stake | |
features: ica,ics29-fee | |
- package: ibc-go-v7-simapp | |
command: simd | |
account_prefix: cosmos | |
native_token: stake | |
features: ica,ics29-fee | |
- package: ibc-go-v8-simapp | |
command: simd | |
account_prefix: cosmos | |
native_token: stake | |
features: ica,ics29-fee | |
- package: wasmd | |
command: wasmd | |
account_prefix: wasm | |
native_token: stake | |
features: '' | |
- package: osmosis | |
command: osmosisd | |
account_prefix: osmo | |
native_token: stake | |
features: dynamic-gas-fee | |
- package: juno | |
command: junod | |
account_prefix: juno | |
native_token: stake | |
features: juno,forward-packet | |
- package: provenance | |
command: provenanced | |
account_prefix: pb | |
native_token: nhash | |
features: fee-grant,async-icq | |
- package: migaloo | |
command: migalood | |
account_prefix: migaloo | |
native_token: stake | |
features: '' | |
- package: injective | |
command: injectived | |
account_prefix: inj | |
native_token: stake | |
features: forward-packet,fee-grant | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Nix | |
uses: DeterminateSystems/nix-installer-action@main | |
with: | |
extra-conf: | | |
substituters = https://cache.nixos.org https://cosmosnix-store.s3.us-east-2.amazonaws.com | |
trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= cosmosnix.store-1:O28HneR1MPtgY3WYruWFuXCimRPwY7em5s0iynkQxdk= | |
- uses: actions-rust-lang/setup-rust-toolchain@v1 | |
with: | |
toolchain: stable | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: -p ibc-integration-test --features=${{ matrix.chain.features }} --no-fail-fast --no-run | |
- name: Install cargo-nextest | |
run: curl -LsSf https://get.nexte.st/latest/linux | tar zxf - -C ${CARGO_HOME:-~/.cargo}/bin | |
- name: Run integration test | |
env: | |
RUST_LOG: info | |
RUST_BACKTRACE: 1 | |
NO_COLOR_LOG: 1 | |
NEXTEST_RETRIES: 2 | |
CHAIN_COMMAND_PATHS: ${{ matrix.chain.command }} | |
ACCOUNT_PREFIXES: ${{ matrix.chain.account_prefix }} | |
NATIVE_TOKENS: ${{ matrix.chain.native_token }} | |
run: | | |
nix shell .#python .#${{ matrix.chain.package }} -c \ | |
cargo nextest run -p ibc-integration-test --no-fail-fast --failure-output final --test-threads=2 \ | |
--features=${{ matrix.chain.features }} | |
ordered-channel-test: | |
runs-on: ubuntu-20.04 | |
timeout-minutes: 60 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Nix | |
uses: DeterminateSystems/nix-installer-action@main | |
with: | |
extra-conf: | | |
substituters = https://cache.nixos.org https://cosmosnix-store.s3.us-east-2.amazonaws.com | |
trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= cosmosnix.store-1:O28HneR1MPtgY3WYruWFuXCimRPwY7em5s0iynkQxdk= | |
- uses: actions-rust-lang/setup-rust-toolchain@v1 | |
with: | |
toolchain: stable | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: -p ibc-integration-test --no-fail-fast --no-run | |
- name: Install cargo-nextest | |
run: curl -LsSf https://get.nexte.st/latest/linux | tar zxf - -C ${CARGO_HOME:-~/.cargo}/bin | |
- env: | |
RUST_LOG: info | |
RUST_BACKTRACE: 1 | |
NO_COLOR_LOG: 1 | |
NEXTEST_RETRIES: 2 | |
run: | | |
nix shell .#python .#gaia6-ordered -c \ | |
cargo nextest run -p ibc-integration-test --no-fail-fast --failure-output final --test-threads=2 \ | |
--features ordered test_ordered_channel | |
interchain-security-no-ica: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
chain: | |
- package: .#gaia13 .#neutron | |
command: gaiad,neutrond | |
account_prefix: cosmos,neutron | |
- package: .#gaia14 .#neutron | |
command: gaiad,neutrond | |
account_prefix: cosmos,neutron | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Nix | |
uses: DeterminateSystems/nix-installer-action@main | |
with: | |
extra-conf: | | |
substituters = https://cache.nixos.org https://cosmosnix-store.s3.us-east-2.amazonaws.com | |
trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= cosmosnix.store-1:O28HneR1MPtgY3WYruWFuXCimRPwY7em5s0iynkQxdk= | |
- uses: actions-rust-lang/setup-rust-toolchain@v1 | |
with: | |
toolchain: stable | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: -p ibc-integration-test --features interchain-security --no-fail-fast --no-run | |
- name: Install cargo-nextest | |
run: curl -LsSf https://get.nexte.st/latest/linux | tar zxf - -C ${CARGO_HOME:-~/.cargo}/bin | |
- env: | |
RUST_LOG: trace | |
RUST_BACKTRACE: 1 | |
NO_COLOR_LOG: 1 | |
NEXTEST_RETRIES: 2 | |
CHAIN_COMMAND_PATHS: ${{ matrix.chain.command }} | |
ACCOUNT_PREFIXES: ${{ matrix.chain.account_prefix }} | |
run: | | |
nix shell ${{ matrix.chain.package }} -c \ | |
cargo nextest run -p ibc-integration-test --no-fail-fast --failure-output final --test-threads=2 \ | |
--features interchain-security interchain_security:: | |
interchain-security-ica: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
chain: | |
- package: .#gaia13 .#stride-consumer | |
command: gaiad,strided | |
account_prefix: cosmos,stride | |
- package: .#gaia14 .#stride-consumer | |
command: gaiad,strided | |
account_prefix: cosmos,stride | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Nix | |
uses: DeterminateSystems/nix-installer-action@main | |
with: | |
extra-conf: | | |
substituters = https://cache.nixos.org https://cosmosnix-store.s3.us-east-2.amazonaws.com | |
trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= cosmosnix.store-1:O28HneR1MPtgY3WYruWFuXCimRPwY7em5s0iynkQxdk= | |
- uses: actions-rust-lang/setup-rust-toolchain@v1 | |
with: | |
toolchain: stable | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: -p ibc-integration-test --features interchain-security --no-fail-fast --no-run | |
- name: Install cargo-nextest | |
run: curl -LsSf https://get.nexte.st/latest/linux | tar zxf - -C ${CARGO_HOME:-~/.cargo}/bin | |
- env: | |
RUST_LOG: info | |
RUST_BACKTRACE: 1 | |
NO_COLOR_LOG: 1 | |
NEXTEST_RETRIES: 2 | |
CHAIN_COMMAND_PATHS: ${{ matrix.chain.command }} | |
ACCOUNT_PREFIXES: ${{ matrix.chain.account_prefix }} | |
run: | | |
nix shell ${{ matrix.chain.package }} -c \ | |
cargo nextest run -p ibc-integration-test --no-fail-fast --failure-output final --test-threads=2 \ | |
--features interchain-security,ica interchain_security:: | |
interchain-security-icq: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
chain: | |
- package: .#gaia13 .#stride-consumer-no-admin | |
command: gaiad,strided | |
account_prefix: cosmos,stride | |
- package: .#gaia14 .#stride-consumer-no-admin | |
command: gaiad,strided | |
account_prefix: cosmos,stride | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Nix | |
uses: DeterminateSystems/nix-installer-action@main | |
with: | |
extra-conf: | | |
substituters = https://cache.nixos.org https://cosmosnix-store.s3.us-east-2.amazonaws.com | |
trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= cosmosnix.store-1:O28HneR1MPtgY3WYruWFuXCimRPwY7em5s0iynkQxdk= | |
- uses: actions-rust-lang/setup-rust-toolchain@v1 | |
with: | |
toolchain: stable | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: -p ibc-integration-test --features interchain-security --no-fail-fast --no-run | |
- name: Install cargo-nextest | |
run: curl -LsSf https://get.nexte.st/latest/linux | tar zxf - -C ${CARGO_HOME:-~/.cargo}/bin | |
- env: | |
RUST_LOG: info | |
RUST_BACKTRACE: 1 | |
NO_COLOR_LOG: 1 | |
CHAIN_COMMAND_PATHS: ${{ matrix.chain.command }} | |
ACCOUNT_PREFIXES: ${{ matrix.chain.account_prefix }} | |
run: | | |
nix shell ${{ matrix.chain.package }} -c \ | |
cargo nextest run -p ibc-integration-test --no-fail-fast --failure-output final --test-threads=2 \ | |
--features interchain-security,ics31 interchain_security:: | |
celestia-to-gaia: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
chain: | |
- package: .#celestia .#gaia13 | |
command: celestia-appd,gaiad | |
account_prefix: celestia,cosmos | |
native_token: utia,stake | |
- package: .#celestia .#gaia14 | |
command: celestia-appd,gaiad | |
account_prefix: celestia,cosmos | |
native_token: utia,stake | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Nix | |
uses: DeterminateSystems/nix-installer-action@main | |
with: | |
extra-conf: | | |
substituters = https://cache.nixos.org https://cosmosnix-store.s3.us-east-2.amazonaws.com | |
trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= cosmosnix.store-1:O28HneR1MPtgY3WYruWFuXCimRPwY7em5s0iynkQxdk= | |
- uses: actions-rust-lang/setup-rust-toolchain@v1 | |
with: | |
toolchain: stable | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: -p ibc-integration-test --features celestia --no-fail-fast --no-run | |
- name: Install cargo-nextest | |
run: curl -LsSf https://get.nexte.st/latest/linux | tar zxf - -C ${CARGO_HOME:-~/.cargo}/bin | |
- env: | |
RUST_LOG: info | |
RUST_BACKTRACE: 1 | |
NO_COLOR_LOG: 1 | |
COMPAT_MODES: 0.34 | |
CHAIN_COMMAND_PATHS: ${{ matrix.chain.command }} | |
ACCOUNT_PREFIXES: ${{ matrix.chain.account_prefix }} | |
NATIVE_TOKENS: ${{ matrix.chain.native_token }} | |
run: | | |
nix shell .#python ${{ matrix.chain.package }} -c \ | |
cargo nextest run -p ibc-integration-test --no-fail-fast --failure-output final --test-threads=2 \ | |
--features celestia | |
model-based-test: | |
runs-on: ubuntu-20.04 | |
timeout-minutes: 60 | |
strategy: | |
matrix: | |
gaiad: | |
- gaia6 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Nix | |
uses: DeterminateSystems/nix-installer-action@main | |
with: | |
extra-conf: | | |
substituters = https://cache.nixos.org https://cosmosnix-store.s3.us-east-2.amazonaws.com | |
trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= cosmosnix.store-1:O28HneR1MPtgY3WYruWFuXCimRPwY7em5s0iynkQxdk= | |
- uses: actions-rust-lang/setup-rust-toolchain@v1 | |
with: | |
toolchain: stable | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: -p ibc-integration-test --features mbt --no-fail-fast --no-run | |
# Disable running MBT tests until flakiness is addressed | |
# - env: | |
# RUST_LOG: debug | |
# RUST_BACKTRACE: 1 | |
# NO_COLOR_LOG: 1 | |
# run: | | |
# nix shell \ | |
# .#${{ matrix.gaiad }} \ | |
# .#apalache \ | |
# -c cargo \ | |
# test -p ibc-integration-test --features mbt --no-fail-fast -- \ | |
# --failure-output final --test-threads=2 --test-threads=1 mbt |