Merge bitcoin-core/secp256k1#1152: Update macOS image for CI
a8494b02bfe7578ffb76e66924e76c83556a802d Use compute credits for macOS jobs (Pieter Wuille) c0ae48c9950a908b637bff27791fabbe2833c4a5 Update macOS image for CI (Pieter Wuille) Pull request description: ACKs for top commit: real-or-random: ACK a8494b02bfe7578ffb76e66924e76c83556a802d jonasnick: ACK a8494b02bfe7578ffb76e66924e76c83556a802d Tree-SHA512: af99585ef68fc8305785885efaf0a0ebe45e5765661d654523a36ba843fc83e0ac40a554638437fa53804e4aa42dbcd92d597702ee6225b66a044a6304bafd45
This commit is contained in:
commit
751c4354d5
60
.cirrus.yml
60
.cirrus.yml
@ -26,6 +26,11 @@ env:
|
|||||||
# Compile and run the tests
|
# Compile and run the tests
|
||||||
EXAMPLES: yes
|
EXAMPLES: yes
|
||||||
|
|
||||||
|
# https://cirrus-ci.org/pricing/#compute-credits
|
||||||
|
# Only use credits for pull requests to the main repo
|
||||||
|
credits_snippet: &CREDITS
|
||||||
|
use_compute_credits: $CIRRUS_REPO_FULL_NAME == 'bitcoin-core/secp256k1' && $CIRRUS_PR != ""
|
||||||
|
|
||||||
cat_logs_snippet: &CAT_LOGS
|
cat_logs_snippet: &CAT_LOGS
|
||||||
always:
|
always:
|
||||||
cat_tests_log_script:
|
cat_tests_log_script:
|
||||||
@ -107,65 +112,32 @@ task:
|
|||||||
<< : *CAT_LOGS
|
<< : *CAT_LOGS
|
||||||
|
|
||||||
task:
|
task:
|
||||||
name: "x86_64: macOS Catalina"
|
name: "arm64: macOS Ventura"
|
||||||
macos_instance:
|
macos_instance:
|
||||||
image: catalina-base
|
image: ghcr.io/cirruslabs/macos-ventura-base:latest
|
||||||
env:
|
env:
|
||||||
HOMEBREW_NO_AUTO_UPDATE: 1
|
HOMEBREW_NO_AUTO_UPDATE: 1
|
||||||
HOMEBREW_NO_INSTALL_CLEANUP: 1
|
HOMEBREW_NO_INSTALL_CLEANUP: 1
|
||||||
# Cirrus gives us a fixed number of 12 virtual CPUs. Not that we even have that many jobs at the moment...
|
# Cirrus gives us a fixed number of 4 virtual CPUs. Not that we even have that many jobs at the moment...
|
||||||
MAKEFLAGS: -j13
|
MAKEFLAGS: -j5
|
||||||
matrix:
|
matrix:
|
||||||
<< : *ENV_MATRIX
|
<< : *ENV_MATRIX
|
||||||
|
env:
|
||||||
|
ASM: no
|
||||||
|
WITH_VALGRIND: no
|
||||||
|
CTIMETEST: no
|
||||||
matrix:
|
matrix:
|
||||||
- env:
|
- env:
|
||||||
CC: gcc-9
|
CC: gcc
|
||||||
- env:
|
- env:
|
||||||
CC: clang
|
CC: clang
|
||||||
# Update Command Line Tools
|
|
||||||
# Uncomment this if the Command Line Tools on the CirrusCI macOS image are too old to brew valgrind.
|
|
||||||
# See https://apple.stackexchange.com/a/195963 for the implementation.
|
|
||||||
## update_clt_script:
|
|
||||||
## - system_profiler SPSoftwareDataType
|
|
||||||
## - touch /tmp/.com.apple.dt.CommandLineTools.installondemand.in-progress
|
|
||||||
## - |-
|
|
||||||
## PROD=$(softwareupdate -l | grep "*.*Command Line" | tail -n 1 | awk -F"*" '{print $2}' | sed -e 's/^ *//' | sed 's/Label: //g' | tr -d '\n')
|
|
||||||
## # For debugging
|
|
||||||
## - softwareupdate -l && echo "PROD: $PROD"
|
|
||||||
## - softwareupdate -i "$PROD" --verbose
|
|
||||||
## - rm /tmp/.com.apple.dt.CommandLineTools.installondemand.in-progress
|
|
||||||
##
|
|
||||||
brew_valgrind_pre_script:
|
|
||||||
# Retry a few times because this tends to fail randomly.
|
|
||||||
- for i in {1..5}; do brew update && break || sleep 15; done
|
|
||||||
- brew config
|
|
||||||
- brew tap LouisBrunner/valgrind
|
|
||||||
# Fetch valgrind source but don't build it yet.
|
|
||||||
- brew fetch --HEAD LouisBrunner/valgrind/valgrind
|
|
||||||
brew_valgrind_cache:
|
|
||||||
# This is $(brew --cellar valgrind) but command substition does not work here.
|
|
||||||
folder: /usr/local/Cellar/valgrind
|
|
||||||
# Rebuild cache if ...
|
|
||||||
fingerprint_script:
|
|
||||||
# ... macOS version changes:
|
|
||||||
- sw_vers
|
|
||||||
# ... brew changes:
|
|
||||||
- brew config
|
|
||||||
# ... valgrind changes:
|
|
||||||
- git -C "$(brew --cache)/valgrind--git" rev-parse HEAD
|
|
||||||
populate_script:
|
|
||||||
# If there's no hit in the cache, build and install valgrind.
|
|
||||||
- brew install --HEAD LouisBrunner/valgrind/valgrind
|
|
||||||
brew_valgrind_post_script:
|
|
||||||
# If we have restored valgrind from the cache, tell brew to create symlink to the PATH.
|
|
||||||
# If we haven't restored from cached (and just run brew install), this is a no-op.
|
|
||||||
- brew link valgrind
|
|
||||||
brew_script:
|
brew_script:
|
||||||
- brew install automake libtool gcc@9
|
- brew install automake libtool gcc
|
||||||
<< : *MERGE_BASE
|
<< : *MERGE_BASE
|
||||||
test_script:
|
test_script:
|
||||||
- ./ci/cirrus.sh
|
- ./ci/cirrus.sh
|
||||||
<< : *CAT_LOGS
|
<< : *CAT_LOGS
|
||||||
|
<< : *CREDITS
|
||||||
|
|
||||||
task:
|
task:
|
||||||
name: "s390x (big-endian): Linux (Debian stable, QEMU)"
|
name: "s390x (big-endian): Linux (Debian stable, QEMU)"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user