ci: Fix macOS-cross SDK rsync #28273

pull maflcko wants to merge 2 commits into bitcoin:master from maflcko:2308-ci-cache-fix- changing 5 files +10 −12
  1. maflcko commented at 3:28 PM on August 15, 2023: member

    This should fix the macOS-cross build on Cirrus CI containers.

    Locally this was already working, because the SDK was cached in /ci_container_base/ in the image, which is also the folder used for a later CI run.

    However, on Cirrus CI, when using an image and a custom BASE_ROOT_DIR, the SDK will not be found in /ci_base_install/, nor in BASE_ROOT_DIR.

    Fix this by normalizing all folders to /ci_container_base/.

  2. DrahtBot commented at 3:28 PM on August 15, 2023: contributor

    <!--e57a25ab6845829454e8d69fc972939a-->

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

    <!--021abf342d371248e50ceaed478a90ca-->

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    ACK hebasto

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

    <!--174a7506f384e20aa4161008e828411d-->

    Conflicts

    Reviewers, this pull request conflicts with the following ones:

    • #21652 (ci: Switch more tasks to self-hosted by MarcoFalke)

    If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

  3. DrahtBot added the label Tests on Aug 15, 2023
  4. maflcko force-pushed on Aug 15, 2023
  5. DrahtBot added the label CI failed on Aug 15, 2023
  6. maflcko force-pushed on Aug 15, 2023
  7. maflcko renamed this:
    ci: Fix corrupt macOS-cross depends cache
    ci: Fix macOS-cross SDK rsync
    on Aug 15, 2023
  8. maflcko commented at 5:06 PM on August 15, 2023: member

    Changed the fix and added an explanation. Let's hope this works. I presume this was a silent merge conflict between 80d70cb6b04b5a3c13e661c0718a4b5108d55869 and 85e672ab3dfbbeec5255befcbcd239a11536be0e. cc @hebasto

  9. DrahtBot renamed this:
    ci: Fix macOS-cross SDK rsync
    ci: Fix macOS-cross SDK rsync
    on Aug 15, 2023
  10. maflcko force-pushed on Aug 15, 2023
  11. maflcko commented at 6:12 PM on August 15, 2023: member

    Still fails:

    clang: warning: no such sysroot directory: '/tmp/cirrus-ci-build/depends/SDKs/Xcode-12.2-12B45b-extracted-SDK-with-libcxx-headers' [-Wmissing-sysroot]
    ld: library not found for -lc++
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
    

    https://cirrus-ci.com/task/6482314977345536?logs=ci#L676

  12. maflcko force-pushed on Aug 15, 2023
  13. maflcko force-pushed on Aug 15, 2023
  14. maflcko force-pushed on Aug 15, 2023
  15. maflcko force-pushed on Aug 15, 2023
  16. maflcko force-pushed on Aug 15, 2023
  17. DrahtBot removed the label CI failed on Aug 16, 2023
  18. maflcko commented at 5:27 AM on August 16, 2023: member

    CI is green 🫠

  19. in .cirrus.yml:69 in fae6642af2 outdated
      65 | @@ -66,7 +66,7 @@ container_depends_template: &CONTAINER_DEPENDS_TEMPLATE
      66 |      dockerfile: ci/test_imagefile  # https://cirrus-ci.org/guide/docker-builder-vm/#dockerfile-as-a-ci-environment
      67 |    depends_built_cache:
      68 |      folder: "depends/built"
      69 | -    fingerprint_script: echo $CIRRUS_TASK_NAME $(git rev-parse HEAD:depends)
      70 | +    fingerprint_script: echo salt_001 $CIRRUS_TASK_NAME $(git rev-parse HEAD:depends)
    


    maflcko commented at 5:28 AM on August 16, 2023:

    review note: This was done to manually nuke the old cache and start a new depends build/cache for all tasks on Cirrus CI.


    hebasto commented at 7:59 AM on August 16, 2023:

    Why is there a need to build a new depends/built cache in the first place?


    maflcko commented at 8:31 AM on August 16, 2023:

    Thanks, removed.

  20. maflcko requested review from hebasto on Aug 16, 2023
  21. maflcko requested review from fanquake on Aug 16, 2023
  22. hebasto commented at 8:04 AM on August 16, 2023: member

    Re-run of the Cirrus task builds the depends packages regardless of caching: https://cirrus-ci.com/task/5981899345100800

  23. ci: Fix macOS-cross SDK rsync
    This should fix the macOS-cross build on Cirrus CI containers.
    
    Locally this was already working, because the SDK was cached in
    /ci_container_base/ in the image, which is also the folder used for a
    later CI run.
    
    However, on Cirrus CI, when using an image *and* a custom BASE_ROOT_DIR,
    the SDK will not be found in /ci_base_install/, nor in BASE_ROOT_DIR.
    
    Fix this by normalizing *all* folders to /ci_container_base/.
    fa193f5dfc
  24. ci: Avoid error on macOS native
    This avoids "mkdir: /ci_container_base: Read-only file system"
    fa6e5d3eef
  25. in .github/workflows/ci.yml:59 in fae6642af2 outdated
      55 | @@ -56,4 +56,4 @@ jobs:
      56 |            restore-keys: ${{ github.job }}-ccache-cache
      57 |  
      58 |        - name: CI script
      59 | -        run: ./ci/test_run_all.sh
      60 | +        run: env BASE_ROOT_DIR=$GITHUB_WORKSPACE ./ci/test_run_all.sh
    


    hebasto commented at 8:22 AM on August 16, 2023:

    fae6642af234cad6063945bcba7958168bf2687c, style nit, suggesting to set environment variables consistently throughout the entire ci.yml file, wherever possible:

            env:
              BASE_ROOT_DIR: ${{ github.workspace }}
            run: ./ci/test_run_all.sh
    

    maflcko commented at 8:31 AM on August 16, 2023:

    Thanks, adjusted style

  26. maflcko force-pushed on Aug 16, 2023
  27. maflcko commented at 8:33 AM on August 16, 2023: member

    Re-run of the Cirrus task builds the depends packages regardless of caching: https://cirrus-ci.com/task/5981899345100800

    Good catch. The folder was empty. Should be fixed now.

  28. maflcko commented at 10:50 AM on August 16, 2023: member
  29. hebasto approved
  30. hebasto commented at 10:52 AM on August 16, 2023: member

    ACK fa6e5d3eeffebf81b5d7ca99bf7b5e70356516ab

  31. maflcko added this to the milestone 26.0 on Aug 16, 2023
  32. fanquake merged this on Aug 16, 2023
  33. fanquake closed this on Aug 16, 2023

  34. maflcko deleted the branch on Aug 16, 2023
  35. sidhujag referenced this in commit 310151bd2e on Aug 17, 2023
  36. bitcoin locked this on May 14, 2025


fanquake

Labels

Milestone
26.0


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: 2026-04-24 09:14 UTC

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