Skip to content

Commit

Permalink
Merge branch 'main' into joroshiba/breakup-rollup
Browse files Browse the repository at this point in the history
* main: (24 commits)
  chore: update `bytes` and `ics23` crates (#1279)
  fix(sequencer): improve and fix instrumentation (#1255)
  feature(charts): hermes chart fixes, bech32 updates, ibc bridge test (#1130)
  chore(cli): remove unused rollup cli code (#1275)
  chore(test): use a temporary file to not pollute the workspace (#1269)
  chore(sequencer): add mempool benchmarks (#1238)
  fix(bridge-withdrawer)!: fix nonce handling (#1215)
  feat(cli, bridge-withdrawer)!: share code between cli and service (#1270)
  feat(cli): add cmd to collect withdrawal events and submit as actions (#1261)
  fix(core, bridge, sequencer)!: dismabiguate return addresses (#1266)
  fix(withdrawer): support withdrawer address that differs from bridge address   (#1262)
  (core, sequencer)!: generate serde traits impls for all protocol protobufs (#1260)
  fix(charts): add resources for sequencer/cometbft (#1254)
  chore(sequencer)!: add metrics (#1248)
  fix(sequencer-utils): fixes issue in `parse_blob` tests (#1243)
  feat(core, proto)!: make bridge unlock memo string (#1244)
  fix(conductor): don't panic during panic (#1252)
  feat(core)!: lowerCamelCase for protobuf json mapping (#1250)
  refactor(bridge-withdrawer)!: refactor startup to a separate subtask and remove balance check from startup (#1190)
  fix: rollup archive node configurations (#1249)
  ...
  • Loading branch information
steezeburger committed Jul 18, 2024
2 parents 48119b5 + 23e45be commit ec89454
Show file tree
Hide file tree
Showing 164 changed files with 11,591 additions and 4,320 deletions.
86 changes: 83 additions & 3 deletions .github/workflows/docker-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ on:
- "**-v[0-9]+.[0-9]+.[0-9]+-alpha.[0-9]+"
- "**-v[0-9]+.[0-9]+.[0-9]+-beta.[0-9]+"
- "**-v[0-9]+.[0-9]+.[0-9]+-rc[0-9]+"

pull_request:
types:
- opened
Expand Down Expand Up @@ -135,7 +135,7 @@ jobs:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Setup Smoke Test Environment
timeout-minutes: 5
timeout-minutes: 10
run: |
TAG=sha-$(git rev-parse --short HEAD)
just deploy cluster
Expand All @@ -146,9 +146,89 @@ jobs:
timeout-minutes: 3
run: just run-smoke-test

smoke-cli:
needs: [run_checker, composer, conductor, sequencer, sequencer-relayer, evm-bridge-withdrawer]
if: (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == 'astriaorg/astria') && (github.event_name == 'merge_group' || needs.run_checker.outputs.run_docker == 'true')
runs-on: buildjet-8vcpu-ubuntu-2204
steps:
- uses: actions/checkout@v4
- name: Install just
uses: taiki-e/install-action@just
- name: Install kind
uses: helm/kind-action@v1
with:
install_only: true
- name: Install astria cli (rust)
run: |
just install-cli
- name: Log in to GHCR
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Setup Smoke Test Environment
timeout-minutes: 5
run: |
TAG=sha-$(git rev-parse --short HEAD)
just deploy cluster
kubectl create secret generic regcred --from-file=.dockerconfigjson=$HOME/.docker/config.json --type=kubernetes.io/dockerconfigjson
echo -e "\n\nDeploying with astria images tagged $TAG"
just deploy smoke-cli $TAG
- name: Run Smoke test
timeout-minutes: 3
run: just run-smoke-cli

ibc-bridge-test:
needs: [ run_checker, composer, conductor, sequencer, sequencer-relayer ]
if: (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == 'astriaorg/astria') && (github.event_name == 'merge_group' || needs.run_checker.outputs.run_docker == 'true')
runs-on: buildjet-8vcpu-ubuntu-2204
steps:
- uses: actions/checkout@v4
- name: Install just
uses: taiki-e/install-action@just
- name: Install kind
uses: helm/kind-action@v1
with:
install_only: true
- name: Log in to GHCR
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Setup IBC Bridge Test Environment
timeout-minutes: 5
run: |
TAG=sha-$(git rev-parse --short HEAD)
just deploy cluster
kubectl create secret generic regcred --from-file=.dockerconfigjson=$HOME/.docker/config.json --type=kubernetes.io/dockerconfigjson
echo -e "\n\nDeploying with astria images tagged $TAG"
just deploy ibc-test-infra $TAG
just build-and-load-bridge-tester-image $TAG
- name: Run IBC Bridge Tester
timeout-minutes: 2
run: |
TAG=sha-$(git rev-parse --short HEAD)
printlogs() {
echo "IBC Transfer Test failed, printing logs..."
kubectl describe job bridge-tester-chart -n astria-dev-cluster
kubectl logs job/bridge-tester-chart --all-containers -n astria-dev-cluster
exit 1
}
just deploy bridge-tester $TAG
# timeout before the gh job times out so we can print logs
kubectl wait --for=condition=complete --timeout=90s job/bridge-tester-chart -n astria-dev-cluster || printlogs
JOB_STATUS=$(kubectl get job bridge-tester-chart -n astria-dev-cluster -o jsonpath='{.status.succeeded}')
if [ "$JOB_STATUS" != "1" ]; then
printlogs
else
echo "IBC Transfer Test passed"
fi
docker:
if: ${{ always() && !cancelled() }}
needs: [composer, conductor, sequencer, sequencer-relayer, evm-bridge-withdrawer, smoke-test]
needs: [composer, conductor, sequencer, sequencer-relayer, evm-bridge-withdrawer, smoke-test, smoke-cli]
uses: ./.github/workflows/reusable-success.yml
with:
success: ${{ !contains(needs.*.result, 'failure') }}
27 changes: 26 additions & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,31 @@ jobs:
exit 1
fi
solidity-contracts-compiled:
runs-on: ubuntu-22.04
needs: run_checker
if: needs.run_checker.outputs.run_tests == 'true'
steps:
- uses: actions/checkout@v4
- name: Install Rust toolchain
uses: dtolnay/[email protected]
- uses: Swatinem/[email protected]
with:
cache-provider: "buildjet"
- name: Install just
uses: taiki-e/install-action@just
- name: Check if protobuf specs compile to commited Rust sources
run: |
just compile-solidity-contracts
modified=$(git status --porcelain)
if [[ -n "$modified" ]]; then
echo "ERROR: solidity contracts are out of sync with the commited Rust sources"
echo "Recompile locally with \`just compile-solidity-contracts\` and commit to the repository."
echo "Files that reported differences:"
echo "$modified"
exit 1
fi
compiles:
runs-on: buildjet-4vcpu-ubuntu-2204
needs: run_checker
Expand Down Expand Up @@ -232,7 +257,7 @@ jobs:
test:
if: ${{ always() && !cancelled() }}
needs: [compiles, protos-compiled, rust, doctest, clippy, lockfile, custom-lints]
needs: [compiles, protos-compiled, solidity-contracts-compiled, rust, doctest, clippy, lockfile, custom-lints]
uses: ./.github/workflows/reusable-success.yml
with:
success: ${{ !contains(needs.*.result, 'failure') }}
6 changes: 3 additions & 3 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
[submodule "crates/astria-bridge-withdrawer/astria-bridge-contracts"]
path = crates/astria-bridge-withdrawer/astria-bridge-contracts
url = https://github.com/astriaorg/astria-bridge-contracts.git
[submodule "crates/astria-bridge-contracts/astria-bridge-contracts"]
path = crates/astria-bridge-contracts/astria-bridge-contracts
url = https://github.com/astriaorg/astria-bridge-contracts
Loading

0 comments on commit ec89454

Please sign in to comment.