Feature: gh action for build and push docker image of astria hermes #7
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: 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: '' | |
- 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: '' | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: cachix/install-nix-action@v25 | |
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@v14 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v2 | |
- 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 | |
- uses: cachix/install-nix-action@v25 | |
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@v14 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v2 | |
- 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 | |
- uses: cachix/install-nix-action@v25 | |
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@v14 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v2 | |
- 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 | |
- uses: cachix/install-nix-action@v25 | |
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@v14 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v2 | |
- 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 | |
- uses: cachix/install-nix-action@v25 | |
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@v14 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v2 | |
- 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 | |
- uses: cachix/install-nix-action@v25 | |
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@v14 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v2 | |
- 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 | |
- uses: cachix/install-nix-action@v25 | |
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@v14 | |
with: | |
name: cosmos | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v2 | |
- 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 |