0
0
Fork 0
mirror of https://github.com/bitcoin/bitcoin.git synced 2025-02-02 09:46:52 -05:00
bitcoin-bitcoin-core/ci/test
Andrew Chow b97b05048d
Merge bitcoin/bitcoin#28187: ci: Run "macOS native x86_64" job on GitHub Actions
9658d0dc17 ci: Run "macOS native x86_64" job on GitHub Actions (Hennadii Stepanov)

Pull request description:

  From https://github.com/bitcoin/bitcoin/issues/28098:
  > Thus, someone would have to sponsor an amount of roughly 5kUSD/mo for those two tasks.

  > If the goal is to stay on a free plan, I think the only option is GitHub Actions CI.

  ---

  **IMPORTANT NOTE**. We currently ship macOS release binaries for both architectures: `x86_64` and `arm64`. If this PR gets merged, only `x86_64` architecture will be tested on CI, which implies some [drawbacks](https://github.com/bitcoin/bitcoin/pull/28187#issuecomment-1658077549).

  However, it has never been the case that our CI tested both architectures simultaneously. And we hope that GitHub Actions will soon host macOS `arm64` runners.

  Historically, we moved from `x86_64` to `arm64` in https://github.com/bitcoin/bitcoin/pull/26388 less than a year ago.

  ---

  Security concerns:
  - https://github.com/bitcoin/bitcoin/issues/28098#issuecomment-1651432106
  - https://github.com/bitcoin/bitcoin/issues/28098#issuecomment-1651688197

  `GITHUB_TOKEN` permissions (from the build log in my personal repo):
  ```
  2023-07-27T07:30:17.8313534Z ##[group]GITHUB_TOKEN Permissions
  2023-07-27T07:30:17.8314113Z Contents: read
  2023-07-27T07:30:17.8314608Z Metadata: read
  2023-07-27T07:30:17.8314957Z Packages: read
  2023-07-27T07:30:17.8315233Z ##[endgroup]
  ```

  Comparison of resources:

  | Resource | Current, Cirrus CI | Suggested, GitHub Actions |
  |---|:-:|:-:|
  | CPU | 4 | 4 \*\* |
  | RAM, GB | 8 | 14 |

  **\*\* NOTE**: However, [docs](https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources) are mentioning:
  > 3-core CPU (x86_64)

ACKs for top commit:
  MarcoFalke:
    re-ACK 9658d0dc17 🏂
  achow101:
    ACK 9658d0dc17
  jarolrod:
    ACK 9658d0dc17

Tree-SHA512: 6123e68e6784cdf4e53c3e77b435709261db21f09091af2c22e667d3816a305fffb9d617297a5bc1bda18aaba84a6e210cec6a75c52afa7746a3780a67b69865
2023-08-15 17:03:13 -04:00
..
00_setup_env.sh ci: Use hard-coded root path for CI containers 2023-08-09 12:32:44 +02:00
00_setup_env_android.sh ci: Use the latest Ubuntu LTS for "ARM64 Android APK" task 2023-02-08 14:15:13 +00:00
00_setup_env_arm.sh ci: Use qemu-user through container engine 2023-08-07 17:36:14 +02:00
00_setup_env_i686_centos.sh ci: Use qemu-user through container engine 2023-08-07 17:36:14 +02:00
00_setup_env_i686_multiprocess.sh ci: Use qemu-user through container engine 2023-08-07 17:36:14 +02:00
00_setup_env_mac.sh ci: disable false-positive warnings for now 2023-06-20 19:55:02 +00:00
00_setup_env_mac_native.sh ci: Run "macOS native x86_64" job on GitHub Actions 2023-08-09 10:59:43 +01:00
00_setup_env_native_asan.sh ci: Add missing linux-headers package to ASan task 2023-08-01 17:33:36 +02:00
00_setup_env_native_fuzz.sh ci: Add missing linux-headers package to ASan task 2023-08-01 17:33:36 +02:00
00_setup_env_native_fuzz_with_msan.sh ci: Drop BASE_SCRATCH_DIR from LIBCXX_DIR 2023-08-09 12:32:15 +02:00
00_setup_env_native_fuzz_with_valgrind.sh ci: Use documented CCACHE_MAXSIZE instead of CCACHE_SIZE 2023-07-30 21:36:56 +01:00
00_setup_env_native_msan.sh ci: Drop BASE_SCRATCH_DIR from LIBCXX_DIR 2023-08-09 12:32:15 +02:00
00_setup_env_native_nowallet_libbitcoinkernel.sh ci: Drop NO_WERROR=1 for clang-10 build 2023-05-17 10:55:03 +02:00
00_setup_env_native_qt5.sh build: disable boost multi index safe mode 2023-05-23 13:44:07 +01:00
00_setup_env_native_tidy.sh ci: Use documented CCACHE_MAXSIZE instead of CCACHE_SIZE 2023-07-30 21:36:56 +01:00
00_setup_env_native_tsan.sh ci: Invalidate Cirrus CI docker cache 2023-06-08 10:28:38 +02:00
00_setup_env_native_valgrind.sh ci: Add missing -O2 to valgrind tasks 2023-07-12 15:41:49 +02:00
00_setup_env_s390x.sh ci: Use qemu-user through container engine 2023-08-07 17:36:14 +02:00
00_setup_env_win64.sh ci: document that -Wreturn-type has been fixed upstream (Windows) 2023-07-18 14:27:30 +01:00
01_base_install.sh ci: Drop BASE_SCRATCH_DIR from LIBCXX_DIR 2023-08-09 12:32:15 +02:00
04_install.sh ci: Use hard-coded root path for CI containers 2023-08-09 12:32:44 +02:00
06_script_b.sh ci: Use qemu-user through container engine 2023-08-07 17:36:14 +02:00
wrap-valgrind.sh scripted-diff: Bump copyright headers 2021-12-30 19:36:57 +02:00
wrap-wine.sh scripted-diff: Bump copyright headers 2022-12-24 23:49:50 +00:00
wrapped-cl.bat ci: Integrate ccache into MSVC build 2022-03-12 03:20:33 +01:00