diff --git a/.github/workflows/qa-constrained-tip-tracking.yml b/.github/workflows/qa-constrained-tip-tracking.yml index 10934046c8d..31eea02870b 100644 --- a/.github/workflows/qa-constrained-tip-tracking.yml +++ b/.github/workflows/qa-constrained-tip-tracking.yml @@ -22,7 +22,7 @@ jobs: runs-on: [ self-hosted, qa, "${{ matrix.backend }}", tip-tracking ] timeout-minutes: 780 # 13 hours env: - ERIGON_REFERENCE_DATA_DIR: /opt/erigon-versions/reference-version-main/datadir + ERIGON_REFERENCE_DATA_DIR: /opt/erigon-versions/reference-version/datadir ERIGON_TESTBED_DATA_DIR: /opt/erigon-testbed/datadir ERIGON_QA_PATH: /home/qarunner/erigon-qa TRACKING_TIME_SECONDS: 7200 # 2 hours diff --git a/.github/workflows/qa-rpc-integration-tests-gnosis.yml b/.github/workflows/qa-rpc-integration-tests-gnosis.yml index 09cbc3a63e7..1965a18725d 100644 --- a/.github/workflows/qa-rpc-integration-tests-gnosis.yml +++ b/.github/workflows/qa-rpc-integration-tests-gnosis.yml @@ -29,7 +29,6 @@ jobs: cancel-in-progress: true runs-on: [ self-hosted, qa, Gnosis, rpc-integration ] env: - ERIGON_REFERENCE_DATA_DIR: /opt/erigon-versions/gnosis-reference-version/datadir ERIGON_TESTBED_AREA: /opt/erigon-testbed ERIGON_QA_PATH: /home/qarunner/erigon-qa ERIGON_ASSERT: true @@ -40,6 +39,21 @@ jobs: - name: Check out repository uses: actions/checkout@v6 + - name: Set reference data dir based on branch + run: | + # For pull_request events base_ref is the target branch name; for push/dispatch parse from ref. + BRANCH="${{ github.base_ref }}" + if [ -z "$BRANCH" ]; then + BRANCH="${{ github.ref }}" + BRANCH="${BRANCH#refs/heads/}" + fi + if [[ "$BRANCH" == release/* ]]; then + VERSION="${BRANCH#release/}" + echo "ERIGON_REFERENCE_DATA_DIR=/opt/erigon-versions/gnosis-reference-version-${VERSION}/datadir" >> $GITHUB_ENV + else + echo "ERIGON_REFERENCE_DATA_DIR=/opt/erigon-versions/gnosis-reference-version/datadir" >> $GITHUB_ENV + fi + - name: Clean Erigon Build Directory run: | make clean diff --git a/.github/workflows/qa-rpc-integration-tests-latest.yml b/.github/workflows/qa-rpc-integration-tests-latest.yml index 4b225d92f5f..becbde63ae2 100644 --- a/.github/workflows/qa-rpc-integration-tests-latest.yml +++ b/.github/workflows/qa-rpc-integration-tests-latest.yml @@ -33,7 +33,6 @@ jobs: cancel-in-progress: true runs-on: [ self-hosted, qa, Ethereum, rpc-latest-erigon ] env: - ERIGON_REFERENCE_DATA_DIR: /opt/erigon-versions/reference-version/datadir ERIGON_TESTBED_DATA_DIR: /opt/erigon-testbed/datadir ERIGON_QA_PATH: /home/qarunner/erigon-qa TOTAL_TIME_SECONDS: 900 # 15 minutes @@ -46,6 +45,21 @@ jobs: - name: Check out repository uses: actions/checkout@v6 + - name: Set reference data dir based on branch + run: | + # For pull_request events base_ref is the target branch name; for push/dispatch parse from ref. + BRANCH="${{ github.base_ref }}" + if [ -z "$BRANCH" ]; then + BRANCH="${{ github.ref }}" + BRANCH="${BRANCH#refs/heads/}" + fi + if [[ "$BRANCH" == release/* ]]; then + VERSION="${BRANCH#release/}" + echo "ERIGON_REFERENCE_DATA_DIR=/opt/erigon-versions/reference-version-${VERSION}/datadir" >> $GITHUB_ENV + else + echo "ERIGON_REFERENCE_DATA_DIR=/opt/erigon-versions/reference-version/datadir" >> $GITHUB_ENV + fi + - name: Clean Erigon Build Directory run: | make clean diff --git a/.github/workflows/qa-rpc-integration-tests-remote.yml b/.github/workflows/qa-rpc-integration-tests-remote.yml index dcf50b6f6f7..b3b5d589beb 100644 --- a/.github/workflows/qa-rpc-integration-tests-remote.yml +++ b/.github/workflows/qa-rpc-integration-tests-remote.yml @@ -29,7 +29,6 @@ jobs: cancel-in-progress: true runs-on: [ self-hosted, qa, Ethereum, rpc-integration-commitment ] env: - ERIGON_REFERENCE_DATA_DIR: /opt/erigon-versions/reference-version/datadir ERIGON_TESTBED_AREA: /opt/erigon-testbed ERIGON_QA_PATH: /home/qarunner/erigon-qa ERIGON_ASSERT: true @@ -40,6 +39,21 @@ jobs: - name: Check out repository uses: actions/checkout@v6 + - name: Set reference data dir based on branch + run: | + # For pull_request events base_ref is the target branch name; for push/dispatch parse from ref. + BRANCH="${{ github.base_ref }}" + if [ -z "$BRANCH" ]; then + BRANCH="${{ github.ref }}" + BRANCH="${BRANCH#refs/heads/}" + fi + if [[ "$BRANCH" == release/* ]]; then + VERSION="${BRANCH#release/}" + echo "ERIGON_REFERENCE_DATA_DIR=/opt/erigon-versions/reference-version-${VERSION}/datadir" >> $GITHUB_ENV + else + echo "ERIGON_REFERENCE_DATA_DIR=/opt/erigon-versions/reference-version/datadir" >> $GITHUB_ENV + fi + - name: Clean Erigon Build Directory run: | make clean diff --git a/.github/workflows/qa-rpc-integration-tests.yml b/.github/workflows/qa-rpc-integration-tests.yml index 49b9d953c09..bd60aa44025 100644 --- a/.github/workflows/qa-rpc-integration-tests.yml +++ b/.github/workflows/qa-rpc-integration-tests.yml @@ -29,7 +29,6 @@ jobs: cancel-in-progress: true runs-on: [ self-hosted, qa, Ethereum, rpc-integration-commitment ] env: - ERIGON_REFERENCE_DATA_DIR: /opt/erigon-versions/reference-version/datadir ERIGON_TESTBED_AREA: /opt/erigon-testbed ERIGON_QA_PATH: /home/qarunner/erigon-qa ERIGON_ASSERT: true @@ -40,6 +39,21 @@ jobs: - name: Check out repository uses: actions/checkout@v6 + - name: Set reference data dir based on branch + run: | + # For pull_request events base_ref is the target branch name; for push/dispatch parse from ref. + BRANCH="${{ github.base_ref }}" + if [ -z "$BRANCH" ]; then + BRANCH="${{ github.ref }}" + BRANCH="${BRANCH#refs/heads/}" + fi + if [[ "$BRANCH" == release/* ]]; then + VERSION="${BRANCH#release/}" + echo "ERIGON_REFERENCE_DATA_DIR=/opt/erigon-versions/reference-version-${VERSION}/datadir" >> $GITHUB_ENV + else + echo "ERIGON_REFERENCE_DATA_DIR=/opt/erigon-versions/reference-version/datadir" >> $GITHUB_ENV + fi + - name: Clean Erigon Build Directory run: | make clean diff --git a/.github/workflows/qa-rpc-performance-comparison-tests.yml b/.github/workflows/qa-rpc-performance-comparison-tests.yml index 0128d5500ac..d4b17e40d1a 100644 --- a/.github/workflows/qa-rpc-performance-comparison-tests.yml +++ b/.github/workflows/qa-rpc-performance-comparison-tests.yml @@ -96,14 +96,29 @@ jobs: env: RUN_ID: ${{ needs.setup.outputs.run_id }} NETWORK: ${{ needs.setup.outputs.network }} - ERIGON_REFERENCE_DIR: /opt/erigon-versions/reference-version - ERIGON_REFERENCE_DATA_DIR: /opt/erigon-versions/reference-version/datadir ERIGON_TESTBED_DATA_DIR: /opt/erigon-testbed/datadir TOTAL_TIME_SECONDS: 1200 # 20 minutes GETH_INSTALL_DIR: /opt/go-ethereum CLIENT: ${{ matrix.client }} steps: + - name: Set reference data dir based on branch + run: | + # For pull_request events base_ref is the target branch name; for push/dispatch parse from ref. + BRANCH="${{ github.base_ref }}" + if [ -z "$BRANCH" ]; then + BRANCH="${{ github.ref }}" + BRANCH="${BRANCH#refs/heads/}" + fi + if [[ "$BRANCH" == release/* ]]; then + VERSION="${BRANCH#release/}" + ERIGON_REFERENCE_DIR="/opt/erigon-versions/reference-version-${VERSION}" + else + ERIGON_REFERENCE_DIR="/opt/erigon-versions/reference-version" + fi + echo "ERIGON_REFERENCE_DIR=${ERIGON_REFERENCE_DIR}" >> $GITHUB_ENV + echo "ERIGON_REFERENCE_DATA_DIR=${ERIGON_REFERENCE_DIR}/datadir" >> $GITHUB_ENV + - name: Checkout Erigon repository if: matrix.client == 'erigon' uses: actions/checkout@v6 diff --git a/.github/workflows/qa-rpc-performance-tests.yml b/.github/workflows/qa-rpc-performance-tests.yml index 6583b2c8328..1e8bdef4560 100644 --- a/.github/workflows/qa-rpc-performance-tests.yml +++ b/.github/workflows/qa-rpc-performance-tests.yml @@ -87,14 +87,29 @@ jobs: env: RUN_ID: ${{ needs.setup.outputs.run_id }} NETWORK: ${{ needs.setup.outputs.network }} - ERIGON_REFERENCE_DIR: /opt/erigon-versions/reference-version - ERIGON_REFERENCE_DATA_DIR: /opt/erigon-versions/reference-version/datadir ERIGON_TESTBED_AREA: /opt/erigon-testbed ERIGON_QA_PATH: /home/qarunner/erigon-qa GETH_INSTALL_DIR: /opt/go-ethereum CLIENT: ${{ matrix.client }} steps: + - name: Set reference data dir based on branch + run: | + # For pull_request events base_ref is the target branch name; for push/dispatch parse from ref. + BRANCH="${{ github.base_ref }}" + if [ -z "$BRANCH" ]; then + BRANCH="${{ github.ref }}" + BRANCH="${BRANCH#refs/heads/}" + fi + if [[ "$BRANCH" == release/* ]]; then + VERSION="${BRANCH#release/}" + ERIGON_REFERENCE_DIR="/opt/erigon-versions/reference-version-${VERSION}" + else + ERIGON_REFERENCE_DIR="/opt/erigon-versions/reference-version" + fi + echo "ERIGON_REFERENCE_DIR=${ERIGON_REFERENCE_DIR}" >> $GITHUB_ENV + echo "ERIGON_REFERENCE_DATA_DIR=${ERIGON_REFERENCE_DIR}/datadir" >> $GITHUB_ENV + - name: Checkout Erigon repository if: matrix.client == 'erigon' uses: actions/checkout@v6 diff --git a/.github/workflows/qa-tip-tracking-gnosis.yml b/.github/workflows/qa-tip-tracking-gnosis.yml index 44352cccf15..2da23db2dff 100644 --- a/.github/workflows/qa-tip-tracking-gnosis.yml +++ b/.github/workflows/qa-tip-tracking-gnosis.yml @@ -17,7 +17,6 @@ jobs: runs-on: [self-hosted, qa, Gnosis, tip-tracking] timeout-minutes: 1200 env: - ERIGON_REFERENCE_DATA_DIR: /opt/erigon-versions/reference-version-3.3/datadir ERIGON_TESTBED_DATA_DIR: /opt/erigon-testbed/datadir ERIGON_QA_PATH: /home/qarunner/erigon-qa TRACKING_TIME_SECONDS: 7200 # 2 hours @@ -28,6 +27,24 @@ jobs: - name: Check out repository uses: actions/checkout@v6 + - name: Set reference data dir based on branch + run: | + # For pull_request events base_ref is the target branch name; for push/dispatch parse from ref. + BRANCH="${{ github.base_ref }}" + if [ -z "$BRANCH" ]; then + BRANCH="${{ github.ref }}" + BRANCH="${BRANCH#refs/heads/}" + fi + if [[ "$BRANCH" == release/* ]]; then + VERSION="${BRANCH#release/}" + MAJOR="${VERSION%.*}" + MINOR="${VERSION##*.}" + PREV_VERSION="${MAJOR}.$((MINOR - 1))" + echo "ERIGON_REFERENCE_DATA_DIR=/opt/erigon-versions/gnosis-reference-version-${PREV_VERSION}/datadir" >> $GITHUB_ENV + else + echo "ERIGON_REFERENCE_DATA_DIR=/opt/erigon-versions/gnosis-reference-version/datadir" >> $GITHUB_ENV + fi + - name: Clean Erigon Build Directory run: | make clean diff --git a/.github/workflows/qa-tip-tracking-with-load.yml b/.github/workflows/qa-tip-tracking-with-load.yml index 8f6de747eea..19642ccda98 100644 --- a/.github/workflows/qa-tip-tracking-with-load.yml +++ b/.github/workflows/qa-tip-tracking-with-load.yml @@ -47,7 +47,7 @@ jobs: runs-on: ${{ matrix.runs-on }} timeout-minutes: 300 # 5 hours env: - ERIGON_REFERENCE_DATA_DIR: /opt/erigon-versions/reference-version-main/datadir + ERIGON_REFERENCE_DATA_DIR: /opt/erigon-versions/reference-version/datadir ERIGON_TESTBED_DATA_DIR: /opt/erigon-testbed/datadir ERIGON_QA_PATH: /home/qarunner/erigon-qa TRACKING_TIME_SECONDS: 7200 # 2 hours diff --git a/.github/workflows/qa-tip-tracking.yml b/.github/workflows/qa-tip-tracking.yml index 3fe17771806..97bd56f5234 100644 --- a/.github/workflows/qa-tip-tracking.yml +++ b/.github/workflows/qa-tip-tracking.yml @@ -17,7 +17,6 @@ jobs: runs-on: [self-hosted, qa, Ethereum, tip-tracking] timeout-minutes: 1300 # 21.66667 hours env: - ERIGON_REFERENCE_DATA_DIR: /opt/erigon-versions/reference-version-3.3/datadir ERIGON_TESTBED_DATA_DIR: /opt/erigon-testbed/datadir ERIGON_QA_PATH: /home/qarunner/erigon-qa TRACKING_TIME_SECONDS: 7200 # 2 hours @@ -28,6 +27,24 @@ jobs: - name: Check out repository uses: actions/checkout@v6 + - name: Set reference data dir based on branch + run: | + # For pull_request events base_ref is the target branch name; for push/dispatch parse from ref. + BRANCH="${{ github.base_ref }}" + if [ -z "$BRANCH" ]; then + BRANCH="${{ github.ref }}" + BRANCH="${BRANCH#refs/heads/}" + fi + if [[ "$BRANCH" == release/* ]]; then + VERSION="${BRANCH#release/}" + MAJOR="${VERSION%.*}" + MINOR="${VERSION##*.}" + PREV_VERSION="${MAJOR}.$((MINOR - 1))" + echo "ERIGON_REFERENCE_DATA_DIR=/opt/erigon-versions/reference-version-${PREV_VERSION}/datadir" >> $GITHUB_ENV + else + echo "ERIGON_REFERENCE_DATA_DIR=/opt/erigon-versions/reference-version/datadir" >> $GITHUB_ENV + fi + - name: Clean Erigon Build Directory run: | make clean