mirror of
https://github.com/vacp2p/linea-monorepo.git
synced 2026-01-09 20:27:58 -05:00
feat: removed all tracing-v1 related codes from github workflow (#932)
* feat: removed all tracing-v1 related codes from github workflow * feat: removed all tracing-v1 related codes from makefile, test files, and docker yml files * feat: removed all old prover, geth traces node, and traces-api in docker files * feat: removed traces-api-facade related codes from workflow * feat: update image tag of coordinator and others
This commit is contained in:
16
.github/workflows/build-and-publish.yml
vendored
16
.github/workflows/build-and-publish.yml
vendored
@@ -22,9 +22,6 @@ on:
|
||||
prover_changed:
|
||||
required: true
|
||||
type: string
|
||||
traces_api_facade_changed:
|
||||
required: true
|
||||
type: string
|
||||
transaction_exclusion_api_changed:
|
||||
required: true
|
||||
type: string
|
||||
@@ -37,9 +34,6 @@ on:
|
||||
postman_image_tagged:
|
||||
required: true
|
||||
type: string
|
||||
traces_api_facade_image_tagged:
|
||||
required: true
|
||||
type: string
|
||||
transaction_exclusion_api_image_tagged:
|
||||
required: true
|
||||
type: string
|
||||
@@ -80,16 +74,6 @@ jobs:
|
||||
push_image: ${{ inputs.push_image }}
|
||||
secrets: inherit
|
||||
|
||||
traces-api-facade:
|
||||
uses: ./.github/workflows/traces-api-facade-build-and-publish.yml
|
||||
if: ${{ always() && (inputs.traces_api_facade_changed == 'true' || inputs.traces_api_facade_image_tagged != 'true') }}
|
||||
with:
|
||||
commit_tag: ${{ inputs.commit_tag }}
|
||||
develop_tag: ${{ inputs.develop_tag }}
|
||||
image_name: consensys/linea-traces-api-facade
|
||||
push_image: ${{ inputs.push_image }}
|
||||
secrets: inherit
|
||||
|
||||
transaction_exclusion_api:
|
||||
uses: ./.github/workflows/transaction-exclusion-api-build-and-publish.yml
|
||||
if: ${{ always() && (inputs.transaction_exclusion_api_changed == 'true' || inputs.transaction_exclusion_api_image_tagged != 'true') }}
|
||||
|
||||
49
.github/workflows/main.yml
vendored
49
.github/workflows/main.yml
vendored
@@ -19,7 +19,6 @@ jobs:
|
||||
staterecovery: ${{ steps.filter.outputs.staterecovery }}
|
||||
postman: ${{ steps.filter.outputs.postman }}
|
||||
prover: ${{ steps.filter.outputs.prover }}
|
||||
traces-api-facade: ${{ steps.filter.outputs.traces-api-facade }}
|
||||
transaction-exclusion-api: ${{ steps.filter.outputs.transaction-exclusion-api }}
|
||||
has-changes-requiring-build: ${{ steps.exclusion-filter.outputs.has-changes-requiring-build }}
|
||||
contracts-excluding-local-deployment-artifacts: ${{ steps.exclusion-filter.outputs.contracts-excluding-local-deployment-artifacts }}
|
||||
@@ -82,26 +81,6 @@ jobs:
|
||||
- '.github/workflows/main.yml'
|
||||
- '.github/workflows/reuse-*.yml'
|
||||
- 'constraints'
|
||||
traces-api-facade:
|
||||
- 'traces-api-facade/**'
|
||||
- 'jvm-libs/linea/core/domain-models/**'
|
||||
- 'jvm-libs/linea/core/traces/**'
|
||||
- 'jvm-libs/linea/core/metrics/**'
|
||||
- 'jvm-libs/generic/json-rpc/**'
|
||||
- 'jvm-libs/generic/extensions/kotlin/**'
|
||||
- 'jvm-libs/generic/extensions/futures/**'
|
||||
- 'jvm-libs/generic/vertx-helper/**'
|
||||
- 'jvm-libs/linea/metrics/**'
|
||||
- 'config/common/traces-limits-v1.toml'
|
||||
- '.github/workflows/traces-api-facade-*.yml'
|
||||
- '.github/workflows/build-and-publish.yml'
|
||||
- '.github/workflows/main.yml'
|
||||
- '.github/workflows/reuse-*.yml'
|
||||
- 'buildSrc/**'
|
||||
- 'gradle/**'
|
||||
- 'build.gradle'
|
||||
- 'gradle.properties'
|
||||
- 'settings.gradle'
|
||||
transaction-exclusion-api:
|
||||
- 'transaction-exclusion-api/**'
|
||||
- 'jvm-libs/generic/extensions/futures/**'
|
||||
@@ -159,7 +138,6 @@ jobs:
|
||||
coordinator_changed: ${{ needs.filter-commit-changes.outputs.coordinator }}
|
||||
postman_changed: ${{ needs.filter-commit-changes.outputs.postman }}
|
||||
prover_changed: ${{ needs.filter-commit-changes.outputs.prover }}
|
||||
traces_api_facade_changed: ${{ needs.filter-commit-changes.outputs.traces-api-facade }}
|
||||
transaction_exclusion_api_changed: ${{ needs.filter-commit-changes.outputs.transaction-exclusion-api }}
|
||||
secrets: inherit
|
||||
|
||||
@@ -174,7 +152,6 @@ jobs:
|
||||
prover_changed: ${{ needs.filter-commit-changes.outputs.prover }}
|
||||
smart_contracts_changed: ${{ needs.filter-commit-changes.outputs.smart-contracts }}
|
||||
staterecovery_changed: ${{ needs.filter-commit-changes.outputs.staterecovery }}
|
||||
traces_api_facade_changed: ${{ needs.filter-commit-changes.outputs.traces-api-facade }}
|
||||
transaction_exclusion_api_changed: ${{ needs.filter-commit-changes.outputs.transaction-exclusion-api }}
|
||||
secrets: inherit
|
||||
|
||||
@@ -209,30 +186,13 @@ jobs:
|
||||
coordinator_changed: ${{ needs.filter-commit-changes.outputs.coordinator }}
|
||||
postman_changed: ${{ needs.filter-commit-changes.outputs.postman }}
|
||||
prover_changed: ${{ needs.filter-commit-changes.outputs.prover }}
|
||||
traces_api_facade_changed: ${{ needs.filter-commit-changes.outputs.traces-api-facade }}
|
||||
transaction_exclusion_api_changed: ${{ needs.filter-commit-changes.outputs.transaction-exclusion-api }}
|
||||
coordinator_image_tagged: ${{ needs.check-and-tag-images.outputs.image_tagged_coordinator }}
|
||||
postman_image_tagged: ${{ needs.check-and-tag-images.outputs.image_tagged_postman }}
|
||||
prover_image_tagged: ${{ needs.check-and-tag-images.outputs.image_tagged_prover }}
|
||||
traces_api_facade_image_tagged: ${{ needs.check-and-tag-images.outputs.image_tagged_traces_api_facade }}
|
||||
transaction_exclusion_api_image_tagged: ${{ needs.check-and-tag-images.outputs.image_tagged_transaction_exclusion_api }}
|
||||
secrets: inherit
|
||||
|
||||
run-e2e-tests-geth-tracing:
|
||||
needs: [ store-image-name-and-tags, docker-build, get-has-changes-requiring-e2e-testing, manual-docker-build-and-e2e-tests ]
|
||||
# Make this execute for has-changes-requiring-e2e-testing == 'false' so that we can get to the required job @ which is in reuse-run-e2e-tests.yml
|
||||
if: ${{ always() && needs.get-has-changes-requiring-e2e-testing.outputs.has-changes-requiring-e2e-testing == 'false' || needs.docker-build.result == 'success' }}
|
||||
concurrency:
|
||||
group: run-e2e-tests-geth-tracing-${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}
|
||||
uses: ./.github/workflows/reuse-run-e2e-tests.yml
|
||||
with:
|
||||
commit_tag: ${{ needs.store-image-name-and-tags.outputs.commit_tag }}
|
||||
tracing-engine: 'geth'
|
||||
e2e-tests-logs-dump: true
|
||||
has-changes-requiring-e2e-testing: ${{ needs.get-has-changes-requiring-e2e-testing.outputs.has-changes-requiring-e2e-testing }}
|
||||
secrets: inherit
|
||||
|
||||
run-e2e-tests:
|
||||
needs: [ store-image-name-and-tags, docker-build, get-has-changes-requiring-e2e-testing, manual-docker-build-and-e2e-tests ]
|
||||
# Make this execute for has-changes-requiring-e2e-testing == 'false' so that we can get to the required job @ which is in reuse-run-e2e-tests.yml
|
||||
@@ -243,14 +203,13 @@ jobs:
|
||||
uses: ./.github/workflows/reuse-run-e2e-tests.yml
|
||||
with:
|
||||
commit_tag: ${{ needs.store-image-name-and-tags.outputs.commit_tag }}
|
||||
tracing-engine: 'besu'
|
||||
e2e-tests-logs-dump: true
|
||||
has-changes-requiring-e2e-testing: ${{ needs.get-has-changes-requiring-e2e-testing.outputs.has-changes-requiring-e2e-testing }}
|
||||
secrets: inherit
|
||||
|
||||
publish-images-after-run-tests-success-on-main:
|
||||
needs: [ store-image-name-and-tags, testing, run-e2e-tests, run-e2e-tests-geth-tracing ]
|
||||
if: ${{ always() && github.ref == 'refs/heads/main' && needs.testing.result == 'success' && needs.run-e2e-tests.outputs.tests_outcome == 'success' && needs.run-e2e-tests-geth-tracing.outputs.tests_outcome == 'success' }}
|
||||
needs: [ store-image-name-and-tags, testing, run-e2e-tests ]
|
||||
if: ${{ always() && github.ref == 'refs/heads/main' && needs.testing.result == 'success' && needs.run-e2e-tests.outputs.tests_outcome == 'success' }}
|
||||
uses: ./.github/workflows/build-and-publish.yml
|
||||
with:
|
||||
push_image: true
|
||||
@@ -259,17 +218,15 @@ jobs:
|
||||
coordinator_changed: ${{ needs.filter-commit-changes.outputs.coordinator }}
|
||||
postman_changed: ${{ needs.filter-commit-changes.outputs.postman }}
|
||||
prover_changed: ${{ needs.filter-commit-changes.outputs.prover }}
|
||||
traces_api_facade_changed: ${{ needs.filter-commit-changes.outputs.traces-api-facade }}
|
||||
transaction_exclusion_api_changed: ${{ needs.filter-commit-changes.outputs.transaction-exclusion-api }}
|
||||
coordinator_image_tagged: ${{ needs.check-and-tag-images.outputs.image_tagged_coordinator }}
|
||||
postman_image_tagged: ${{ needs.check-and-tag-images.outputs.image_tagged_postman }}
|
||||
prover_image_tagged: ${{ needs.check-and-tag-images.outputs.image_tagged_prover }}
|
||||
traces_api_facade_image_tagged: ${{ needs.check-and-tag-images.outputs.image_tagged_traces_api_facade }}
|
||||
transaction_exclusion_api_image_tagged: ${{ needs.check-and-tag-images.outputs.image_tagged_transaction_exclusion_api }}
|
||||
secrets: inherit
|
||||
|
||||
cleanup-deployments:
|
||||
needs: [ run-e2e-tests, run-e2e-tests-geth-tracing ]
|
||||
needs: [ run-e2e-tests ]
|
||||
if: ${{ always() }}
|
||||
runs-on: gha-runner-scale-set-ubuntu-22.04-amd64-small
|
||||
steps:
|
||||
|
||||
@@ -20,9 +20,6 @@ on:
|
||||
prover_changed:
|
||||
required: true
|
||||
type: string
|
||||
traces_api_facade_changed:
|
||||
required: true
|
||||
type: string
|
||||
transaction_exclusion_api_changed:
|
||||
required: true
|
||||
type: string
|
||||
@@ -33,8 +30,6 @@ on:
|
||||
value: ${{ jobs.image_tag_push.outputs.image_tagged_prover }}
|
||||
image_tagged_postman:
|
||||
value: ${{ jobs.image_tag_push.outputs.image_tagged_postman }}
|
||||
image_tagged_traces_api_facade:
|
||||
value: ${{ jobs.image_tag_push.outputs.image_tagged_traces_api_facade }}
|
||||
image_tagged_transaction_exclusion_api:
|
||||
value: ${{ jobs.image_tag_push.outputs.image_tagged_transaction_exclusion_api }}
|
||||
secrets:
|
||||
@@ -55,7 +50,6 @@ jobs:
|
||||
last_commit_tag_exists_coordinator: ${{ steps.check_image_tags_exist_coordinator.outputs.last_commit_tag_exists }}
|
||||
last_commit_tag_exists_postman: ${{ steps.check_image_tags_exist_postman.outputs.last_commit_tag_exists }}
|
||||
last_commit_tag_exists_prover: ${{ steps.check_image_tags_exist_prover.outputs.last_commit_tag_exists }}
|
||||
last_commit_tag_exists_traces_api_facade: ${{ steps.check_image_tags_exist_traces_api_facade.outputs.last_commit_tag_exists }}
|
||||
last_commit_tag_exists_transaction_exclusion_api: ${{ steps.check_image_tags_exist_transaction_exclusion_api.outputs.last_commit_tag_exists }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
@@ -85,14 +79,6 @@ jobs:
|
||||
last_commit_tag: ${{ inputs.last_commit_tag }}
|
||||
image_name: consensys/linea-prover
|
||||
|
||||
- name: Check image tags exist for traces-api-facade
|
||||
uses: ./.github/actions/check-image-tags-exist
|
||||
if: ${{ inputs.traces_api_facade_changed == 'false' }}
|
||||
id: check_image_tags_exist_traces_api_facade
|
||||
with:
|
||||
last_commit_tag: ${{ inputs.last_commit_tag }}
|
||||
image_name: consensys/linea-traces-api-facade
|
||||
|
||||
- name: Check image tags exist for transaction-exclusion-api
|
||||
uses: ./.github/actions/check-image-tags-exist
|
||||
if: ${{ inputs.transaction_exclusion_api_changed == 'false' }}
|
||||
@@ -110,7 +96,6 @@ jobs:
|
||||
image_tagged_coordinator: ${{ steps.image_tag_push_coordinator.outputs.image_tagged }}
|
||||
image_tagged_prover: ${{ steps.image_tag_push_prover.outputs.image_tagged }}
|
||||
image_tagged_postman: ${{ steps.image_tag_push_postman.outputs.image_tagged }}
|
||||
image_tagged_traces_api_facade: ${{ steps.image_tag_push_traces_api_facade.outputs.image_tagged }}
|
||||
image_tagged_transaction_exclusion_api: ${{ steps.image_tag_push_transaction_exclusion_api.outputs.image_tagged }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
@@ -155,19 +140,6 @@ jobs:
|
||||
docker_username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
docker_password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
- name: Tag and push traces api facade image
|
||||
id: image_tag_push_traces_api_facade
|
||||
uses: ./.github/actions/image-tag-and-push
|
||||
if: ${{ inputs.traces_api_facade_changed == 'false' }}
|
||||
with:
|
||||
commit_tag: ${{ inputs.commit_tag }}
|
||||
last_commit_tag: ${{ inputs.last_commit_tag }}
|
||||
develop_tag: ${{ inputs.develop_tag }}
|
||||
image_name: consensys/linea-traces-api-facade
|
||||
last_commit_tag_exists: ${{ needs.check_image_tags_exist.outputs.last_commit_tag_exists_traces_api_facade }}
|
||||
docker_username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
docker_password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
- name: Tag and push transaction exclusion api image
|
||||
id: image_tag_push_transaction_exclusion_api
|
||||
uses: ./.github/actions/image-tag-and-push
|
||||
|
||||
27
.github/workflows/reuse-run-e2e-tests.yml
vendored
27
.github/workflows/reuse-run-e2e-tests.yml
vendored
@@ -6,10 +6,6 @@ on:
|
||||
description: 'The commit tag to use'
|
||||
required: true
|
||||
type: string
|
||||
tracing-engine:
|
||||
description: Variable option for running tests against [besu] or [geth] stack
|
||||
required: true
|
||||
type: string
|
||||
e2e-tests-with-ssh:
|
||||
description: Run end to end tests with ability to ssh into environment
|
||||
required: false
|
||||
@@ -30,10 +26,6 @@ on:
|
||||
commit_tag:
|
||||
required: true
|
||||
type: string
|
||||
tracing-engine:
|
||||
description: Variable option for running tests against [besu] or [geth] stack
|
||||
required: true
|
||||
type: string
|
||||
e2e-tests-with-ssh:
|
||||
description: Run end to end tests with ability to ssh into environment
|
||||
required: false
|
||||
@@ -69,7 +61,6 @@ jobs:
|
||||
COORDINATOR_TAG: ${{ inputs.commit_tag }}
|
||||
POSTMAN_TAG: ${{ inputs.commit_tag }}
|
||||
PROVER_TAG: ${{ inputs.commit_tag }}
|
||||
TRACES_API_TAG: ${{ inputs.commit_tag }}
|
||||
TRANSACTION_EXCLUSION_API_TAG: ${{ inputs.commit_tag }}
|
||||
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
@@ -116,23 +107,9 @@ jobs:
|
||||
gunzip -c $GITHUB_WORKSPACE/linea-coordinator/linea-coordinator-docker-image.tar.gz | docker load &&
|
||||
gunzip -c $GITHUB_WORKSPACE/linea-postman/linea-postman-docker-image.tar.gz | docker load &&
|
||||
gunzip -c $GITHUB_WORKSPACE/linea-prover/linea-prover-docker-image.tar.gz | docker load &&
|
||||
gunzip -c $GITHUB_WORKSPACE/linea-traces-api-facade/linea-traces-api-facade-docker-image.tar.gz | docker load &&
|
||||
gunzip -c $GITHUB_WORKSPACE/linea-transaction-exclusion-api/linea-transaction-exclusion-api-docker-image.tar.gz | docker load
|
||||
shell: bash
|
||||
- name: Spin up fresh environment with geth tracing with retry
|
||||
if: ${{ inputs.tracing-engine == 'geth' }}
|
||||
uses: nick-fields/retry@v3
|
||||
with:
|
||||
max_attempts: 10
|
||||
retry_on: error
|
||||
retry_wait_seconds: 30
|
||||
timeout_minutes: 10
|
||||
command: |
|
||||
make start-env-with-tracing-v1-ci CLEAN_PREVIOUS_ENV=false
|
||||
on_retry_command: |
|
||||
make clean-environment
|
||||
- name: Spin up fresh environment with besu tracing with retry
|
||||
if: ${{ inputs.tracing-engine == 'besu' }}
|
||||
uses: nick-fields/retry@v3
|
||||
with:
|
||||
max_attempts: 10
|
||||
@@ -165,13 +142,11 @@ jobs:
|
||||
find tmp/local/ >> docker_logs/files_in_shared_dir.txt || true
|
||||
docker ps -a >> docker_logs/docker_ps.txt || true
|
||||
docker logs coordinator --since 1h &>> docker_logs/coordinator.txt || true
|
||||
docker logs prover --since 1h &>> docker_logs/prover.txt || true
|
||||
docker logs prover-v3 --since 1h &>> docker_logs/prover-v3.txt || true
|
||||
docker logs shomei --since 1h &>> docker_logs/shomei.txt || true
|
||||
docker logs zkbesu-shomei --since 1h &>> docker_logs/zkbesu-shomei.txt || true
|
||||
docker logs shomei-frontend --since 1h &>> docker_logs/shomei-frontend.txt || true
|
||||
docker logs postman --since 1h &>> docker_logs/postman.txt || true
|
||||
docker logs traces-node --since 1h &>> docker_logs/traces-node.txt || true
|
||||
docker logs traces-node-v2 --since 1h &>> docker_logs/traces-node-v2.txt || true
|
||||
docker logs l2-node-besu --since 1h &>> docker_logs/l2-node-besu.txt || true
|
||||
docker logs transaction-exclusion-api --since 1h &>> docker_logs/transaction-exclusion-api.txt || true
|
||||
@@ -180,7 +155,7 @@ jobs:
|
||||
uses: actions/upload-artifact@v4
|
||||
if: ${{ failure() && inputs.e2e-tests-logs-dump }}
|
||||
with:
|
||||
name: end-2-end-debug-logs-${{ inputs.tracing-engine }}
|
||||
name: end-2-end-debug-logs
|
||||
if-no-files-found: error
|
||||
path: |
|
||||
docker_logs/**/*
|
||||
|
||||
9
.github/workflows/testing.yml
vendored
9
.github/workflows/testing.yml
vendored
@@ -18,9 +18,6 @@ on:
|
||||
prover_changed:
|
||||
required: true
|
||||
type: string
|
||||
traces_api_facade_changed:
|
||||
required: true
|
||||
type: string
|
||||
transaction_exclusion_api_changed:
|
||||
required: true
|
||||
type: string
|
||||
@@ -47,10 +44,6 @@ jobs:
|
||||
if: ${{ inputs.postman_changed == 'true' }}
|
||||
secrets: inherit
|
||||
|
||||
traces-api-facade:
|
||||
uses: ./.github/workflows/traces-api-facade-testing.yml
|
||||
if: ${{ inputs.traces_api_facade_changed == 'true' }}
|
||||
|
||||
transaction-exclusion-api:
|
||||
uses: ./.github/workflows/transaction-exclusion-api-testing.yml
|
||||
if: ${{ inputs.transaction_exclusion_api_changed == 'true' }}
|
||||
@@ -71,7 +64,7 @@ jobs:
|
||||
# If all jobs are skipped, the workflow will still succeed.
|
||||
always_succeed:
|
||||
runs-on: ubuntu-24.04
|
||||
if: ${{ inputs.coordinator_changed == 'false' && inputs.prover_changed == 'false' && inputs.postman_changed == 'false' && inputs.traces_api_facade_changed == 'false' && inputs.transaction_exclusion_api_changed == 'false' }}
|
||||
if: ${{ inputs.coordinator_changed == 'false' && inputs.prover_changed == 'false' && inputs.postman_changed == 'false' && inputs.transaction_exclusion_api_changed == 'false' }}
|
||||
steps:
|
||||
- name: Ensure Workflow Success
|
||||
run: echo "All jobs were skipped, but workflow succeeds."
|
||||
|
||||
@@ -1,130 +0,0 @@
|
||||
name: Traces-api-facade build and publish CI
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
commit_tag:
|
||||
required: true
|
||||
type: string
|
||||
develop_tag:
|
||||
required: true
|
||||
type: string
|
||||
image_name:
|
||||
required: true
|
||||
type: string
|
||||
push_image:
|
||||
required: false
|
||||
type: boolean
|
||||
default: false
|
||||
secrets:
|
||||
DOCKERHUB_USERNAME:
|
||||
required: false
|
||||
DOCKERHUB_TOKEN:
|
||||
required: false
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
commit_tag:
|
||||
description: 'Image tag'
|
||||
required: true
|
||||
type: string
|
||||
develop_tag:
|
||||
description: 'Image tag will be "develop" if target branch is main'
|
||||
required: true
|
||||
type: choice
|
||||
options:
|
||||
- develop
|
||||
default: 'develop'
|
||||
image_name:
|
||||
description: 'Image name'
|
||||
required: true
|
||||
type: string
|
||||
default: 'consensys/linea-traces-api-facade'
|
||||
push_image:
|
||||
description: 'Toggle whether to push image to docker registry'
|
||||
required: false
|
||||
type: boolean
|
||||
default: true
|
||||
|
||||
concurrency:
|
||||
group: traces-api-facade-build-and-publish-${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}
|
||||
|
||||
jobs:
|
||||
build-and-publish:
|
||||
runs-on: gha-runner-scale-set-ubuntu-22.04-amd64-med
|
||||
name: Traces api facade build
|
||||
env:
|
||||
COMMIT_TAG: ${{ inputs.commit_tag }}
|
||||
DEVELOP_TAG: ${{ inputs.develop_tag }}
|
||||
IMAGE_NAME: ${{ inputs.image_name }}
|
||||
PUSH_IMAGE: ${{ inputs.push_image }}
|
||||
TAGS: ${{ inputs.image_name }}:${{ inputs.commit_tag }}
|
||||
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
steps:
|
||||
- name: Set develop tag if main branch
|
||||
if: ${{ github.ref == 'refs/heads/main' }}
|
||||
run: |
|
||||
echo "TAGS=${{ env.IMAGE_NAME }}:${{ env.COMMIT_TAG }},${{ env.IMAGE_NAME }}:${{ env.DEVELOP_TAG }}" >> $GITHUB_ENV
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v4
|
||||
with:
|
||||
distribution: temurin
|
||||
java-version: 21
|
||||
- name: Setup Gradle
|
||||
uses: gradle/actions/setup-gradle@v4
|
||||
- name: Build dist
|
||||
run: |
|
||||
./gradlew traces-api-facade:app:shadowJar
|
||||
echo ${{ github.workspace }}
|
||||
- name: Login to Docker Hub
|
||||
if: ${{ env.DOCKERHUB_USERNAME != '' && env.DOCKERHUB_TOKEN != '' }}
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
- name: Set up Docker Buildx
|
||||
id: buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
- name: Docker meta
|
||||
id: traces-api-facade
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: consensys/linea-traces-api-facade
|
||||
- name: Build for testing
|
||||
uses: docker/build-push-action@v6
|
||||
if: ${{ env.PUSH_IMAGE == 'false' }}
|
||||
with:
|
||||
context: .
|
||||
build-contexts: jar=./traces-api-facade/app/build/libs/
|
||||
file: ./traces-api-facade/Dockerfile
|
||||
platforms: linux/amd64
|
||||
load: true
|
||||
push: false
|
||||
tags: ${{ env.IMAGE_NAME }}:${{ env.COMMIT_TAG }}
|
||||
- name: Save Docker image as artifact
|
||||
if: ${{ env.PUSH_IMAGE == 'false' }}
|
||||
run: |
|
||||
docker save ${{ env.IMAGE_NAME }}:${{ env.COMMIT_TAG }} | gzip > linea-traces-api-facade-docker-image.tar.gz
|
||||
shell: bash
|
||||
- name: Upload Docker image artifact
|
||||
if: ${{ env.PUSH_IMAGE == 'false' }}
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: linea-traces-api-facade
|
||||
path: linea-traces-api-facade-docker-image.tar.gz
|
||||
- name: Build & push
|
||||
uses: docker/build-push-action@v6
|
||||
if: ${{ env.PUSH_IMAGE == 'true' || github.event_name == 'workflow_dispatch' }}
|
||||
with:
|
||||
context: .
|
||||
build-contexts: jar=./traces-api-facade/app/build/libs/
|
||||
file: ./traces-api-facade/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: ${{ env.TAGS }}
|
||||
cache-from: type=registry,ref=${{ env.IMAGE_NAME }}:buildcache
|
||||
cache-to: type=registry,ref=${{ env.IMAGE_NAME }}:buildcache,mode=max
|
||||
49
.github/workflows/traces-api-facade-testing.yml
vendored
49
.github/workflows/traces-api-facade-testing.yml
vendored
@@ -1,49 +0,0 @@
|
||||
name: traces-api-facade-testing
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
coverage:
|
||||
description: To generate test report
|
||||
required: false
|
||||
type: boolean
|
||||
default: false
|
||||
|
||||
concurrency:
|
||||
group: traces-api-facade-testing-${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}
|
||||
|
||||
jobs:
|
||||
run-tests:
|
||||
# ~2 mins saved vs small
|
||||
runs-on: gha-runner-scale-set-ubuntu-22.04-amd64-med
|
||||
name: Traces api facade tests
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v4
|
||||
with:
|
||||
distribution: temurin
|
||||
java-version: 21
|
||||
- name: Setup Gradle
|
||||
uses: gradle/actions/setup-gradle@v4
|
||||
- name: Run tests with coverage
|
||||
uses: nick-fields/retry@v3
|
||||
if: ${{ inputs.coverage }}
|
||||
with:
|
||||
max_attempts: 2
|
||||
retry_on: error
|
||||
timeout_minutes: 20
|
||||
command: |
|
||||
./gradlew -V traces-api-facade:app:buildNeeded jacocoRootReport
|
||||
- name: Run tests without coverage
|
||||
uses: nick-fields/retry@v3
|
||||
if: ${{ !inputs.coverage }}
|
||||
with:
|
||||
max_attempts: 2
|
||||
retry_on: error
|
||||
timeout_minutes: 20
|
||||
command: |
|
||||
./gradlew -V traces-api-facade:app:buildNeeded
|
||||
12
Makefile
12
Makefile
@@ -1,7 +1,7 @@
|
||||
include makefile-contracts.mk
|
||||
|
||||
docker-pull-images-external-to-monorepo:
|
||||
docker compose -f docker/compose-tracing-v1-ci-extension.yml -f docker/compose-tracing-v2-ci-extension.yml --profile external-to-monorepo pull
|
||||
docker compose -f docker/compose-tracing-v2-ci-extension.yml --profile external-to-monorepo pull
|
||||
|
||||
clean-local-folders:
|
||||
make clean-smc-folders
|
||||
@@ -12,8 +12,8 @@ clean-testnet-folders:
|
||||
rm -rf tmp/testnet/* || true # ignore failure if folders do not exist already
|
||||
|
||||
clean-environment:
|
||||
docker compose -f docker/compose-tracing-v1-ci-extension.yml -f docker/compose-tracing-v2-ci-extension.yml -f docker/compose-tracing-v2-staterecovery-extension.yml --profile l1 --profile l2 --profile debug --profile staterecovery kill -s 9 || true;
|
||||
docker compose -f docker/compose-tracing-v1-ci-extension.yml -f docker/compose-tracing-v2-ci-extension.yml -f docker/compose-tracing-v2-staterecovery-extension.yml --profile l1 --profile l2 --profile debug --profile staterecovery down || true;
|
||||
docker compose -f docker/compose-tracing-v2-ci-extension.yml -f docker/compose-tracing-v2-staterecovery-extension.yml --profile l1 --profile l2 --profile debug --profile staterecovery kill -s 9 || true;
|
||||
docker compose -f docker/compose-tracing-v2-ci-extension.yml -f docker/compose-tracing-v2-staterecovery-extension.yml --profile l1 --profile l2 --profile debug --profile staterecovery down || true;
|
||||
make clean-local-folders;
|
||||
docker volume rm linea-local-dev linea-logs || true; # ignore failure if volumes do not exist already
|
||||
docker system prune -f || true;
|
||||
@@ -60,12 +60,6 @@ fresh-start-l2-blockchain-only:
|
||||
## Creating new targets to avoid conflicts with existing targets
|
||||
## Redundant targets above will cleanup once this get's merged
|
||||
##
|
||||
start-env-with-tracing-v1:
|
||||
make start-env COMPOSE_FILE=docker/compose-tracing-v1.yml LINEA_PROTOCOL_CONTRACTS_ONLY=true
|
||||
|
||||
start-env-with-tracing-v1-ci:
|
||||
make start-env COMPOSE_FILE=docker/compose-tracing-v1-ci-extension.yml DISABLE_JSON_RPC_PRICING_PROPAGATION=false
|
||||
|
||||
start-env-with-tracing-v2:
|
||||
make start-env COMPOSE_FILE=docker/compose-tracing-v2.yml LINEA_PROTOCOL_CONTRACTS_ONLY=true
|
||||
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Configuration status="warn" shutdownHook="disable" monitorInterval="2">
|
||||
<Appenders>
|
||||
<Console name="console" target="SYSTEM_OUT">
|
||||
<PatternLayout pattern="[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %m%n"/>
|
||||
</Console>
|
||||
</Appenders>
|
||||
|
||||
<Loggers>
|
||||
<Logger name="net.consensys.linea.jsonrpc" level="TRACE" additivity="false">
|
||||
<appender-ref ref="console" level="trace"/>
|
||||
</Logger>
|
||||
<Logger name="net.consensys.linea" level="DEBUG" additivity="false">
|
||||
<appender-ref ref="console" level="trace"/>
|
||||
</Logger>
|
||||
<Root level="info" additivity="true">
|
||||
<appender-ref ref="console"/>
|
||||
</Root>
|
||||
</Loggers>
|
||||
|
||||
</Configuration>
|
||||
@@ -1,11 +0,0 @@
|
||||
input_traces_directory = "/data/traces/raw"
|
||||
output_traces_directory = "/data/traces/v1/conflated"
|
||||
traces_api_version = "0.2.0"
|
||||
traces_file_extension = "json.gz"
|
||||
|
||||
[api]
|
||||
port = 8080
|
||||
path = "/"
|
||||
# if =0, it will create one verticle per core (or hyperthread if supported)
|
||||
number_of_verticles = 2
|
||||
observability_port = 8090
|
||||
@@ -1,6 +0,0 @@
|
||||
input_traces_directory = "tmp/local/traces/raw"
|
||||
output_traces_directory = "tmp/local/traces/v1/conflated"
|
||||
traces_version = "0.2.0"
|
||||
|
||||
[api]
|
||||
port = 8081
|
||||
@@ -1,16 +0,0 @@
|
||||
{
|
||||
"preferNativeTransport": true,
|
||||
"logStacktraceThreshold": 500,
|
||||
"maxEventLoopExecuteTime": 2,
|
||||
"maxEventLoopExecuteTimeUnit": "MINUTES",
|
||||
"warnEventLoopBlocked": 5000,
|
||||
"maxWorkerExecuteTime": 2,
|
||||
"maxWorkerExecuteTimeUnit": "MINUTES",
|
||||
"metricsOptions": {
|
||||
"enabled": true,
|
||||
"prometheusOptions": {
|
||||
"enabled": true,
|
||||
"publishQuantiles": true
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -126,39 +126,6 @@ services:
|
||||
linea:
|
||||
ipv4_address: 11.11.11.119
|
||||
|
||||
traces-node:
|
||||
container_name: traces-node
|
||||
hostname: traces-node
|
||||
image: consensys/linea-geth:${ZKGETH_TAG:-0588665}
|
||||
platform: linux/amd64
|
||||
profiles: [ "l2", "l2-bc", "debug", "external-to-monorepo" ]
|
||||
depends_on:
|
||||
sequencer:
|
||||
condition: service_healthy
|
||||
ports:
|
||||
- "8645:8545" # http
|
||||
- "8646:8546" # websockets
|
||||
- "8651:8551" # engine_ API
|
||||
environment:
|
||||
DATA_DIR: "/l2-zkgeth-traces-node/"
|
||||
NETRESTRICT: "11.11.11.0/24"
|
||||
# ETHSTATS_URL: "zkgeth-traces-node:${WS_SECRET:-dummy-secret}@l2-ethstats:3000"
|
||||
BOOTNODES: "enode://14408801a444dafc44afbccce2eb755f902aed3b5743fed787b3c790e021fef28b8c827ed896aa4e8fb46e22bd67c39f994a73768b4b382f8597b0d44370e15d@11.11.11.101:30303"
|
||||
TRACES_DIR: "/data/traces/raw"
|
||||
MAX_BLOCK_GAS: 10000000 #10M
|
||||
MAX_BLOCKDATA_BYTES: 35000 #35 KBytes
|
||||
MAX_TXDATA_BYTES: 30000 #30 KBytes
|
||||
VERSION: "0.2.0"
|
||||
TRACES_FILE_EXTENSION: ".json.gz"
|
||||
entrypoint: [ "sh", "/scripts/node.sh", "1337", "/genesis.json", "0xa", "0x1C9C380", "0xF4240" ]
|
||||
volumes:
|
||||
- ./geth/scripts:/scripts:ro
|
||||
- ./config/linea-local-dev-genesis-PoA-geth.json:/genesis.json:ro
|
||||
- ../tmp/local/:/data/
|
||||
networks:
|
||||
linea:
|
||||
ipv4_address: 11.11.11.102
|
||||
|
||||
traces-node-v2:
|
||||
hostname: traces-node-v2
|
||||
container_name: traces-node-v2
|
||||
@@ -199,34 +166,10 @@ services:
|
||||
linea:
|
||||
ipv4_address: 11.11.11.115
|
||||
|
||||
prover:
|
||||
container_name: prover
|
||||
hostname: prover
|
||||
image: consensys/linea-prover:b4550ce-untested
|
||||
platform: linux/amd64
|
||||
# to avoid spinning up on CI for now
|
||||
profiles: [ "l2" ]
|
||||
environment:
|
||||
GOMAXPROCS: 16
|
||||
CONTROLLER_CONFIG: "/opt/linea/prover/config/controller/controller.config.toml"
|
||||
GOMEMLIMIT: "10GiB"
|
||||
WORKER_ID: prover-i1 # keep this prover- to mimic prod env prover-aggregation-91
|
||||
volumes:
|
||||
- logs:/logs
|
||||
- ../tmp/local/:/data/
|
||||
- ./config/prover/v2/prover-controller.config.toml:/opt/linea/prover/config/controller/controller.config.toml
|
||||
- ./config/prover/v2/prover-execution.config.toml:/opt/linea/prover/config/executor/execution.config.toml
|
||||
- ./config/prover/v2/prover-decompression.config.toml:/opt/linea/prover/config/executor/decompression.config.toml
|
||||
- ./config/prover/v2/prover-aggregation.config.toml:/opt/linea/prover/config/executor/aggregation.config.toml
|
||||
- ../config/common/traces-limits-v1.toml:/opt/linea/prover/config/executor/traces-limits-M.toml
|
||||
networks:
|
||||
linea:
|
||||
ipv4_address: 11.11.11.108
|
||||
|
||||
prover-v3: # prover compatible with the traces from zkbesu
|
||||
container_name: prover-v3
|
||||
hostname: prover-v3
|
||||
image: consensys/linea-prover:${PROVER_TAG:-811743b}
|
||||
image: consensys/linea-prover:${PROVER_TAG:-052958b}
|
||||
platform: linux/amd64
|
||||
# to avoid spinning up on CI for now
|
||||
profiles: [ "l2" ]
|
||||
@@ -247,7 +190,7 @@ services:
|
||||
postman:
|
||||
container_name: postman
|
||||
hostname: postman
|
||||
image: consensys/linea-postman:${POSTMAN_TAG:-b021601}
|
||||
image: consensys/linea-postman:${POSTMAN_TAG:-052958b}
|
||||
profiles: [ "l2", "debug" ]
|
||||
platform: linux/amd64
|
||||
restart: on-failure
|
||||
@@ -265,31 +208,10 @@ services:
|
||||
linea:
|
||||
ipv4_address: 11.11.11.222
|
||||
|
||||
traces-api:
|
||||
hostname: traces-api
|
||||
container_name: traces-api
|
||||
image: consensys/linea-traces-api-facade:${TRACES_API_TAG:-811743b}
|
||||
profiles: [ "l2", "debug" ]
|
||||
restart: on-failure
|
||||
depends_on:
|
||||
traces-node:
|
||||
condition: service_started
|
||||
ports:
|
||||
- "8080:8080"
|
||||
command: [ 'java', '-Dvertx.configurationFile=config/vertx-options.json', '-Dlog4j2.configurationFile=config/log4j2-dev.xml', '-jar', 'libs/app-all.jar', 'config/traces-app-docker.config.toml', ]
|
||||
volumes:
|
||||
- ../config/traces-api/traces-app-docker.config.toml:/opt/consensys/linea/traces-api-facade/config/traces-app-docker.config.toml:ro
|
||||
- ../config/traces-api/vertx-options.json:/opt/consensys/linea/traces-api-facade/config/vertx-options.json:ro
|
||||
- ../config/traces-api/log4j2-dev.xml:/opt/consensys/linea/traces-api-facade/config/log4j2-dev.xml:ro
|
||||
- ../tmp/local/:/data/
|
||||
networks:
|
||||
linea:
|
||||
ipv4_address: 11.11.11.105
|
||||
|
||||
coordinator:
|
||||
hostname: coordinator
|
||||
container_name: coordinator
|
||||
image: consensys/linea-coordinator:${COORDINATOR_TAG:-811743b}
|
||||
image: consensys/linea-coordinator:${COORDINATOR_TAG:-052958b}
|
||||
platform: linux/amd64
|
||||
profiles: [ "l2", "debug" ]
|
||||
depends_on:
|
||||
@@ -492,7 +414,7 @@ services:
|
||||
transaction-exclusion-api:
|
||||
hostname: transaction-exclusion-api
|
||||
container_name: transaction-exclusion-api
|
||||
image: consensys/linea-transaction-exclusion-api:${TRANSACTION_EXCLUSION_API_TAG:-811743b}
|
||||
image: consensys/linea-transaction-exclusion-api:${TRANSACTION_EXCLUSION_API_TAG:-052958b}
|
||||
profiles: [ "l2", "debug" ]
|
||||
restart: on-failure
|
||||
depends_on:
|
||||
|
||||
@@ -1,33 +0,0 @@
|
||||
include:
|
||||
- compose-tracing-v1.yml
|
||||
|
||||
services:
|
||||
l2-node:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: l2-node
|
||||
|
||||
l2-node-besu:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: l2-node-besu
|
||||
image: consensys/linea-besu-package:${BESU_PACKAGE_TAG:-mainnet-402ebda}
|
||||
environment:
|
||||
BESU_PLUGINS: "LineaEstimateGasEndpointPlugin,LineaL1FinalizationTagUpdaterPlugin,LineaExtraDataPlugin,LineaTransactionPoolValidatorPlugin"
|
||||
volumes:
|
||||
- ../config/common/traces-limits-besu-v1.toml:/var/lib/besu/traces-limits.toml:ro
|
||||
|
||||
shomei-frontend:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: shomei-frontend
|
||||
|
||||
postman:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: postman
|
||||
|
||||
transaction-exclusion-api:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: transaction-exclusion-api
|
||||
@@ -1,92 +0,0 @@
|
||||
volumes:
|
||||
local-dev:
|
||||
name: "linea-local-dev"
|
||||
logs:
|
||||
name: "linea-logs"
|
||||
|
||||
networks:
|
||||
linea:
|
||||
driver: bridge
|
||||
ipam:
|
||||
config:
|
||||
- subnet: 11.11.11.0/24
|
||||
l1network:
|
||||
driver: bridge
|
||||
ipam:
|
||||
config:
|
||||
- subnet: 10.10.10.0/24
|
||||
|
||||
# To debug inside the network and volumes
|
||||
# docker run --rm -it --network=docker_linea -v=linea-local-dev:/data -v=linea-logs:/logs weibeld/ubuntu-networking bash
|
||||
|
||||
services:
|
||||
l1-el-node:
|
||||
extends:
|
||||
file: compose-spec-l1-services.yml
|
||||
service: l1-el-node
|
||||
|
||||
l1-cl-node:
|
||||
extends:
|
||||
file: compose-spec-l1-services.yml
|
||||
service: l1-cl-node
|
||||
|
||||
l1-node-genesis-generator:
|
||||
extends:
|
||||
file: compose-spec-l1-services.yml
|
||||
service: l1-node-genesis-generator
|
||||
|
||||
sequencer:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: sequencer
|
||||
image: consensys/linea-besu-package:${BESU_PACKAGE_TAG:-mainnet-402ebda}
|
||||
environment:
|
||||
BESU_PLUGINS: "LineaEstimateGasEndpointPlugin,LineaL1FinalizationTagUpdaterPlugin,LineaExtraDataPlugin,LineaTransactionPoolValidatorPlugin"
|
||||
volumes:
|
||||
- ../config/common/traces-limits-besu-v1.toml:/var/lib/besu/traces-limits.toml:ro
|
||||
|
||||
traces-node:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: traces-node
|
||||
|
||||
traces-api:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: traces-api
|
||||
|
||||
prover:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: prover
|
||||
|
||||
coordinator:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: coordinator
|
||||
environment:
|
||||
config__override__l2-network-gas-pricing__json-rpc-pricing-propagation__disabled: ${DISABLE_JSON_RPC_PRICING_PROPAGATION:-true}
|
||||
config__override__type2-state-proof-provider__endpoints: # leave empty to disable
|
||||
command: [ 'java', '-Dvertx.configurationFile=/var/lib/coordinator/vertx-options.json', '-Dlog4j2.configurationFile=/var/lib/coordinator/log4j2-dev.xml', '-jar', 'libs/coordinator.jar', '--traces-limits', 'config/traces-limits-v1.toml', '--smart-contract-errors', 'config/smart-contract-errors.toml', '--gas-price-cap-time-of-day-multipliers', 'config/gas-price-cap-time-of-day-multipliers.toml', 'config/coordinator-docker.config.toml', 'config/coordinator-docker-web3signer-override.config.toml' ]
|
||||
volumes:
|
||||
- ../config/common/traces-limits-v1.toml:/opt/consensys/linea/coordinator/config/traces-limits-v1.toml:ro
|
||||
|
||||
web3signer:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: web3signer
|
||||
|
||||
postgres:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: postgres
|
||||
|
||||
zkbesu-shomei:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: zkbesu-shomei
|
||||
|
||||
shomei:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: shomei
|
||||
@@ -1,7 +0,0 @@
|
||||
dev_mode = true
|
||||
version = "v2.0.0"
|
||||
exec_proof_dir = "/data/prover/v2/execution/responses"
|
||||
decompress_proof_dir = "/data/prover/v2/compression/responses"
|
||||
|
||||
[bn254_circuit]
|
||||
verifier_id = 0
|
||||
@@ -1,120 +0,0 @@
|
||||
# The version. We used it to generate the filename.
|
||||
version = "2.0.0"
|
||||
|
||||
# Log level of the controller (does not leak to the prover job)
|
||||
#
|
||||
# 0 = panic
|
||||
# 1 = fatal
|
||||
# 2 = error
|
||||
# 3 = warn
|
||||
# 4 = info
|
||||
# 5 = debug
|
||||
# 6 = trace
|
||||
#
|
||||
# Default to 4
|
||||
#
|
||||
log_level = 4
|
||||
|
||||
# The directory where we write the logs (stdout/stderr)
|
||||
dir_logs = "/tmp/logs"
|
||||
|
||||
# The maximal return size of ls that we take into account
|
||||
listing_limit = 100
|
||||
|
||||
# The delays at which we retry when we find no files in the queue. If this
|
||||
# is set to [0, 1, 2, 3, 4, 5]. It will retry after 0 sec the first time it
|
||||
# cannot find a file in the queue, 1 sec the second time and so on. Once it
|
||||
# reaches the final value it keeps it as a final retry delay. Here we choose
|
||||
# a value that works for local deployment because we would have only a single
|
||||
# prover. But with many provers and a large queue, this can potentially
|
||||
# overwhelm the EFS.
|
||||
retry_delays = [0, 1]
|
||||
|
||||
# Suffix to add to signify that a file is in progress
|
||||
inprogress_suffix = "inprogress"
|
||||
|
||||
# Suffix to add in case of error. If set to `code`, it will return `code_77` in
|
||||
# case the job exited with a code 77. The suffix is applied both when the job
|
||||
# is dropped or when it is defered to the large prover.
|
||||
fail_suffix = "code"
|
||||
|
||||
# Suffix to add to successful job when they are done
|
||||
success_suffix = "success"
|
||||
|
||||
[prometheus]
|
||||
port = 9090
|
||||
|
||||
[execution]
|
||||
|
||||
# Path to the executable to run for the command
|
||||
bin = "/opt/linea/prover/execprover"
|
||||
|
||||
# The go template of the command to run. The template should have a go
|
||||
# template command structure. The template may use the fields:
|
||||
# - .Bin (or .BinLarge)
|
||||
# - .InFile
|
||||
# - .OutFile
|
||||
# - .ConfFile (or .ConfFileLarge)
|
||||
command = "{{.Bin}} --in {{.InFile}} --out {{.OutFile}} --config {{.ConfFile}} --traces /opt/linea/prover/config/executor/traces-limits-M.toml"
|
||||
|
||||
# The config file to use for the command
|
||||
conf_file = "/opt/linea/prover/config/executor/execution.config.toml"
|
||||
|
||||
# The directory where we read the files to handle
|
||||
dir_from = "/data/prover/v2/execution/requests"
|
||||
|
||||
# The directory where we write the generated file
|
||||
dir_to = "/data/prover/v2/execution/responses"
|
||||
|
||||
# The directory where we move the files when they have been handled.
|
||||
dir_done = "/data/prover/v2/execution/requests-done"
|
||||
|
||||
[compression]
|
||||
|
||||
# Path to the executable to run for the command
|
||||
bin = "/opt/linea/prover/decomprover"
|
||||
|
||||
# The go template of the command to run. The template should have a go
|
||||
# template command structure. The template may use the fields:
|
||||
# - .Bin (or .BinLarge)
|
||||
# - .InFile
|
||||
# - .OutFile
|
||||
# - .ConfFile (or .ConfFileLarge)
|
||||
command = "{{.Bin}} --in {{.InFile}} --out {{.OutFile}} --config {{.ConfFile}}"
|
||||
|
||||
# the configuration file to use for the command
|
||||
conf_file = "/opt/linea/prover/config/executor/decompression.config.toml"
|
||||
|
||||
# The directory where we read the files to handle
|
||||
dir_from = "/data/prover/v2/compression/requests"
|
||||
|
||||
# The directory where we write the generated file
|
||||
dir_to = "/data/prover/v2/compression/responses"
|
||||
|
||||
# The directory where we move the files when they have been handled.
|
||||
dir_done = "/data/prover/v2/compression/requests-done"
|
||||
|
||||
[aggregation]
|
||||
|
||||
# Path to the executable to run for the command
|
||||
bin = "/opt/linea/prover/aggregprover"
|
||||
|
||||
# The go template of the command to run. The template should have a go
|
||||
# template command structure. The template may use the fields:
|
||||
# - .Bin (or .BinLarge)
|
||||
# - .InFile
|
||||
# - .OutFile
|
||||
# - .ConfFile (or .ConfFileLarge)
|
||||
command = "{{.Bin}} --in {{.InFile}} --out {{.OutFile}} --config {{.ConfFile}}"
|
||||
|
||||
# the configuration file to use for the command
|
||||
conf_file = "/opt/linea/prover/config/executor/aggregation.config.toml"
|
||||
|
||||
# The directory where we read the files to handle
|
||||
dir_from = "/data/prover/v2/aggregation/requests"
|
||||
|
||||
# The directory where we write the generated file
|
||||
dir_to = "/data/prover/v2/aggregation/responses"
|
||||
|
||||
# The directory where we move the files when they have been handled.
|
||||
dir_done = "/data/prover/v2/aggregation/requests-done"
|
||||
@@ -1,5 +0,0 @@
|
||||
# This file is empty, partly because we have not determined what should be the
|
||||
# the exact configuration of the prover-compression yet. We leave it as a placeholder.
|
||||
# NOTE: It will be passed to the prover-compression, but it will not be opened by the
|
||||
# command.
|
||||
dev_mode = true
|
||||
@@ -1,41 +0,0 @@
|
||||
tolerate_parent_state_root_hash_mismatch = true
|
||||
|
||||
[logging]
|
||||
# level: trace=1|debug=2|info=3|warn=4|error=5|fatal=6
|
||||
level = 2
|
||||
file = ""
|
||||
|
||||
[monitoring]
|
||||
profiling = true
|
||||
tracing = true
|
||||
|
||||
[prover]
|
||||
version = "v2.0.0"
|
||||
# type: development|partial|full|proofless
|
||||
type = "development"
|
||||
# size: medium|large
|
||||
size = "medium"
|
||||
|
||||
[files]
|
||||
out_folder = "/opt/linea/prover/setup/light/d1624b8"
|
||||
pkey_file = "proving_key.bin"
|
||||
vkey_file = "verifying_key.bin"
|
||||
circuit_file = "circuit.bin"
|
||||
|
||||
[verifier_contract]
|
||||
verifier_id_partial_m = 1
|
||||
verifier_id_full_m = 2
|
||||
verifier_id_full_l = 3
|
||||
|
||||
[inputs]
|
||||
# @alex: Hotfix, although the exec prover runs in dev mode. It will still check
|
||||
# if the conflated traces dir exists.
|
||||
conflated_traces_dir = "/"
|
||||
|
||||
[feature_gates]
|
||||
with_keccak = true
|
||||
with_ecdsa = false
|
||||
|
||||
[layer2]
|
||||
message_service_contract = "0xe537D669CA013d86EBeF1D64e40fC74CADC91987"
|
||||
chain_id = 1337
|
||||
@@ -59,7 +59,6 @@ export async function isSendBundleMethodNotFound(rpcEndpoint: URL, targetBlockNu
|
||||
} catch (err) {
|
||||
if (err instanceof Error) {
|
||||
if (err.message === "Method not found") {
|
||||
// Bundle request doesn't support in traces-v1 besu nodes
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
1
e2e/src/config/global.d.ts
vendored
1
e2e/src/config/global.d.ts
vendored
@@ -4,7 +4,6 @@ import { Logger } from "winston";
|
||||
|
||||
declare global {
|
||||
var stopL2TrafficGeneration: () => void;
|
||||
var shouldSkipBundleTests: boolean;
|
||||
var logger: Logger;
|
||||
}
|
||||
|
||||
|
||||
@@ -3,11 +3,7 @@ import { ethers } from "ethers";
|
||||
import { config } from "../tests-config";
|
||||
import { deployContract } from "../../common/deployments";
|
||||
import { DummyContract__factory, TestContract__factory } from "../../typechain";
|
||||
import {
|
||||
etherToWei,
|
||||
isSendBundleMethodNotFound,
|
||||
sendTransactionsToGenerateTrafficWithInterval,
|
||||
} from "../../common/utils";
|
||||
import { etherToWei, sendTransactionsToGenerateTrafficWithInterval } from "../../common/utils";
|
||||
import { EMPTY_CONTRACT_CODE } from "../../common/constants";
|
||||
import { createTestLogger } from "../logger";
|
||||
|
||||
@@ -22,8 +18,6 @@ export default async (): Promise<void> => {
|
||||
await configureOnceOffPrerequisities();
|
||||
}
|
||||
|
||||
process.env.SHOULD_SKIP_BUNDLE_TESTS = (await isSendBundleMethodNotFound(config.getL2BesuNodeEndpoint()!)).toString();
|
||||
|
||||
logger.info("Generating L2 traffic...");
|
||||
const pollingAccount = await config.getL2AccountManager().generateAccount(etherToWei("200"));
|
||||
const stopPolling = await sendTransactionsToGenerateTrafficWithInterval(pollingAccount, 2_000);
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
import { createTestLogger } from "../logger";
|
||||
|
||||
global.logger = createTestLogger();
|
||||
global.shouldSkipBundleTests = process.env.SHOULD_SKIP_BUNDLE_TESTS === "true";
|
||||
|
||||
@@ -10,12 +10,7 @@ import {
|
||||
} from "./common/utils";
|
||||
import { ethers, TransactionRequest } from "ethers";
|
||||
|
||||
const describeIf = shouldSkipBundleTests ? describe.skip : describe;
|
||||
if (shouldSkipBundleTests) {
|
||||
logger.info("Skip bundle tests due to tracing-v1 besu nodes");
|
||||
}
|
||||
|
||||
describeIf("Send bundle test suite", () => {
|
||||
describe("Send bundle test suite", () => {
|
||||
const l2AccountManager = config.getL2AccountManager();
|
||||
const lineaCancelBundleClient = new LineaBundleClient(config.getSequencerEndpoint()!);
|
||||
const lineaSendBundleClient = new LineaBundleClient(config.getL2BesuNodeEndpoint()!);
|
||||
|
||||
Reference in New Issue
Block a user