Skip to content

fix: slow L3 sequencer to 333ms to avoid msgIdx race #63

fix: slow L3 sequencer to 333ms to avoid msgIdx race

fix: slow L3 sequencer to 333ms to avoid msgIdx race #63

Workflow file for this run

name: Test Action
on:
pull_request:
workflow_dispatch:
inputs:
snapshot-version:
description: "Snapshot release tag to install"
required: false
default: "v0.1.6"
type: string
jobs:
test-l3-eth-action:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20
- name: Setup pnpm
uses: pnpm/action-setup@v4
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Install snapshot
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TESTNODE_SNAPSHOT_GH_REPO: ${{ github.repository }}
run: pnpm dev snapshot install --force --release-tag "${{ inputs.snapshot-version || 'v0.1.6' }}"
- name: Prepare testnode context
run: node scripts/ci/prepare-testnode-context.mjs --variant l3-eth --snapshot-id default
- name: Build local testnode image
run: docker build -f docker/testnode.Dockerfile -t local/arbitrum-testnode:${{ github.sha }}-nc3.2-l3-eth .
- name: Run action
id: action
uses: ./
with:
image-repository: local/arbitrum-testnode
l3-enabled: true
nitro-contracts-version: v3.2
version: ${{ github.sha }}
- name: Validate outputs
run: |
test -f "${{ steps.action.outputs.local-network-path }}"
test -f "${{ steps.action.outputs.l1l2-network-path }}"
test -f "${{ steps.action.outputs.l2l3-network-path }}"
curl -s -X POST -H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}' \
"${{ steps.action.outputs.l1-rpc-url }}"
curl -s -X POST -H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}' \
"${{ steps.action.outputs.l2-rpc-url }}"
curl -s -X POST -H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}' \
"${{ steps.action.outputs.l3-rpc-url }}"
- name: Validate health endpoint
run: |
curl -sf http://127.0.0.1:8080/health
curl -sf http://127.0.0.1:8080/config/localNetwork.json > /dev/null
- name: Validate config server index
run: curl -sf http://127.0.0.1:8080/
test-published-image-action:
runs-on: ubuntu-latest
permissions:
contents: read
packages: read
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20
- name: Setup pnpm
uses: pnpm/action-setup@v4
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Log in to GHCR
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Run action against published image
id: action
uses: ./
with:
version: dl-ci-fast-2
nitro-contracts-version: v3.2
l3-enabled: true
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: Validate L2 RPC
run: |
curl -s -X POST -H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}' \
"${{ steps.action.outputs.l2-rpc-url }}"