besu-package: fix dockerfile classpath (#1021)

* besu-package: fix dockerfile classpath

* besu-package: update local stack

* fid tracer version on coordinator configs beta-v2.1-rc16.1

* fid tracer version on coordinator configs beta-v2.1-rc16.1

* feat: revise workflow to trigger e2e on dockerfile change, update sed command, and update coordinator config

* feat: revert the coordinator config for l2-network-gas-pricing

* update local images

* staterecovery: synchronize latch variable

---------

Co-authored-by: jonesho <jones.ho@consensys.net>
This commit is contained in:
Fluent Crafter
2025-05-19 12:08:42 +01:00
committed by GitHub
parent 89e9c2cbca
commit cd49558fcf
8 changed files with 47 additions and 48 deletions

View File

@@ -48,6 +48,7 @@ jobs:
outputs:
versions_env: ${{ steps.filter.outputs.versions-env }}
linea_configs: ${{ steps.filter.outputs.linea-configs }}
dockerfile: ${{ steps.filter.outputs.dockerfile }}
steps:
- name: Checkout
uses: actions/checkout@v4
@@ -60,17 +61,19 @@ jobs:
filters: |
versions-env:
- 'linea-besu-package/versions.env'
dockerfile:
- 'linea-besu-package/linea-besu/Dockerfile'
linea-configs:
- 'linea-besu-package/linea-besu/**'
build-test-push:
needs: [ filter-commit-changes ]
if: ${{ always() && !cancelled() }}
if: ${{ always() && !cancelled() && (needs.filter-commit-changes.result == 'skipped' || needs.filter-commit-changes.result == 'success') }}
uses: ./.github/workflows/reuse-linea-besu-package-build-test-push.yml
with:
release_tag_prefix: ${{ inputs.release_tag_prefix }}
run_test: true
run_e2e_test: ${{ github.event_name == 'workflow_dispatch' || needs.filter-commit-changes.outputs.versions_env == 'true' }}
run_e2e_test: ${{ github.event_name == 'workflow_dispatch' || needs.filter-commit-changes.outputs.versions_env == 'true' || needs.filter-commit-changes.outputs.dockerfile == 'true' }}
push_image: ${{ github.event_name == 'workflow_dispatch' }}
skip_e2e_test: ${{ inputs.skip_e2e_test == 'true' }}
expected_traces_api_ver: ${{ inputs.expected_traces_api_ver }}

View File

@@ -78,9 +78,11 @@ jobs:
- name: Replace expected traces api version in coordinator config file
shell: bash
run: |
sed -i 's/^\(expected-traces-api-version-v2=\).*/\1"${{ env.EXPECTED_TRACES_API_VERSION }}"/' config/coordinator/coordinator-docker.config.toml
sed -i 's/^\(expected-traces-api-version-v2=\).*/\1"${{ env.EXPECTED_TRACES_API_VERSION }}"/' config/coordinator/coordinator-docker-traces-v2-override.config.toml
echo "EXPECTED_TRACES_API_VERSION=${{ env.EXPECTED_TRACES_API_VERSION }}"
echo "BESU_PACKAGE_TAG=${{ env.BESU_PACKAGE_TAG }}"
echo "$(grep expected-traces-api-version-v2 config/coordinator/coordinator-docker.config.toml)"
echo "$(grep expected-traces-api-version-v2 config/coordinator/coordinator-docker-traces-v2-override.config.toml)"
- name: Spin up fresh environment with besu tracing with retry
uses: nick-fields/retry@v3

View File

@@ -28,6 +28,8 @@ class StateSynchronizerService(
log = log,
pollingIntervalMs = pollingInterval.inWholeMilliseconds
) {
@get:Synchronized
@set:Synchronized
var stateRootMismatchFound: Boolean = false
private set(value) {
field = value

View File

@@ -11,7 +11,6 @@ fs-responses-directory = "/data/prover/v3/aggregation/responses"
[traces]
blob-compressor-version="V1_0_1"
expected-traces-api-version-v2="beta-v2.1-rc16"
[traces.counters-v2]
endpoints=["http://traces-node:8545/"]
request-limit-per-endpoint=1

View File

@@ -58,7 +58,7 @@ fs-responses-directory = "/data/prover/v2/aggregation/responses"
[traces]
blob-compressor-version="V0_1_0"
raw-execution-traces-version="0.2.0"
expected-traces-api-version-v2="beta-v2.1-rc14"
expected-traces-api-version-v2="beta-v2.1-rc16"
[traces.counters-v2]
endpoints=["http://traces-node:8545/"]
request-limit-per-endpoint=1

View File

@@ -2,7 +2,7 @@ services:
l1-el-node:
container_name: l1-el-node
hostname: l1-el-node
image: consensys/linea-besu-package:${BESU_PACKAGE_TAG:-beta-v2.1-rc16-20250513130608-1d82381}
image: consensys/linea-besu-package:${BESU_PACKAGE_TAG:-beta-v2.1-rc16-20250519095346-8289dbe}
profiles: [ "l1", "debug", "external-to-monorepo" ]
depends_on:
l1-node-genesis-generator:
@@ -20,7 +20,7 @@ services:
- -c
- |
rm -fr /opt/besu/plugins && \
/opt/besu/bin/besu --config-file=/config/config.toml
/opt/besu/bin/besu-untuned --config-file=/config/config.toml
volumes:
- ./config/l1-node/el/besu.key:/config/keys/besu.key:ro
- ./config/l1-node/el/config.toml:/config/config.toml:ro

View File

@@ -5,7 +5,7 @@ services:
sequencer:
hostname: sequencer
container_name: sequencer
image: consensys/linea-besu-package:${BESU_PACKAGE_TAG:-beta-v2.1-rc16-20250513130608-1d82381}
image: consensys/linea-besu-package:${BESU_PACKAGE_TAG:-beta-v2.1-rc16-20250519095346-8289dbe}
profiles: [ "l2", "l2-bc", "debug", "external-to-monorepo" ]
ports:
- "8545:8545"
@@ -22,18 +22,15 @@ services:
restart: "no"
environment:
LOG4J_CONFIGURATION_FILE: /var/lib/besu/log4j.xml
entrypoint:
- /bin/bash
- -c
- |
/opt/besu/bin/besu \
--config-file=/var/lib/besu/sequencer.config.toml \
--node-private-key-file="/var/lib/besu/key" \
--plugin-linea-l1-polling-interval="PT12S" \
--plugin-linea-l1-smart-contract-address="0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9" \
--plugin-linea-l1-rpc-endpoint="http://l1-el-node:8545" \
--plugin-linea-rejected-tx-endpoint="http://transaction-exclusion-api:8080" \
--plugin-linea-node-type="SEQUENCER"
entrypoint: besu-untuned
command:
- --config-file=/var/lib/besu/sequencer.config.toml
- --node-private-key-file=/var/lib/besu/key
- --plugin-linea-l1-polling-interval=PT12S
- --plugin-linea-l1-smart-contract-address=0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9
- --plugin-linea-l1-rpc-endpoint=http://l1-el-node:8545
- --plugin-linea-rejected-tx-endpoint=http://transaction-exclusion-api:8080
- --plugin-linea-node-type=SEQUENCER
volumes:
- ./config/linea-besu-sequencer/sequencer.config.toml:/var/lib/besu/sequencer.config.toml:ro
- ./config/linea-besu-sequencer/deny-list.txt:/var/lib/besu/deny-list.txt:ro
@@ -82,7 +79,7 @@ services:
l2-node-besu:
hostname: l2-node-besu
container_name: l2-node-besu
image: consensys/linea-besu-package:${BESU_PACKAGE_TAG:-beta-v2.1-rc16-20250513130608-1d82381}
image: consensys/linea-besu-package:${BESU_PACKAGE_TAG:-beta-v2.1-rc16-20250519095346-8289dbe}
profiles: [ "l2", "l2-bc", "debug", "external-to-monorepo" ]
depends_on:
sequencer:
@@ -101,19 +98,16 @@ services:
restart: "no"
environment:
LOG4J_CONFIGURATION_FILE: /var/lib/besu/log4j.xml
entrypoint:
- /bin/bash
- -c
- |
/opt/besu/bin/besu \
--config-file=/var/lib/besu/l2-node-besu.config.toml \
--genesis-file=/var/lib/besu/genesis.json \
--plugin-linea-l1-polling-interval="PT12S" \
--plugin-linea-l1-smart-contract-address="0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9" \
--plugin-linea-l1-rpc-endpoint="http://l1-el-node:8545" \
--plugin-linea-rejected-tx-endpoint="http://transaction-exclusion-api:8080" \
--plugin-linea-node-type="RPC" \
--bootnodes=enode://14408801a444dafc44afbccce2eb755f902aed3b5743fed787b3c790e021fef28b8c827ed896aa4e8fb46e22bd67c39f994a73768b4b382f8597b0d44370e15d@11.11.11.101:30303
entrypoint: besu-untuned
command:
- --config-file=/var/lib/besu/l2-node-besu.config.toml
- --genesis-file=/var/lib/besu/genesis.json
- --plugin-linea-l1-polling-interval=PT12S
- --plugin-linea-l1-smart-contract-address=0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9
- --plugin-linea-l1-rpc-endpoint=http://l1-el-node:8545
- --plugin-linea-rejected-tx-endpoint=http://transaction-exclusion-api:8080
- --plugin-linea-node-type=RPC
- --bootnodes=enode://14408801a444dafc44afbccce2eb755f902aed3b5743fed787b3c790e021fef28b8c827ed896aa4e8fb46e22bd67c39f994a73768b4b382f8597b0d44370e15d@11.11.11.101:30303
volumes:
- ./config/l2-node-besu/l2-node-besu-config.toml:/var/lib/besu/l2-node-besu.config.toml:ro
- ./config/linea-besu-sequencer/deny-list.txt:/var/lib/besu/deny-list.txt:ro
@@ -129,7 +123,7 @@ services:
traces-node:
hostname: traces-node
container_name: traces-node
image: consensys/linea-besu-package:${BESU_PACKAGE_TAG:-beta-v2.1-rc16-20250513130608-1d82381}
image: consensys/linea-besu-package:${BESU_PACKAGE_TAG:-beta-v2.1-rc16-20250519095346-8289dbe}
profiles: [ "l2", "l2-bc", "debug", "external-to-monorepo" ]
depends_on:
sequencer:
@@ -149,14 +143,11 @@ services:
environment:
JAVA_OPTS: -Xmx1g -XX:+UnlockExperimentalVMOptions -XX:-UseG1GC -XX:+UseZGC
LOG4J_CONFIGURATION_FILE: /var/lib/besu/log4j.xml
entrypoint:
- /bin/bash
- -c
- |
/opt/besu/bin/besu \
--config-file=/var/lib/besu/traces-node.config.toml \
--genesis-file=/var/lib/besu/genesis.json \
--bootnodes=enode://14408801a444dafc44afbccce2eb755f902aed3b5743fed787b3c790e021fef28b8c827ed896aa4e8fb46e22bd67c39f994a73768b4b382f8597b0d44370e15d@11.11.11.101:30303
entrypoint: besu-untuned
command:
- --config-file=/var/lib/besu/traces-node.config.toml
- --genesis-file=/var/lib/besu/genesis.json
- --bootnodes=enode://14408801a444dafc44afbccce2eb755f902aed3b5743fed787b3c790e021fef28b8c827ed896aa4e8fb46e22bd67c39f994a73768b4b382f8597b0d44370e15d@11.11.11.101:30303
volumes:
- ./config/traces-node/traces-node-config.toml:/var/lib/besu/traces-node.config.toml:ro
- ./config/traces-node/log4j.xml:/var/lib/besu/log4j.xml:ro
@@ -169,7 +160,7 @@ services:
prover-v3: # prover compatible with the traces from zkbesu
container_name: prover-v3
hostname: prover-v3
image: consensys/linea-prover:${PROVER_TAG:-c332ec7}
image: consensys/linea-prover:${PROVER_TAG:-8a0bcc8}
platform: linux/amd64
# to avoid spinning up on CI for now
profiles: [ "l2" ]
@@ -211,7 +202,7 @@ services:
coordinator:
hostname: coordinator
container_name: coordinator
image: consensys/linea-coordinator:${COORDINATOR_TAG:-c332ec7}
image: consensys/linea-coordinator:${COORDINATOR_TAG:-8a0bcc8}
platform: linux/amd64
profiles: [ "l2", "debug" ]
depends_on:
@@ -295,7 +286,7 @@ services:
- l1network
zkbesu-shomei:
image: consensys/linea-besu-package:${BESU_PACKAGE_TAG:-beta-v2.1-rc16-20250513130608-1d82381}
image: consensys/linea-besu-package:${BESU_PACKAGE_TAG:-beta-v2.1-rc16-20250519095346-8289dbe}
hostname: zkbesu-shomei
container_name: zkbesu-shomei
profiles: [ "l2", "l2-bc", "external-to-monorepo" ]
@@ -511,7 +502,7 @@ services:
ipv4_address: 10.10.10.205
zkbesu-shomei-sr:
image: consensys/linea-besu-package:${BESU_PACKAGE_TAG:-beta-v2.1-rc16-20250513130608-1d82381}
image: consensys/linea-besu-package:${BESU_PACKAGE_TAG:-beta-v2.1-rc16-20250519095346-8289dbe}
hostname: zkbesu-shomei-sr
container_name: zkbesu-shomei-sr
profiles: [ "external-to-monorepo", "staterecovery" ]
@@ -544,8 +535,7 @@ services:
(rm /opt/besu/plugins/linea-staterecovery-besu-plugin-v* || true) && \
(rm /opt/besu/plugins/linea-finalized-tag-updater* || true) && \
ls -lh /opt/besu/plugins && \
sed -i '/^CLASSPATH/c\CLASSPATH=/opt/besu/lib/\*\:/opt/besu/plugins/\*' /opt/besu/bin/besu && \
/opt/besu/bin/besu \
/opt/besu/bin/besu-untuned \
--config-file=/var/lib/besu/zkbesu-config.toml \
--genesis-file=/var/lib/besu/genesis.json \
--plugins=BesuShomeiRpcPlugin,ZkTrieLogPlugin,LineaStateRecoveryPlugin \

View File

@@ -27,6 +27,9 @@ WORKDIR /opt/besu
COPY --chown=besu:besu besu /opt/besu/
RUN sed -i '/^CLASSPATH/c\CLASSPATH=/opt/besu/lib/\*\:/opt/besu/plugins/\*' /opt/besu/bin/besu
RUN sed -i '/^CLASSPATH/c\CLASSPATH=/opt/besu/lib/\*\:/opt/besu/plugins/\*' /opt/besu/bin/besu.bat
RUN sed -i '/^CLASSPATH/c\CLASSPATH=/opt/besu/lib/\*\:/opt/besu/plugins/\*' /opt/besu/bin/besu-untuned
RUN sed -i '/^CLASSPATH/c\CLASSPATH=/opt/besu/lib/\*\:/opt/besu/plugins/\*' /opt/besu/bin/besu-untuned.bat
# Expose services ports
# 8545 HTTP JSON-RPC