|
26 | 26 | # Compile and run the tests |
27 | 27 | EXAMPLES: yes |
28 | 28 |
|
| 29 | +# https://cirrus-ci.org/pricing/#compute-credits |
| 30 | +# Only use credits for pull requests to the main repo |
| 31 | +credits_snippet: &CREDITS |
| 32 | + use_compute_credits: $CIRRUS_REPO_FULL_NAME == 'bitcoin-core/secp256k1' && $CIRRUS_PR != "" |
| 33 | + |
29 | 34 | cat_logs_snippet: &CAT_LOGS |
30 | 35 | always: |
31 | 36 | cat_tests_log_script: |
@@ -107,65 +112,32 @@ task: |
107 | 112 | << : *CAT_LOGS |
108 | 113 |
|
109 | 114 | task: |
110 | | - name: "x86_64: macOS Catalina" |
| 115 | + name: "arm64: macOS Ventura" |
111 | 116 | macos_instance: |
112 | | - image: catalina-base |
| 117 | + image: ghcr.io/cirruslabs/macos-ventura-base:latest |
113 | 118 | env: |
114 | 119 | HOMEBREW_NO_AUTO_UPDATE: 1 |
115 | 120 | HOMEBREW_NO_INSTALL_CLEANUP: 1 |
116 | | - # Cirrus gives us a fixed number of 12 virtual CPUs. Not that we even have that many jobs at the moment... |
117 | | - MAKEFLAGS: -j13 |
| 121 | + # Cirrus gives us a fixed number of 4 virtual CPUs. Not that we even have that many jobs at the moment... |
| 122 | + MAKEFLAGS: -j5 |
118 | 123 | matrix: |
119 | 124 | << : *ENV_MATRIX |
| 125 | + env: |
| 126 | + ASM: no |
| 127 | + WITH_VALGRIND: no |
| 128 | + CTIMETEST: no |
120 | 129 | matrix: |
121 | 130 | - env: |
122 | | - CC: gcc-9 |
| 131 | + CC: gcc |
123 | 132 | - env: |
124 | 133 | CC: clang |
125 | | - # Update Command Line Tools |
126 | | - # Uncomment this if the Command Line Tools on the CirrusCI macOS image are too old to brew valgrind. |
127 | | - # See https://apple.stackexchange.com/a/195963 for the implementation. |
128 | | - ## update_clt_script: |
129 | | - ## - system_profiler SPSoftwareDataType |
130 | | - ## - touch /tmp/.com.apple.dt.CommandLineTools.installondemand.in-progress |
131 | | - ## - |- |
132 | | - ## PROD=$(softwareupdate -l | grep "*.*Command Line" | tail -n 1 | awk -F"*" '{print $2}' | sed -e 's/^ *//' | sed 's/Label: //g' | tr -d '\n') |
133 | | - ## # For debugging |
134 | | - ## - softwareupdate -l && echo "PROD: $PROD" |
135 | | - ## - softwareupdate -i "$PROD" --verbose |
136 | | - ## - rm /tmp/.com.apple.dt.CommandLineTools.installondemand.in-progress |
137 | | - ## |
138 | | - brew_valgrind_pre_script: |
139 | | - # Retry a few times because this tends to fail randomly. |
140 | | - - for i in {1..5}; do brew update && break || sleep 15; done |
141 | | - - brew config |
142 | | - - brew tap LouisBrunner/valgrind |
143 | | - # Fetch valgrind source but don't build it yet. |
144 | | - - brew fetch --HEAD LouisBrunner/valgrind/valgrind |
145 | | - brew_valgrind_cache: |
146 | | - # This is $(brew --cellar valgrind) but command substition does not work here. |
147 | | - folder: /usr/local/Cellar/valgrind |
148 | | - # Rebuild cache if ... |
149 | | - fingerprint_script: |
150 | | - # ... macOS version changes: |
151 | | - - sw_vers |
152 | | - # ... brew changes: |
153 | | - - brew config |
154 | | - # ... valgrind changes: |
155 | | - - git -C "$(brew --cache)/valgrind--git" rev-parse HEAD |
156 | | - populate_script: |
157 | | - # If there's no hit in the cache, build and install valgrind. |
158 | | - - brew install --HEAD LouisBrunner/valgrind/valgrind |
159 | | - brew_valgrind_post_script: |
160 | | - # If we have restored valgrind from the cache, tell brew to create symlink to the PATH. |
161 | | - # If we haven't restored from cached (and just run brew install), this is a no-op. |
162 | | - - brew link valgrind |
163 | 134 | brew_script: |
164 | | - - brew install automake libtool gcc@9 |
| 135 | + - brew install automake libtool gcc |
165 | 136 | << : *MERGE_BASE |
166 | 137 | test_script: |
167 | 138 | - ./ci/cirrus.sh |
168 | 139 | << : *CAT_LOGS |
| 140 | + << : *CREDITS |
169 | 141 |
|
170 | 142 | task: |
171 | 143 | name: "s390x (big-endian): Linux (Debian stable, QEMU)" |
|
0 commit comments