Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ci: multichain-testing with go-relayer #10182

Open
wants to merge 5 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/multichain-e2e-template.yml
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ jobs:
working-directory: ./agoric-sdk/multichain-testing

- name: Run @agoric/multichain-testing E2E Tests
run: yarn ${{ inputs.test_command }}
run: ${{ inputs.test_command }}
working-directory: ./agoric-sdk/multichain-testing
env:
FILE: ${{ inputs.config }}
Expand Down
46 changes: 40 additions & 6 deletions .github/workflows/multichain-e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,53 @@ name: Multichain E2E Tests

on:
workflow_dispatch:
turadg marked this conversation as resolved.
Show resolved Hide resolved
inputs:
test_type:
description: 'Select which test to run'
type: choice
required: true
options:
- orchestration-api-hermes
- fast-usdc-hermes
- orchestration-api-go-relayer
- fast-usdc-go-relayer
workflow_call:

jobs:
orchestration-api-test:
name: Multichain E2E (Orchestration API)
orchestration-api-hermes:
name: Multichain E2E (Orchestration API - Hermes)
if: |
github.event_name == 'workflow_call' ||
(github.event_name == 'workflow_dispatch' && inputs.test_type == 'orchestration-api-hermes')
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please update the job names to match the test_type selector.

uses: ./.github/workflows/multichain-e2e-template.yml
with:
config: config.yaml
test_command: test:main
test_command: yarn test:main

fast-usdc-test:
name: Multichain E2E (Fast USDC)
fast-usdc-hermes:
name: Multichain E2E (Fast USDC - Hermes)
if: |
github.event_name == 'workflow_call' ||
(github.event_name == 'workflow_dispatch' && inputs.test_type == 'fast-usdc-hermes')
uses: ./.github/workflows/multichain-e2e-template.yml
with:
config: config.fusdc.yaml
test_command: test:fast-usdc
test_command: yarn test:fast-usdc

orchestration-api-go-relayer:
name: Multichain E2E (Orchestration API - Go Relayer)
# run on dispatch only
if: github.event_name == 'workflow_dispatch' && inputs.test_type == 'orchestration-api-go-relayer'
uses: ./.github/workflows/multichain-e2e-template.yml
with:
config: config.go-relayer.yaml
test_command: RELAYER_TYPE=go-relayer yarn test:main

fast-usdc-go-relayer:
name: Multichain E2E (Fast USDC - Go Relayer)
# run on dispatch only
if: github.event_name == 'workflow_dispatch' && inputs.test_type == 'fast-usdc-go-relayer'
uses: ./.github/workflows/multichain-e2e-template.yml
with:
config: config.fusdc.go-relayer.yaml
test_command: RELAYER_TYPE=go-relayer yarn test:fast-usdc
15 changes: 12 additions & 3 deletions multichain-testing/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -88,8 +88,17 @@ make tail-slog
kubectl logs agoriclocal-genesis-0 --container=validator --follow

# relayer logs
kubectl logs hermes-agoric-gaia-0 --container=relayer --follow
kubectl logs hermes-osmosis-gaia-0 --container=relayer --follow
kubectl logs hermes-agoric-cosmoshub-0 --container=relayer --follow
kubectl logs hermes-osmosis-cosmoshub-0 --container=relayer --follow
```

## Running with Go Relayer

```sh
# run tests with go-relayer configuration
make start FILE=config.go-relayer.yaml

