fix duplicate constants in e2e tests (#174) #305
This file contains hidden or 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
| # Runs E2E tests against Kurtosis. | |
| name: e2e | |
| on: | |
| pull_request: | |
| merge_group: | |
| push: | |
| branches: [main] | |
| env: | |
| CARGO_TERM_COLOR: always | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
| cancel-in-progress: true | |
| jobs: | |
| e2e: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| cache-on-failure: true | |
| - uses: taiki-e/install-action@nextest | |
| - name: Install Foundry | |
| uses: foundry-rs/foundry-toolchain@v1 | |
| - name: Set up Docker Buildx | |
| uses: docker/setup-buildx-action@v3 | |
| - name: Install Kurtosis | |
| run: | | |
| echo "deb [trusted=yes] https://apt.fury.io/kurtosis-tech/ /" | sudo tee /etc/apt/sources.list.d/kurtosis.list | |
| sudo apt update | |
| sudo apt install kurtosis-cli | |
| - name: Build Odyssey | |
| run: | | |
| cargo build --profile release --locked --bin odyssey && | |
| mkdir dist/ && | |
| cp ./target/release/odyssey dist/odyssey && | |
| docker buildx build . --load -f .github/assets/Dockerfile -t ghcr.io/ithacaxyz/odyssey:latest | |
| - name: Run enclave | |
| id: kurtosis | |
| run: | | |
| kurtosis engine start | |
| kurtosis run --enclave op-devnet github.com/ethpandaops/optimism-package --args-file ./etc/kurtosis.yaml | |
| ENCLAVE_ID=$(curl http://127.0.0.1:9779/api/enclaves | jq --raw-output 'keys[0]') | |
| SEQUENCER_EL_PORT=$(curl "http://127.0.0.1:9779/api/enclaves/$ENCLAVE_ID/services" | jq '."op-el-41144114-1-op-reth-op-node-op-kurtosis".public_ports.rpc.number') | |
| curl "http://127.0.0.1:9779/api/enclaves/$ENCLAVE_ID/services" | jq '.' | |
| REPLICA_EL_PORT=$(curl "http://127.0.0.1:9779/api/enclaves/$ENCLAVE_ID/services" | jq '."op-el-41144114-2-op-reth-op-node-op-kurtosis".public_ports.rpc.number') | |
| echo "SEQUENCER_RPC=http://127.0.0.1:$SEQUENCER_EL_PORT" >> $GITHUB_ENV | |
| echo "REPLICA_RPC=http://127.0.0.1:$REPLICA_EL_PORT" >> $GITHUB_ENV | |
| - name: Wait for pectra | |
| run: | | |
| while true; do sleep 5; current_head=$(cast bn --rpc-url=$REPLICA_RPC); echo "L1 Execution is starting up, head is $current_head"; if [ "$current_head" -ge "32" ]; then echo "L1 Execution is post-pectra!"; break; fi; done | |
| - name: Run E2E tests | |
| run: | | |
| cargo nextest run \ | |
| --locked \ | |
| --workspace \ | |
| -E "package(odyssey-e2e-tests)" |