Skip to content

Bump libp2p-gossipsub from 0.49.2 to 0.49.4 #3007

Bump libp2p-gossipsub from 0.49.2 to 0.49.4

Bump libp2p-gossipsub from 0.49.2 to 0.49.4 #3007

name: Rust
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
env:
CARGO_TERM_COLOR: always
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: Swatinem/rust-cache@v2
name: Enable Rust Caching
with:
shared-key: "build"
cache-on-failure: "true"
save-if: ${{ github.ref == 'refs/heads/main' }}
prefix-key: build
- uses: taiki-e/install-action@just
- name: Install rustfmt for nightly
run: rustup component add --toolchain nightly rustfmt
- name: Install Foundry
uses: foundry-rs/foundry-toolchain@v1
- name: Build
run: just build-release
- name: Upload binaries
uses: actions/upload-artifact@v4
with:
name: binary
path: target/release/sailfish
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: Swatinem/rust-cache@v2
name: Enable Rust Caching
with:
shared-key: "tests"
cache-on-failure: "true"
save-if: ${{ github.ref == 'refs/heads/main' }}
prefix-key: tests
- uses: taiki-e/install-action@nextest
- uses: taiki-e/install-action@just
- name: Install rustfmt for nightly
run: rustup component add --toolchain nightly rustfmt
- name: Install Foundry
uses: foundry-rs/foundry-toolchain@v1
- name: Run tests
run: just test-ci
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: Swatinem/rust-cache@v2
name: Enable Rust Caching
with:
shared-key: "lint"
cache-on-failure: "true"
save-if: ${{ github.ref == 'refs/heads/main' }}
prefix-key: lint
- uses: taiki-e/install-action@just
- name: Install rustfmt for nightly
run: rustup component add --toolchain nightly rustfmt
- name: Install Foundry
uses: foundry-rs/foundry-toolchain@v1
- name: Check packages individually
run: just check-individually
- name: Run lint
run: just lint
build-docker:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: docker/setup-buildx-action@v3
- uses: taiki-e/install-action@just
- name: Build Docker
run: just docker build
integration:
runs-on: ubuntu-latest
timeout-minutes: 35
steps:
- uses: actions/checkout@v5
- uses: Swatinem/rust-cache@v2
name: Enable Rust Caching
with:
shared-key: "integration"
cache-on-failure: "true"
save-if: ${{ github.ref == 'refs/heads/main' }}
prefix-key: integration
- uses: taiki-e/install-action@just
- name: Install rustfmt for nightly
run: rustup component add --toolchain nightly rustfmt
- name: Install Foundry
uses: foundry-rs/foundry-toolchain@v1
- name: Run sailfish demo
run: just run-sailfish-demo
- name: Test with block-maker
run: just test-all
- name: Test without express lane
run: just test-no-express
- name: Test dynamic committee change
run: just test-dyn-comm
netsim:
runs-on: ubuntu-latest
timeout-minutes: 25
steps:
- uses: actions/checkout@v5
- uses: Swatinem/rust-cache@v2
name: Enable Rust Caching
with:
shared-key: "netsim"
cache-on-failure: "true"
save-if: ${{ github.ref == 'refs/heads/main' }}
prefix-key: netsim
- name: Show net devices
run: ip -o addr show scope global
- uses: taiki-e/install-action@just
- name: Install rustfmt for nightly
run: rustup component add --toolchain nightly rustfmt
- name: Install Foundry
uses: foundry-rs/foundry-toolchain@v1
- name: Run network simulation
run: just forward-ipv4 true create-net netsim 5
nitro-integration:
runs-on: ubuntu-latest
timeout-minutes: 35
steps:
- uses: actions/checkout@v4
- uses: taiki-e/install-action@just
- name: Run Timeboost integration
run: |
just docker run-integration-ci
timeout 20m docker wait $(cd docker && docker compose -f docker-compose.yml ps -q block-verifier)
- name: Docker logs - docker-node0-1
if: always()
run: docker logs docker-node0-1 || echo "(no logs or container not found)"
- name: Docker logs - docker-node1-1
if: always()
run: docker logs docker-node1-1 || echo "(no logs or container not found)"
- name: Docker logs - docker-node2-1
if: always()
run: docker logs docker-node2-1 || echo "(no logs or container not found)"
- name: Docker logs - docker-node3-1
if: always()
run: docker logs docker-node3-1 || echo "(no logs or container not found)"
- name: Docker logs - docker-nitro0-1
if: always()
run: docker logs docker-nitro0-1 || echo "(no logs or container not found)"
- name: Docker logs - docker-nitro1-1
if: always()
run: docker logs docker-nitro1-1 || echo "(no logs or container not found)"
- name: Docker logs - docker-nitro2-1
if: always()
run: docker logs docker-nitro2-1 || echo "(no logs or container not found)"
- name: Docker logs - docker-nitro2-1
if: always()
run: docker logs docker-nitro2-1 || echo "(no logs or container not found)"
- name: Docker logs - docker-nitro3-1
if: always()
run: docker logs docker-nitro3-1 || echo "(no logs or container not found)"
- name: Docker logs - docker-block-checker-1
if: always()
run: docker logs docker-block-checker-1 || echo "(no logs or container not found)"
- name: Docker logs - docker-block-verifier-1
if: always()
run: docker logs docker-block-verifier-1 || echo "(no logs or container not found)"
- name: Docker logs - docker-tx-generator-1
if: always()
run: docker logs docker-tx-generator-1 || echo "(no logs or container not found)"