Relayer v2 architecture redesign and new packet worker MVP #5169
Workflow file for this run
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: master | |
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 | |
# 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: ubuntu-20.04 | |
timeout-minutes: 180 | |
strategy: | |
fail-fast: false | |
matrix: | |
chain: | |
- package: gaia8 | |
command: gaiad | |
account_prefix: cosmos | |
- package: gaia9 | |
command: gaiad | |
account_prefix: cosmos | |
- package: ibc-go-v4-simapp | |
command: simd | |
account_prefix: cosmos | |
- package: ibc-go-v5-simapp | |
command: simd | |
account_prefix: cosmos | |
- package: ibc-go-v6-simapp | |
command: simd | |
account_prefix: cosmos | |
- package: ibc-go-v7-simapp | |
command: simd | |
account_prefix: cosmos | |
- package: wasmd | |
command: wasmd | |
account_prefix: wasm | |
- package: evmos | |
command: evmosd | |
account_prefix: evmos | |
- package: osmosis | |
command: osmosisd | |
account_prefix: osmo | |
- package: stride | |
command: strided | |
account_prefix: stride | |
- package: juno | |
command: junod | |
account_prefix: juno | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: cachix/install-nix-action@v22 | |
with: | |
install_url: https://nixos-nix-install-tests.cachix.org/serve/vij683ly7sl95nnhb67bdjjfabclr85m/install | |
install_options: '--tarball-url-prefix https://nixos-nix-install-tests.cachix.org/serve' | |
extra_nix_config: | | |
experimental-features = nix-command flakes | |
- uses: cachix/cachix-action@v12 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v1 | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: -p ibc-integration-test --no-fail-fast --no-run | |
- name: run integration tests | |
uses: nick-fields/retry@v2 | |
env: | |
RUST_LOG: info,ibc_relayer_runtime=trace | |
RUST_BACKTRACE: 1 | |
NO_COLOR_LOG: 1 | |
CHAIN_COMMAND_PATHS: ${{ matrix.chain.command }} | |
ACCOUNT_PREFIXES: ${{ matrix.chain.account_prefix }} | |
with: | |
max_attempts: 2 | |
timeout_minutes: 90 | |
command: | | |
nix shell .#python .#${{ matrix.chain.package }} -c cargo \ | |
test -p ibc-integration-test --no-fail-fast -- \ | |
--nocapture --test-threads=2 | |
relayer-next-integration-test: | |
runs-on: ubuntu-20.04 | |
timeout-minutes: 60 | |
strategy: | |
fail-fast: false | |
matrix: | |
chain: | |
- package: gaia6 | |
command: gaiad | |
account_prefix: cosmos | |
- package: gaia7 | |
command: gaiad | |
account_prefix: cosmos | |
- package: gaia8 | |
command: gaiad | |
account_prefix: cosmos | |
- package: ibc-go-v2-simapp | |
command: simd | |
account_prefix: cosmos | |
- package: ibc-go-v3-simapp | |
command: simd | |
account_prefix: cosmos | |
- package: ibc-go-v4-simapp | |
command: simd | |
account_prefix: cosmos | |
- package: ibc-go-v5-simapp | |
command: simd | |
account_prefix: cosmos | |
- package: ibc-go-v6-simapp | |
command: simd | |
account_prefix: cosmos | |
- package: ibc-go-v7-simapp | |
command: simd | |
account_prefix: cosmos | |
- package: wasmd | |
command: wasmd | |
account_prefix: wasm | |
- package: evmos | |
command: evmosd | |
account_prefix: evmos | |
- package: osmosis | |
command: osmosisd | |
account_prefix: osmo | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: cachix/install-nix-action@v18 | |
with: | |
install_url: https://nixos-nix-install-tests.cachix.org/serve/vij683ly7sl95nnhb67bdjjfabclr85m/install | |
install_options: '--tarball-url-prefix https://nixos-nix-install-tests.cachix.org/serve' | |
extra_nix_config: | | |
experimental-features = nix-command flakes | |
- uses: cachix/cachix-action@v12 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v1 | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: -p ibc-integration-test --no-fail-fast --no-run | |
- name: run integration tests | |
uses: nick-fields/retry@v2 | |
env: | |
RUST_LOG: info,ibc_relayer_runtime=trace | |
RUST_BACKTRACE: 1 | |
NO_COLOR_LOG: 1 | |
CHAIN_COMMAND_PATHS: ${{ matrix.chain.command }} | |
ACCOUNT_PREFIXES: ${{ matrix.chain.account_prefix }} | |
with: | |
max_attempts: 3 | |
timeout_minutes: 45 | |
command: | | |
nix shell .#python .#${{ matrix.chain.package }} -c cargo \ | |
test -p ibc-integration-test --no-fail-fast -- \ | |
--nocapture --test-threads=2 | |
ordered-channel-test: | |
runs-on: ubuntu-20.04 | |
timeout-minutes: 60 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: cachix/install-nix-action@v22 | |
with: | |
install_url: https://nixos-nix-install-tests.cachix.org/serve/vij683ly7sl95nnhb67bdjjfabclr85m/install | |
install_options: '--tarball-url-prefix https://nixos-nix-install-tests.cachix.org/serve' | |
extra_nix_config: | | |
experimental-features = nix-command flakes | |
- uses: cachix/cachix-action@v12 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v1 | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: -p ibc-integration-test --no-fail-fast --no-run | |
- env: | |
RUST_LOG: info | |
RUST_BACKTRACE: 1 | |
NO_COLOR_LOG: 1 | |
run: | | |
nix shell .#python .#gaia6-ordered -c cargo \ | |
test -p ibc-integration-test --features ordered --no-fail-fast -- \ | |
--nocapture --test-threads=1 test_ordered_channel | |
ica-filter-test: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
chain: | |
- package: ibc-go-v6-simapp | |
command: simd | |
account_prefix: cosmos | |
- package: ibc-go-v7-simapp | |
command: simd | |
account_prefix: cosmos | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: cachix/install-nix-action@v22 | |
with: | |
install_url: https://nixos-nix-install-tests.cachix.org/serve/vij683ly7sl95nnhb67bdjjfabclr85m/install | |
install_options: '--tarball-url-prefix https://nixos-nix-install-tests.cachix.org/serve' | |
extra_nix_config: | | |
experimental-features = nix-command flakes | |
- uses: cachix/cachix-action@v12 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v1 | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: -p ibc-integration-test --no-fail-fast --no-run | |
- 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 \ | |
test -p ibc-integration-test --features ica --no-fail-fast -- \ | |
--nocapture --test-threads=1 test_ica_filter | |
ics29-fee-test: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
chain: | |
- package: ibc-go-v5-simapp | |
command: simd | |
account_prefix: cosmos | |
- package: ibc-go-v6-simapp | |
command: simd | |
account_prefix: cosmos | |
- package: ibc-go-v7-simapp | |
command: simd | |
account_prefix: cosmos | |
- package: migaloo | |
command: migalood | |
account_prefix: migaloo | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: cachix/install-nix-action@v22 | |
with: | |
install_url: https://nixos-nix-install-tests.cachix.org/serve/vij683ly7sl95nnhb67bdjjfabclr85m/install | |
install_options: '--tarball-url-prefix https://nixos-nix-install-tests.cachix.org/serve' | |
extra_nix_config: | | |
experimental-features = nix-command flakes | |
- uses: cachix/cachix-action@v12 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v1 | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: -p ibc-integration-test --features ics29-fee --no-fail-fast --no-run | |
- 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 \ | |
test -p ibc-integration-test --features ics29-fee --no-fail-fast -- \ | |
--nocapture --test-threads=1 fee:: | |
forward-packet: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
chain: | |
- package: gaia8 | |
command: gaiad | |
account_prefix: cosmos | |
- package: gaia9 | |
command: gaiad | |
account_prefix: cosmos | |
- package: juno | |
command: junod | |
account_prefix: juno | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: cachix/install-nix-action@v22 | |
with: | |
install_url: https://nixos-nix-install-tests.cachix.org/serve/vij683ly7sl95nnhb67bdjjfabclr85m/install | |
install_options: '--tarball-url-prefix https://nixos-nix-install-tests.cachix.org/serve' | |
extra_nix_config: | | |
experimental-features = nix-command flakes | |
- uses: cachix/cachix-action@v12 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v1 | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: -p ibc-integration-test --features forward-packet --no-fail-fast --no-run | |
- 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 \ | |
test -p ibc-integration-test --features forward-packet --no-fail-fast -- \ | |
--nocapture --test-threads=1 forward:: | |
ics31: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
chain: | |
- package: .#gaia8 .#stride-no-admin | |
command: gaiad,strided | |
account_prefix: cosmos,stride | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: cachix/install-nix-action@v22 | |
with: | |
install_url: https://nixos-nix-install-tests.cachix.org/serve/vij683ly7sl95nnhb67bdjjfabclr85m/install | |
install_options: '--tarball-url-prefix https://nixos-nix-install-tests.cachix.org/serve' | |
extra_nix_config: | | |
experimental-features = nix-command flakes | |
- uses: cachix/cachix-action@v12 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v1 | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: -p ibc-integration-test --features ics31 --no-fail-fast --no-run | |
- 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 \ | |
test -p ibc-integration-test --features ics31 --no-fail-fast -- \ | |
--nocapture --test-threads=1 ics31:: | |
fee-grant: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
chain: | |
- package: stride | |
command: strided | |
account_prefix: stride | |
- package: evmos | |
command: evmosd | |
account_prefix: evmos | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: cachix/install-nix-action@v22 | |
with: | |
install_url: https://nixos-nix-install-tests.cachix.org/serve/vij683ly7sl95nnhb67bdjjfabclr85m/install | |
install_options: '--tarball-url-prefix https://nixos-nix-install-tests.cachix.org/serve' | |
extra_nix_config: | | |
experimental-features = nix-command flakes | |
- uses: cachix/cachix-action@v12 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v1 | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: -p ibc-integration-test --features fee-grant --no-fail-fast --no-run | |
- 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 \ | |
test -p ibc-integration-test --features fee-grant --no-fail-fast -- \ | |
--nocapture --test-threads=1 fee_grant:: | |
clean-workers: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
chain: | |
- package: gaia9 | |
command: gaiad | |
account_prefix: cosmos | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: cachix/install-nix-action@v22 | |
with: | |
install_url: https://nixos-nix-install-tests.cachix.org/serve/vij683ly7sl95nnhb67bdjjfabclr85m/install | |
install_options: '--tarball-url-prefix https://nixos-nix-install-tests.cachix.org/serve' | |
extra_nix_config: | | |
experimental-features = nix-command flakes | |
- uses: cachix/cachix-action@v12 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v1 | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: -p ibc-integration-test --features ics31 --no-fail-fast --no-run | |
- 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 \ | |
test -p ibc-integration-test --features clean-workers --no-fail-fast -- \ | |
--nocapture --test-threads=1 clean_workers:: | |
interchain-security: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
chain: | |
- package: neutron | |
command: neutrond | |
account_prefix: neutron | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: cachix/install-nix-action@v22 | |
with: | |
install_url: https://nixos-nix-install-tests.cachix.org/serve/vij683ly7sl95nnhb67bdjjfabclr85m/install | |
install_options: '--tarball-url-prefix https://nixos-nix-install-tests.cachix.org/serve' | |
extra_nix_config: | | |
experimental-features = nix-command flakes | |
- uses: cachix/cachix-action@v12 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v1 | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: -p ibc-integration-test --features interchain-security --no-fail-fast --no-run | |
- env: | |
RUST_LOG: info | |
RUST_BACKTRACE: 1 | |
NO_COLOR_LOG: 1 | |
CHAIN_COMMAND_PATHS: gaiad,${{ matrix.chain.command }} | |
ACCOUNT_PREFIXES: cosmos,${{ matrix.chain.account_prefix }} | |
run: | | |
nix shell .#gaia9 .#${{ matrix.chain.package }} -c cargo \ | |
test -p ibc-integration-test --features interchain-security --no-fail-fast -- \ | |
--nocapture --test-threads=1 interchain_security:: | |
model-based-test: | |
runs-on: ubuntu-20.04 | |
timeout-minutes: 60 | |
strategy: | |
matrix: | |
gaiad: | |
- gaia6 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: cachix/install-nix-action@v22 | |
with: | |
install_url: https://nixos-nix-install-tests.cachix.org/serve/vij683ly7sl95nnhb67bdjjfabclr85m/install | |
install_options: '--tarball-url-prefix https://nixos-nix-install-tests.cachix.org/serve' | |
extra_nix_config: | | |
experimental-features = nix-command flakes | |
- uses: cachix/cachix-action@v12 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v1 | |
- 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 -- \ | |
# --nocapture --test-threads=1 mbt |