ci: Move remained task from Cirrus to GitHub Actions #1409

pull hebasto wants to merge 4 commits into bitcoin-core:master from hebasto:230821-gha-all changing 2 files +238 −159
  1. hebasto commented at 1:58 pm on August 22, 2023: member
    This PR concludes the migration from Cirrus CI to GitHub Actions.
  2. in .github/workflows/ci.yml:529 in 1961f18a7f outdated
    482+        uses: ./.github/actions/run-in-docker-action
    483+        with:
    484+          dockerfile: ./ci/linux-debian.Dockerfile
    485+          tag: linux-debian-image
    486+          command: >
    487+            git config --global --add safe.directory ${{ github.workspace }} &&
    


    real-or-random commented at 2:48 pm on August 22, 2023:

    Not this PR, but now that I see this, couldn’t we add this to run-in-docker-action to avoid duplication?

    (did I ask this before?)


    hebasto commented at 3:13 pm on August 22, 2023:

    (did I ask this before?)

    We discussed whether it should be placed in ci.sh.

    UPD. … as it’s done in bitcoin repo.


    real-or-random commented at 8:49 am on August 23, 2023:
    Ok, sure, I remember now. I still think this should not be in ci.sh, but yeah, we could consider moving it to run-in-docker-action (in a separate PR probably).

    hebasto commented at 2:00 pm on August 23, 2023:
    Done in #1411.
  3. real-or-random added the label ci on Aug 22, 2023
  4. in .github/workflows/ci.yml:420 in 1961f18a7f outdated
    415+
    416+      - name: Set environment variables
    417+        run: |
    418+          for var in "$(jq -s 'add' <<< '${{ toJSON(matrix.configuration.env_vars) }} ${{ toJSON(matrix.asm.env_vars) }} ${{ toJSON(matrix.cc.env_vars) }}' | jq -r 'to_entries | .[] | "\(.key)=\(.value)"')"; do
    419+            echo "$var" >> "$GITHUB_ENV"
    420+          done          
    


    real-or-random commented at 3:05 pm on August 22, 2023:

    A bit ugly, hm… There’s no better way to merge this, I guess.

    I think it makes sense to split this job into two jobs “Valgrind (memcheck)” and “UBSan, ASan, LSan”. Then for each of these jobs, we can expand the remaining 2x2 combinations, i.e., list the 4 resulting combinations explicitly. This is probably a good idea anyway, it will also make it a bit easier to add variety to the jobs.

    What do you think?


    hebasto commented at 3:11 pm on August 22, 2023:

    I think it makes sense to split this job into two jobs “Valgrind (memcheck)” and “UBSan, ASan, LSan”.

    I was thinking about the same. But it won’t help.

    Only one env property is allowed job-wide and step-wide. Job-wide env is already busy with global variables. Therefore, even 2 sets won’t fit one step-wide env.


    hebasto commented at 3:15 pm on August 22, 2023:

    list the 4 resulting combinations explicitly

    … but that is completely feasible.


    hebasto commented at 7:01 pm on August 22, 2023:

    list the 4 resulting combinations explicitly

    … but that is completely feasible.

    Done.

  5. hebasto force-pushed on Aug 22, 2023
  6. in .github/workflows/ci.yml:787 in 1b51315e60 outdated
    782+        with:
    783+          dockerfile: ./ci/linux-debian.Dockerfile
    784+          tag: linux-debian-image
    785+          command: >
    786+            g++ -Werror include/*.h &&
    787+            clang -Werror -x c++-header include/*.h
    


    real-or-random commented at 9:01 am on August 23, 2023:

    nit: it’s probably more convenient to run clang even if g++ fails

    0            g++ -Werror include/*.h
    1            clang -Werror -x c++-header include/*.h
    

    (I think that linebreak should work. Or do we need a ; here?)


    hebasto commented at 10:00 am on August 23, 2023:
    Thanks! Reworked.
  7. real-or-random cross-referenced this on Aug 23, 2023 from issue ci: Future of CI after Cirrus pricing change by real-or-random
  8. ci: Move sanitizers task from Cirrus to GitHub Actions c22ac27529
  9. ci: Move "MSan" from Cirrus to GitHub Actions d51fb0a533
  10. ci: Move "C++ -fpermissive..." from Cirrus to GitHub Actions 61fc3a2dc8
  11. ci: Move "C++ (public headers)" from Cirrus to GitHub Actions 676ed8f9cf
  12. hebasto force-pushed on Aug 23, 2023
  13. real-or-random approved
  14. real-or-random commented at 12:53 pm on August 23, 2023: contributor
    ACK 676ed8f9cf001ebaadf53d5c11e32f7a6b1e5649
  15. real-or-random merged this on Aug 23, 2023
  16. real-or-random closed this on Aug 23, 2023

  17. hebasto deleted the branch on Aug 23, 2023
  18. hebasto cross-referenced this on Aug 23, 2023 from issue ci: Make repetitive command the default one by hebasto

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin-core/secp256k1. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-11-21 15:15 UTC

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