Skip to content

Commit

Permalink
Merge branch 'main' into ENG-718/rework_fees_again
Browse files Browse the repository at this point in the history
  • Loading branch information
ethanoroshiba committed Sep 26, 2024
2 parents aa2c9ff + 33dae42 commit a5363ec
Show file tree
Hide file tree
Showing 78 changed files with 2,852 additions and 1,979 deletions.
11 changes: 8 additions & 3 deletions .cargo/audit.toml
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
[advisories]
# RUSTSEC-2021-0139: `ansi_term` is Unmaintained. It is a transient dependency of penumbra crates
# and dylint, so cannot easily be replaced.
ignore = ["RUSTSEC-2021-0139"]
ignore = [
# `ansi_term` is Unmaintained. It is a transient dependency of penumbra crates and dylint, so
# cannot easily be replaced.
"RUSTSEC-2021-0139",
# `proc-macro-error` is Unmaintained. It is a transient dependency of borsh crates, so cannot
# easily be replaced.
"RUSTSEC-2024-0370",
]
44 changes: 29 additions & 15 deletions .github/workflows/docker-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ on:
- sequencer
- sequencer-relayer
- evm-bridge-withdrawer
- cli
merge_group:
push:
branches:
Expand Down Expand Up @@ -118,8 +119,23 @@ jobs:
force: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.target == 'evm-bridge-withdrawer' }}
secrets: inherit

cli:
needs: run_checker
if: needs.run_checker.outputs.run_docker == 'true' || (github.event_name == 'workflow_dispatch' && github.event.inputs.target == 'cli')
uses: "./.github/workflows/reusable-docker-build.yml"
permissions:
contents: read
id-token: write
packages: write
with:
depot-project-id: kcchkd09m0
package-name: astria-cli
binary-name: cli
tag: ${{ inputs.tag }}
secrets: inherit

smoke-test:
needs: [run_checker, composer, conductor, sequencer, sequencer-relayer, evm-bridge-withdrawer]
needs: [run_checker, composer, conductor, sequencer, sequencer-relayer, evm-bridge-withdrawer, cli]
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:
Expand All @@ -130,9 +146,6 @@ jobs:
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:
Expand All @@ -149,10 +162,12 @@ jobs:
just deploy smoke-test $TAG
- name: Run Smoke test
timeout-minutes: 3
run: just run-smoke-test
run: |
TAG=sha-$(git rev-parse --short HEAD)
just run-smoke-test $TAG
smoke-cli:
needs: [run_checker, composer, conductor, sequencer, sequencer-relayer, evm-bridge-withdrawer]
needs: [run_checker, composer, conductor, sequencer, sequencer-relayer, evm-bridge-withdrawer, cli]
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:
Expand All @@ -163,9 +178,6 @@ jobs:
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:
Expand All @@ -182,10 +194,12 @@ jobs:
just deploy smoke-cli $TAG
- name: Run Smoke test
timeout-minutes: 3
run: just run-smoke-cli
run: |
TAG=sha-$(git rev-parse --short HEAD)
just run-smoke-cli $TAG
ibc-bridge-test:
needs: [ run_checker, composer, conductor, sequencer, sequencer-relayer ]
needs: [ run_checker, composer, conductor, sequencer, sequencer-relayer, evm-bridge-withdrawer, cli ]
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:
Expand All @@ -196,8 +210,6 @@ jobs:
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:
Expand All @@ -214,11 +226,13 @@ jobs:
just ibc-test deploy $TAG
- name: Run IBC ICS20 Transfer test
timeout-minutes: 3
run: just ibc-test run
run: |
TAG=sha-$(git rev-parse --short HEAD)
just ibc-test run $TAG
docker:
if: ${{ always() && !cancelled() }}
needs: [composer, conductor, sequencer, sequencer-relayer, evm-bridge-withdrawer, smoke-test, smoke-cli, ibc-bridge-test]
needs: [composer, conductor, sequencer, sequencer-relayer, evm-bridge-withdrawer, cli, smoke-test, smoke-cli, ibc-bridge-test]
uses: ./.github/workflows/reusable-success.yml
with:
success: ${{ !contains(needs.*.result, 'failure') }}
4 changes: 2 additions & 2 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -53,10 +53,10 @@ jobs:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@master
with:
toolchain: nightly-2024-02-07
toolchain: nightly-2024-09-15
components: rustfmt
- name: run rustfmt
run: cargo fmt --all -- --check
run: cargo +nightly-2024-09-15 fmt --all -- --check

toml:
runs-on: ubuntu-22.04
Expand Down
6 changes: 5 additions & 1 deletion .github/workflows/reusable-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ on:
env:
REGISTRY: ghcr.io
FULL_REF: ${{ inputs.tag && format('refs/tags/{0}', inputs.tag) || github.ref }}
# This must match the entry in rust-toolchain.toml at the repository root
RUSTUP_TOOLCHAIN: "1.81.0"

