ci: Approximate MAKEJOBS in image build phase #30935

pull maflcko wants to merge 1 commits into bitcoin:master from maflcko:2409-ci-cpu changing 2 files +15 −3
  1. maflcko commented at 8:51 am on September 20, 2024: member

    The MAKEJOBS env var is the default in image builds, which is fine, because it is only relevant when building msan (or iwyu) and only differs when setting MAKEJOBS to something other than nproc (currently used as an approximation).

    So the normal workflow of MAKEJOBS="-j$(nproc)" FILE_ENV="./ci/test/00_setup_env_native_msan.sh" ./ci/test_run_all.sh already works today.

    However, MAKEJOBS="-j1" FILE_ENV="./ci/test/00_setup_env_native_msan.sh" ./ci/test_run_all.sh does not.

    This is hard to fix, because making the env var a build arg means that changing it (and only it) requires a new (expensive and redundant) build.

    So add an option HAVE_CGROUP_CPUSET, which can be set to approximate MAKEJOBS a bit. Can be tested via:

    HAVE_CGROUP_CPUSET=yo MAKEJOBS="-j_something" FILE_ENV="./ci/test/00_setup_env_native_msan.sh" ./ci/test_run_all.sh

  2. DrahtBot commented at 8:52 am on September 20, 2024: contributor

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

    Code Coverage

    For detailed information about the code coverage, see the test coverage report.

    Reviews

    See the guideline for information on the review process. A summary of reviews will appear here.

    Conflicts

    Reviewers, this pull request conflicts with the following ones:

    • #30997 (build: Switch to Qt 6 by hebasto)

    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 Sep 20, 2024
  4. maflcko force-pushed on Sep 20, 2024
  5. DrahtBot added the label CI failed on Sep 20, 2024
  6. DrahtBot commented at 8:58 am on September 20, 2024: contributor

    🚧 At least one of the CI tasks failed. Debug: https://github.com/bitcoin/bitcoin/runs/30421850976

    Make sure to run all tests locally, according to the documentation.

    The failure may happen due to a number of reasons, for example:

    • Possibly due to a silent merge conflict (the changes in this pull request being incompatible with the current code in the target branch). If so, make sure to rebase on the latest commit of the target branch.

    • A sanitizer issue, which can only be found by compiling with the sanitizer and running the affected test.

    • An intermittent issue.

    Leave a comment here, if you need help tracking down a confusing failure.

  7. maflcko force-pushed on Sep 20, 2024
  8. DrahtBot removed the label CI failed on Sep 20, 2024
  9. maflcko commented at 12:39 pm on September 20, 2024: member
    (This is a follow-up to #28504)
  10. DrahtBot added the label CI failed on Sep 29, 2024
  11. DrahtBot removed the label CI failed on Sep 29, 2024
  12. DrahtBot added the label Needs rebase on Sep 30, 2024
  13. maflcko force-pushed on Oct 1, 2024
  14. DrahtBot removed the label Needs rebase on Oct 1, 2024
  15. maflcko commented at 7:13 pm on October 1, 2024: member
    This may or may not be needed for #30852, but it could be useful even outside of that, if someone wanted to set MAKEJOBS when building the image.
  16. ci: Approximate MAKEJOBS in image build phase fa71bedf86
  17. maflcko force-pushed on Oct 8, 2024


maflcko DrahtBot

Labels
Tests


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: 2024-10-08 16:12 UTC

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