mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-01-21 15:50:07 +01:00
Merge bitcoin/bitcoin#34080: ci: Pin native tests on cross-builds to same commit
faa8ee62f5ci: Pin native tests on cross-builds to same commit (MarcoFalke) Pull request description: After commit13809b867a, the native tests may check out a different commit than the cross-build task that produced the artefacts they run on. Obviously, this may lead to test failures. Fix it, by first determining a fixed commit, to be used for both the build and the native tests. An alternative could be to fully or partially revert13809b867a, but that comes again with the downsides making it harder to detect silent merge conflicts by re-running CI, or clearing unrelated and fixed intermittent test issues by re-running CI. Then, the only alternative would be to close and re-open the pull request. ACKs for top commit: janb84: ACKfaa8ee62f5ryanofsky: Code review ACKfaa8ee62f5. Thanks for the naming & display updates since last review! hodlinator: crACKfaa8ee62f5Tree-SHA512: 01391cdfad34e3f2f5b3a6247b1aeb412d023e368bc17572aa66324688439786e79e263288276053ffcfa8521635b07339dbf087b8a30d6670373556a77c22ee
This commit is contained in:
30
.github/workflows/ci.yml
vendored
30
.github/workflows/ci.yml
vendored
@@ -30,7 +30,7 @@ defaults:
|
||||
|
||||
jobs:
|
||||
runners:
|
||||
name: 'determine runners'
|
||||
name: '[meta] determine runners'
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
provider: ${{ steps.runners.outputs.provider }}
|
||||
@@ -343,9 +343,23 @@ jobs:
|
||||
run: |
|
||||
py -3 test/fuzz/test_runner.py --par $NUMBER_OF_PROCESSORS --loglevel DEBUG "${RUNNER_TEMP}/qa-assets/fuzz_corpora"
|
||||
|
||||
record-frozen-commit:
|
||||
# Record frozen commit, so that the native tests on cross-builds can run on
|
||||
# the exact same commit id of the build.
|
||||
name: '[meta] record frozen commit'
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
commit: ${{ steps.record-commit.outputs.commit }}
|
||||
steps:
|
||||
- *ANNOTATION_PR_NUMBER
|
||||
- *CHECKOUT
|
||||
- name: Record commit
|
||||
id: record-commit
|
||||
run: echo "commit=$(git rev-parse HEAD)" >> "$GITHUB_OUTPUT"
|
||||
|
||||
windows-cross:
|
||||
name: 'Windows-cross to x86_64, ${{ matrix.crt }}'
|
||||
needs: runners
|
||||
needs: [runners, record-frozen-commit]
|
||||
runs-on: ${{ needs.runners.outputs.provider == 'cirrus' && 'ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04-sm' || 'ubuntu-24.04' }}
|
||||
if: ${{ vars.SKIP_BRANCH_PUSH != 'true' || github.event_name == 'pull_request' }}
|
||||
|
||||
@@ -368,7 +382,10 @@ jobs:
|
||||
steps:
|
||||
- *ANNOTATION_PR_NUMBER
|
||||
|
||||
- *CHECKOUT
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
ref: ${{ needs.record-frozen-commit.outputs.commit }}
|
||||
|
||||
- name: Configure environment
|
||||
uses: ./.github/actions/configure-environment
|
||||
@@ -402,7 +419,7 @@ jobs:
|
||||
windows-native-test:
|
||||
name: 'Windows, ${{ matrix.crt }}, test cross-built'
|
||||
runs-on: windows-2022
|
||||
needs: windows-cross
|
||||
needs: [windows-cross, record-frozen-commit]
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
@@ -421,7 +438,10 @@ jobs:
|
||||
steps:
|
||||
- *ANNOTATION_PR_NUMBER
|
||||
|
||||
- *CHECKOUT
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
ref: ${{ needs.record-frozen-commit.outputs.commit }}
|
||||
|
||||
- name: Download built executables
|
||||
uses: actions/download-artifact@v5
|
||||
|
||||
Reference in New Issue
Block a user