jobs:
upload-binaries:
Expand All @@ -34,7 +36,9 @@ jobs:
- uses: actions/checkout@v4
with:
ref: ${{ inputs.tag }}
- uses: dtolnay/[email protected]
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ env.RUSTUP_TOOLCHAIN }}
- uses: arduino/setup-protoc@v3
with:
version: "24.4"
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/reusable-docker-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,8 @@ jobs:
type=ref,event=pr
type=match,pattern=refs/tags/${{ inputs.binary-name }}-v(.*),group=1,enable=${{ startsWith(env.FULL_REF, 'refs/tags/') }},value=${{ env.FULL_REF }}
type=sha
# set the actual commit SHA from the PR head instead of from the PR merge commit (alternatively, we could checkout the PR head in actions/checkout)
type=raw,value=sha-${{ github.event.pull_request.head.sha || github.sha }},enable=${{ startsWith(env.FULL_REF, 'refs/pull/') }}
# set latest tag for `main` branch
type=raw,value=latest,enable=${{ env.FULL_REF == format('refs/heads/{0}', 'main') }}
- name: Build and push
Expand Down
49 changes: 35 additions & 14 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@ name: Test
env:
CI: true
RUSTFLAGS: "-D warnings -D unreachable-pub --cfg tokio_unstable"

# This must match the entry in rust-toolchain.toml at the repository root
RUSTUP_TOOLCHAIN: "1.81.0"
on:
pull_request:
merge_group:
Expand All @@ -26,7 +29,9 @@ jobs:
version: "1.32.0"
github_token: ${{ secrets.GITHUB_TOKEN }}
- name: Install Rust toolchain
uses: dtolnay/[email protected]
uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ env.RUSTUP_TOOLCHAIN }}
- uses: Swatinem/[email protected]
with:
cache-provider: "buildjet"
Expand All @@ -51,7 +56,9 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Install Rust toolchain
uses: dtolnay/[email protected]
uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ env.RUSTUP_TOOLCHAIN }}
- uses: Swatinem/[email protected]
with:
cache-provider: "buildjet"
Expand All @@ -77,7 +84,9 @@ jobs:
- uses: actions/checkout@v4
with:
submodules: 'true'
- uses: dtolnay/[email protected]
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ env.RUSTUP_TOOLCHAIN }}
- uses: taiki-e/[email protected]
with:
tool: [email protected]
Expand All @@ -100,7 +109,9 @@ jobs:
if: needs.run_checker.outputs.run_tests == 'true'
steps:
- uses: actions/checkout@v4
- uses: dtolnay/[email protected]
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ env.RUSTUP_TOOLCHAIN }}
- uses: Swatinem/[email protected]
with:
cache-provider: "github"
Expand All @@ -113,7 +124,9 @@ jobs:
if: needs.run_checker.outputs.run_audit == 'true'
steps:
- uses: actions/checkout@v4
- uses: dtolnay/[email protected]
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ env.RUSTUP_TOOLCHAIN }}
- uses: rustsec/[email protected]
with:
token: ${{ secrets.GITHUB_TOKEN }}
Expand All @@ -126,7 +139,9 @@ jobs:
- uses: actions/checkout@v4
with:
submodules: 'true'
- uses: dtolnay/[email protected]
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ env.RUSTUP_TOOLCHAIN }}
- uses: Swatinem/[email protected]
with:
cache-provider: "buildjet"
Expand Down Expand Up @@ -154,7 +169,9 @@ jobs:
- uses: actions/checkout@v4
with:
submodules: 'true'
- uses: dtolnay/[email protected]
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ env.RUSTUP_TOOLCHAIN }}
- uses: Swatinem/[email protected]
with:
cache-provider: "buildjet"
Expand All @@ -179,7 +196,9 @@ jobs:
- uses: actions/checkout@v4
with:
submodules: 'true'
- uses: dtolnay/[email protected]
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ env.RUSTUP_TOOLCHAIN }}
- uses: Swatinem/[email protected]
with:
cache-provider: "buildjet"
Expand All @@ -198,8 +217,9 @@ jobs:
- uses: actions/checkout@v4
with:
submodules: 'true'
- uses: dtolnay/rust-toolchain@1.78.0
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ env.RUSTUP_TOOLCHAIN }}
components: clippy
- uses: Swatinem/[email protected]
with:
Expand All @@ -226,24 +246,25 @@ jobs:
- uses: actions/checkout@v4
with:
submodules: 'true'
- uses: dtolnay/rust-toolchain@v1
- uses: dtolnay/rust-toolchain@master
with:
# This has to match `rust-toolchain` in the rust-toolchain file of the dylint lints
toolchain: nightly-2023-12-28
components: "clippy, llvm-tools-preview, rustc-dev"
toolchain: nightly-2024-09-05
components: "clippy, llvm-tools-preview, rustc-dev, rust-src"
- uses: Swatinem/[email protected]
with:
cache-provider: "buildjet"
- name: install cargo-dylint and dylint-link
run: cargo install cargo-dylint@2.6.1 dylint-link@2.6.1 --locked
run: cargo install cargo-dylint@3.2.0 dylint-link@3.2.0 --locked
- uses: arduino/setup-protoc@v3
with:
version: "24.4"
repo-token: ${{ secrets.GITHUB_TOKEN }}
- name: run clippy against custom lints
run: |
: # list all lint packages here to have clippy explicitly test them
cargo clippy --all-targets --all-features \
: # uses the same nightly installed above to work around the entry in rust-toolchain.toml
cargo +nightly-2024-09-05 clippy --all-targets --all-features \
-p tracing_debug_field \
-- --warn clippy::pedantic --deny warnings
- name: run dylint clippy on workspace crates
Expand Down
Loading

0 comments on commit a5363ec

Please sign in to comment.