RELAYER_TYPE=go-relayer yarn test
```

## Agoric Smart Wallet
Expand All @@ -116,6 +125,6 @@ These only work if you've done `make port-forward`.

- http://localhost:8081/chains/agoriclocal
- http://localhost:8081/chains/osmosislocal
- http://localhost:8081/chains/gaialocal
- http://localhost:8081/chains/cosmoshublocal
- http://localhost:8081/chains/agoriclocal/keys
- http://localhost:8081/ibc
112 changes: 112 additions & 0 deletions multichain-testing/config.fusdc.go-relayer.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
name: agoric-multichain-testing-fusdc-go-relayer
version: 0.2.20

chains:
- id: agoriclocal
name: agoric
image: ghcr.io/agoric/agoric-sdk:dev
numValidators: 1
env:
- name: DEBUG
value: SwingSet:vat,SwingSet:ls
genesis:
app_state:
staking:
params:
unbonding_time: '2m'
swingset:
params:
bootstrap_vat_config: '@agoric/vm-config/decentral-itest-orchestration-config.json'
scripts:
updateConfig:
file: scripts/update-config.sh
faucet:
enabled: true
type: starship
ports:
rest: 1317
rpc: 26657
exposer: 38087
grpc: 9090
faucet: 8082
resources:
cpu: 1
memory: 4Gi
- id: osmosislocal
name: osmosis
numValidators: 1
genesis:
app_state:
staking:
params:
unbonding_time: '2m'
interchain_accounts:
host_genesis_state:
params:
host_enabled: true
allow_messages: ['*']
interchainquery:
host_port: 'icqhost'
params:
host_enabled: true
allow_queries:
- /cosmos.bank.v1beta1.Query/Balance
- /cosmos.bank.v1beta1.Query/AllBalances
faucet:
enabled: true
type: starship
ports:
rest: 1315
rpc: 26655
grpc: 9093
faucet: 8084
resources:
cpu: 1
memory: 1Gi
- id: noblelocal
name: noble
numValidators: 1
genesis:
app_state:
staking:
params:
unbonding_time: '2m'
faucet:
enabled: true
type: starship
ports:
rest: 1314
rpc: 26654
grpc: 9092
faucet: 8083
resources:
cpu: 1
memory: 1Gi

relayers:
- name: osmosis-noble
type: go-relayer
replicas: 1
chains:
- osmosislocal
- noblelocal
- name: agoric-osmosis
type: go-relayer
replicas: 1
chains:
- agoriclocal
- osmosislocal
- name: agoric-noble
type: go-relayer
replicas: 1
chains:
- agoriclocal
- noblelocal

explorer:
enabled: false

registry:
enabled: true
ports:
rest: 8081
4 changes: 3 additions & 1 deletion multichain-testing/config.fusdc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,14 @@ chains:
updateConfig:
file: scripts/update-config.sh
faucet:
enabled: false
enabled: true
type: starship
ports:
rest: 1317
rpc: 26657
exposer: 38087
grpc: 9090
faucet: 8082
resources:
cpu: 1
memory: 4Gi
Expand Down
117 changes: 117 additions & 0 deletions multichain-testing/config.go-relayer.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
name: agoric-multichain-testing-go-relayer
version: 0.2.20

chains:
- id: agoriclocal
name: agoric
image: ghcr.io/agoric/agoric-sdk:dev
numValidators: 1
env:
- name: DEBUG
value: SwingSet:vat,SwingSet:ls
genesis:
app_state:
staking:
params:
unbonding_time: '2m'
swingset:
params:
bootstrap_vat_config: '@agoric/vm-config/decentral-itest-orchestration-config.json'
scripts:
updateConfig:
file: scripts/update-config.sh
faucet:
enabled: true
type: starship
ports:
rest: 1317
rpc: 26657
exposer: 38087
grpc: 9090
faucet: 8082
resources:
cpu: 1
memory: 4Gi
- id: osmosislocal
name: osmosis
numValidators: 1
genesis:
app_state:
staking:
params:
unbonding_time: '2m'
interchain_accounts:
host_genesis_state:
params:
host_enabled: true
allow_messages: ['*']
interchainquery:
host_port: 'icqhost'
params:
host_enabled: true
allow_queries:
- /cosmos.bank.v1beta1.Query/Balance
- /cosmos.bank.v1beta1.Query/AllBalances
faucet:
enabled: true
type: starship
ports:
rest: 1315
rpc: 26655
grpc: 9093
faucet: 8084
resources:
cpu: 1
memory: 1Gi
- id: cosmoshublocal
name: cosmoshub
numValidators: 1
genesis:
app_state:
staking:
params:
unbonding_time: '2m'
interchain_accounts:
host_genesis_state:
params:
host_enabled: true
allow_messages: ['*']
faucet:
enabled: true
type: starship
ports:
rest: 1314
rpc: 26654
grpc: 9092
faucet: 8083
resources:
cpu: 1
memory: 1Gi

relayers:
- name: osmosis-cosmoshub
type: go-relayer
replicas: 1
chains:
- osmosislocal
- cosmoshublocal
- name: agoric-osmosis
type: go-relayer
replicas: 1
chains:
- agoriclocal
- osmosislocal
- name: agoric-cosmoshub
type: go-relayer
replicas: 1
chains:
- agoriclocal
- cosmoshublocal

explorer:
enabled: false

registry:
enabled: true
ports:
rest: 8081
14 changes: 8 additions & 6 deletions multichain-testing/config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,14 @@ chains:
updateConfig:
file: scripts/update-config.sh
faucet:
enabled: false
enabled: true
type: starship
ports:
rest: 1317
rpc: 26657
exposer: 38087
grpc: 9090
faucet: 8082
resources:
cpu: 1
memory: 4Gi
Expand Down Expand Up @@ -61,7 +63,7 @@ chains:
resources:
cpu: 1
memory: 1Gi
- id: gaialocal
- id: cosmoshublocal
name: cosmoshub
numValidators: 1
genesis:
Expand All @@ -87,24 +89,24 @@ chains:
memory: 1Gi

relayers:
- name: osmosis-gaia
- name: osmosis-cosmoshub
type: hermes
replicas: 1
chains:
- osmosislocal
- gaialocal
- cosmoshublocal
- name: agoric-osmosis
type: hermes
replicas: 1
chains:
- agoriclocal
- osmosislocal
- name: agoric-gaia
- name: agoric-cosmoshub
type: hermes
replicas: 1
chains:
- agoriclocal
- gaialocal
- cosmoshublocal

explorer:
enabled: false
Expand Down
Loading
Loading