ci: Fix lint runner selection (and docker cache) #33744

pull willcl-ark wants to merge 2 commits into bitcoin:master from willcl-ark:fix-lint-caching changing 2 files +13 −4
  1. willcl-ark commented at 10:38 am on October 30, 2025: member

    Fixes: #33735

    Correct runner type selection for the lint job.

    This was erroneously left-out during refactor of the runner selection mechanism in #33302 causing the lint job to run on GH hosts (and therefore not be able to acces local cirrus caches).

  2. ci: fix lint docker caching
    Fixes: 33735
    
    Correct runner type selection for the lint job.
    
    This was erroneously left-out during refactor of the runner selection
    mechanism in #33302 causing the lint job to run on GH hosts (and
    therefore not be able to acces local cirrus caches).
    0b3b8a3be1
  3. DrahtBot commented at 10:39 am on October 30, 2025: contributor

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    Code Coverage & Benchmarks

    For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/33744.

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    ACK hebasto, maflcko

    If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

  4. fanquake renamed this:
    Fix lint runner selection (and docker cache)
    ci: Fix lint runner selection (and docker cache)
    on Oct 30, 2025
  5. DrahtBot added the label Tests on Oct 30, 2025
  6. fanquake added the label Needs backport (30.x) on Oct 30, 2025
  7. fanquake requested review from maflcko on Oct 30, 2025
  8. maflcko commented at 11:23 am on October 30, 2025: member

    lgtm ACK 0b3b8a3be1a0db0dfc634acca1d9305dc0fbfae6

    This is now selecting the correct provider.

    Some follow-up ideas:

    I ran codex -c model=gpt-5-mini --dangerously-bypass-approvals-and-sandbox exec 'Review the top commit' on ff18b6bbaf322739fe98fd51b0d89d65a5775ab5 for fun, and it printed:

    0**Potential issue I found**
    1- In `action.yml` the `cache-provider` `options` list contains `gh`:
    2  - `.github/actions/configure-docker/action.yml:4`
    3  - But the workflow sets `provider=gha` in `ci.yml` (`echo "provider=gha" >> "$GITHUB_OUTPUT"`).
    

    Which looks real. I guess given that GitHub seems to ignore if wrong options are passed and doesn’t do any validation anyway, it seems fine to remove them?

    Also, could use a yaml anchor to re-use the snippet and specify the runners verbosely for the lint as well:

    0            cirrus-runner: 'ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04-xs'
    1            fallback-runner: 'ubuntu-24.04'
    

    But those are just nits. Feel free to ignore them.

  9. willcl-ark commented at 1:05 pm on October 30, 2025: member
    I think it would make sense to include here.
  10. hebasto approved
  11. hebasto commented at 2:42 pm on November 3, 2025: member
    ACK 0b3b8a3be1a0db0dfc634acca1d9305dc0fbfae6, I have reviewed the code and it looks OK.
  12. ci: fix configure docker action inputs
    The options used were wrong in two ways: firstly they were not enforced
    as a "choice" (i.e. invalid input valudes could be provided without
    error) and one of the options was listed as `gh` when we passed it as
    `gha` from ci.yml.
    
    "Fix" this by removing the choice altogether but sanity-testing the
    input value against an expected list using a GHA "warning" to notify of
    unknown inputs.
    7632e0ba31
  13. willcl-ark commented at 3:18 pm on November 3, 2025: member

    Sorry for the slow turnaround.

    I pushed an additional commit to address (half of) @maflcko’s nits. He is correct that GHA apparently does not validate inputs (even if you set type: choice), so it makes sense to remove the options. In order that we not miss if the wrong option is passed here in the future I added a sanity check which will annotate the CI run with a Warning when an unknown input is detected. See the bottom of the annotations of this run for what that looks like: https://github.com/willcl-ark/bitcoin/actions/runs/19039344679

  14. in .github/actions/configure-docker/action.yml:9 in 7632e0ba31
    3@@ -4,12 +4,21 @@ inputs:
    4   cache-provider:
    5     description: 'gha or cirrus cache provider'
    6     required: true
    7-    options:
    8-    - gh
    9-    - cirrus
    


    hebasto commented at 5:08 pm on November 3, 2025:
    The GHA docs do not mention inputs.<input_id>.options at all.

    willcl-ark commented at 5:14 pm on November 3, 2025:
    Yep, I think the original implementation got wires crossed with workflow dispatch inputs https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#example-of-onworkflow_dispatchinputs
  15. hebasto approved
  16. hebasto commented at 5:08 pm on November 3, 2025: member
    ACK 7632e0ba312a372259897c68fd7c7eb723df3738.
  17. maflcko commented at 11:27 am on November 4, 2025: member

    Didn’t look at the second commit, which is written in Bash, but I guess this is harmless and fine either way.

    re-ACK 7632e0ba312a372259897c68fd7c7eb723df3738 📞

    Signature:

    0untrusted comment: signature from minisign secret key on empty file; verify via: minisign -Vm "${path_to_any_empty_file}" -P RWTRmVTMeKV5noAMqVlsMugDDCyyTSbA3Re5AkUrhvLVln0tSaFWglOw -x "${path_to_this_whole_four_line_signature_blob}"
    1RUTRmVTMeKV5npGrKx1nqXCw5zeVHdtdYURB/KlyA/LMFgpNCs+SkW9a8N95d+U4AP1RJMi+krxU1A3Yux4bpwZNLvVBKy0wLgM=
    2trusted comment: re-ACK 7632e0ba312a372259897c68fd7c7eb723df3738 📞
    3Wsj9jTyJ6hXdXzBRMaD6VfTIDzB+tNr/XZ8/PQRjnFNEFVI69yWaecnfLehm0JYzTWUz1H8zm72xzAnaCiGEBw==
    
  18. hebasto merged this on Nov 4, 2025
  19. hebasto closed this on Nov 4, 2025

  20. fanquake referenced this in commit 8f8c7cf7fa on Nov 4, 2025
  21. fanquake referenced this in commit 34576c4574 on Nov 4, 2025
  22. fanquake removed the label Needs backport (30.x) on Nov 4, 2025
  23. fanquake commented at 11:43 am on November 4, 2025: member
    Backported to 30.x in #33609.

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2025-11-29 06:13 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me