Commit Graph

215 Commits

Author SHA1 Message Date
MarcoFalke fabaa85c01
ci: Move ASan USDT to persistent_worker 2023-08-01 17:33:33 +02:00
Hennadii Stepanov 79ceb161db
ci: Use documented `CCACHE_MAXSIZE` instead of `CCACHE_SIZE`
This change aims to:
1) Remove our own `CCACHE_SIZE` environment variable that violates
Ccache's `CCACHE_*` namespace.
2) Introduce the `CCACHE_MAXSIZE` environment variable that is
documented since v3.3, which makes its usage consistent with other ones,
such as `CCACHE_DIR` and `CCACHE_NOHASHDIR`.
2023-07-30 21:36:56 +01:00
MarcoFalke fa2f18ad8e
ci: Use DOCKER_BUILDKIT for lint image
Can be reviewed with:
--color-moved=dimmed-zebra  --ignore-all-space
2023-07-16 13:18:18 +02:00
MarcoFalke fac14c4e49
ci: Remove deprecated container.greedy
The option is to be phased out, so remove it to avoid relying on it.
Update container.cpu and timeouts where needed.
2023-07-04 10:41:25 +02:00
Cory Fields fb61bc0c02 depends: Bump MacOS minimum runtime requirement to 11.0
This is necessary as the new fixup_chains linker behavior is only valid
when the runtime target is >=11.0.
2023-06-22 15:28:47 +00:00
fanquake 681ecac5c2
Merge bitcoin/bitcoin#27881: ci: Use latest `macos-ventura-xcode:14.3.1` image
a13c3f3177 ci: Use latest `macos-ventura-xcode:14.3.1` image (Hennadii Stepanov)

Pull request description:

  As documented: 427853ab49/.cirrus.yml (L339)

  Last time, the image was updated in https://github.com/bitcoin/bitcoin/pull/26388.

  The `check_clang` script diff:
  ```diff
  --- master
  +++ pr
  @@ -1,5 +1,5 @@
   clang --version
  -Apple clang version 14.0.0 (clang-1400.0.29.202)
  -Target: arm64-apple-darwin22.1.0
  +Apple clang version 14.0.3 (clang-1403.0.22.14.1)
  +Target: arm64-apple-darwin22.5.0
   Thread model: posix
  -InstalledDir: /Applications/Xcode-14.1.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
  +InstalledDir: /Applications/Xcode-14.3.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

ACKs for top commit:
  fanquake:
    ACK a13c3f3177

Tree-SHA512: 18ffa97cc5900a5b35d0ecda79a55d7427610c6e799742b5811e1c470ef320fd98f9400168c4c517f8668f1bf76e57d68cd373a41fa346d15084855aa2c409b3
2023-06-14 15:10:55 +01:00
fanquake ff17b28b02
Merge bitcoin/bitcoin#27883: ci: Bump macOS cross task to ubuntu:jammy
fa70e85e00 ci: Bump macOS cross task to ubuntu:jammy (MarcoFalke)

Pull request description:

  It shouldn't matter what underlying image is used for the task, because the compiler is fully provided by `./depends/`.

  So just use the latest Ubuntu LTS, which is also most likely the OS that is used by people cross-compiling, if there are any at all.

ACKs for top commit:
  fanquake:
    ACK fa70e85e00
  hebasto:
    ACK fa70e85e00

Tree-SHA512: ab2831a8182ca382b8af37d5395c35b5341b8f55b0ce05f4787c627cbec306cefad66713ad053228862eeac01fb8b79be7e168c41e6ec4615fbcb4ef106125b8
2023-06-14 15:09:18 +01:00
Hennadii Stepanov 016fe6d828
ci: Switch to `amd64` container in "ARM" task
Tee `arm_container` does not support 32-bit mode anymore.
See: https://github.com/bitcoin/bitcoin/issues/27879
2023-06-14 13:32:22 +01:00
MarcoFalke fa70e85e00
ci: Bump macOS cross task to ubuntu:jammy 2023-06-14 10:49:27 +02:00
Hennadii Stepanov a13c3f3177
ci: Use latest `macos-ventura-xcode:14.3.1` image 2023-06-13 23:00:33 +01:00
MarcoFalke fa22538e48
ci: Nuke Android APK task, Use credits for tsan 2023-06-07 16:05:26 +02:00
fanquake 5763b232e6
ci: return to using Ubuntu 22.04 in MSAN jobs
We no-longer need to use 23.04, now that we aren't installing clang-16
and friends.
2023-05-29 17:20:50 +01:00
MarcoFalke fa69955e74
ci: Bump centos:stream8 to centos:stream9
This is required for the next commit. Also, drop CI_RETRY_EXE before
"dnf install", because it requires getopt, which will only be installed
later on via util-linux
2023-05-18 12:24:38 +02:00
MarcoFalke fa3761d19d
ci: Reduce tsan CPU and memory for faster scheduling 2023-05-17 16:29:58 +02:00
MarcoFalke aaaa07bc84
ci: Use credits for ARM task 2023-05-17 16:17:00 +02:00
fanquake bf07e3a47e
ci: fix asan task name
Pointed out in
https://github.com/bitcoin/bitcoin/issues/27380#issuecomment-1536434598.
2023-05-05 16:58:23 +01:00
MarcoFalke fa6e2bfd05
ci: Use arm_container.dockerfile 2023-05-03 15:31:40 +02:00
fanquake 1232c2f6b9
ci: use LLVM/clang-16 in native_asan job
Similar to #27298.
2023-05-02 12:02:23 +01:00
MarcoFalke 88881cf7ac
Bump python minimum version to 3.8
Also, switch ci_native_qt5 to g++-9 (from g++-8) to work around bugs.
This should be fine, because the i686_centos task still checks for g++-8
compatibility.

See
https://github.com/bitcoin/bitcoin/pull/27483#issuecomment-1513477050
for the list of bugs.
2023-04-21 10:18:19 +02:00
MarcoFalke fa4a46de0b
ci: Bump nowallet_libbitcoinkernel task to ubuntu:focal
This is needed to work around
https://github.com/bitcoin/bitcoin/pull/27340#issuecomment-1484988445

The only change should be that python3.7 is bumped to 3.8, but this is
fine because ci/test/00_setup_env_native_qt5.sh still checks for
python3.7 compatibility.
2023-04-11 14:12:37 +02:00
MarcoFalke fabc7d90a9
ci: Use credits in more tasks
This should give faster feedback about the CI result, while still
keeping expenses reasonable.
2023-04-11 14:12:30 +02:00
MarcoFalke facae3b149
ci: Use Cirrus CI dockerfile env 2023-04-11 14:11:48 +02:00
fanquake 676671527f
test: LLVM/Clang 16 for MSAN jobs
Sync up with other CI infra.
2023-04-10 10:57:05 +01:00
fanquake a56c96507a
ci: use clang-16 in tidy task 2023-04-05 11:43:42 +01:00
fanquake a634c288c3
ci: use LLVM/clang-16 in native_fuzz (ASAN) job
Similar to #27298.
2023-03-29 16:05:59 +01:00
MarcoFalke faf4aca15a
ci: Use TSan new runtime (llvm-16, take 3) 2023-03-28 10:01:47 +02:00
Hennadii Stepanov 8fe27fbed8
ci: Use clang-15 in "tidy" task 2023-03-22 15:21:39 +00:00
glozow a984beeca1
[ci] change lint to bookworm for git v2.38
Since 5497c14, verify-commits.py requires git merge-tree which is only
available in git v2.38 or later.
2023-02-28 14:42:48 +00:00
Hennadii Stepanov d66efa30cd
ci: Fix `fingerprint_script` for `depends` subdir caches 2023-02-09 22:20:42 +00:00
Hennadii Stepanov 73a3b161b7
ci: Inline `MACOS_NATIVE_TASK_TEMPLATE` 2023-02-09 12:11:47 +00:00
Hennadii Stepanov 8a61527cf6
ci: Re-introduce `depends_built` cache back in macOS and Android tasks 2023-02-09 12:11:26 +00:00
Hennadii Stepanov 887bb53b67
ci: Use the latest Ubuntu LTS for "ARM64 Android APK" task 2023-02-08 14:15:13 +00:00
MarcoFalke faa65f12fc
ci: Fetch no git history, unless lint 2023-01-27 15:05:29 +01:00
MarcoFalke dddd462137
Bump minimum python version to 3.7 2023-01-18 12:59:11 +01:00
MarcoFalke faddb7373a
ci: Bump --combinedlogslen to debug intermittent issues 2023-01-18 09:35:47 +01:00
MarcoFalke 01ec5308bf
Merge bitcoin/bitcoin#26716: ci: Build python from source in "lint" task
123043e99c ci: Bump lint task image to Ubuntu Jammy (Hennadii Stepanov)
9b86114058 ci: Use pyenv's `python-build` to install Python in lint task (Hennadii Stepanov)

Pull request description:

  This PR:
  - is an alternative to bitcoin/bitcoin#26581 and bitcoin/bitcoin#26637
  - closes bitcoin/bitcoin#26548

  Key advantages of this PR over others:
  - it uses pyenv's `python-build` [standalone](https://github.com/pyenv/pyenv/tree/master/plugins/python-build#using-python-build-standalone)
  - requires no additional computational resources

  Note for testing. The lint task must success regardless of whether the `python_cache` is populated or invalidated.

ACKs for top commit:
  MarcoFalke:
    ACK 123043e99c
  fanquake:
    ACK 123043e99c

Tree-SHA512: ba0fcdd4f2939a59692b173dcd1f5704444cfcfbb8111538c6f8160056d0536bba250e4f9b0f8c66f8b454e52034bf36ffe6afae76cdc0f7cc5b58b576d790ba
2023-01-17 18:35:47 +01:00
Hennadii Stepanov 123043e99c
ci: Bump lint task image to Ubuntu Jammy 2023-01-16 13:30:00 +00:00
Hennadii Stepanov 9b86114058
ci: Use pyenv's `python-build` to install Python in lint task 2023-01-16 13:29:44 +00:00
Hennadii Stepanov 46c31eea8c
ci: Bump `ccache` version to the latest 4.7.4 in "Win64 native" task 2023-01-13 20:50:38 +00:00
Hennadii Stepanov 1039ed44fb
ci: Bump vcpkg to the latest version 2023.01.09
Dependency changes (2022.09.27 - 2023.01.09):
 - boost 1.80.0#0 -> 1.81.0#0
 - libevent 2.1.12#6 -> libevent 2.1.12#7
 - sqlite3 3.39.2#0 -> 3.40.0#1
2023-01-13 20:50:15 +00:00
MarcoFalke fae885b98f
ci: Run one task with all tests on credits 2023-01-09 16:31:14 +01:00
MarcoFalke bf3b589413
Merge bitcoin/bitcoin#26791: ci: Properly set COMMIT_RANGE in lint task
fa5cbf2290 ci: Properly set COMMIT_RANGE in lint task (MarcoFalke)

Pull request description:

  Currently the variable holds (apart from the commits in the pull request) all commits to master since the pull was opened.

  This is problematic, because already merged commits are linted in unrelated pulls, leading to:

  * Wasted resources. For example, currently the lint task may take 9 minutes, when it should take 1. See https://cirrus-ci.com/task/6032782770569216?logs=lint#L1449
  * False failures. For example, when a "wrong" commit is in master it can lead to some pulls failing unrelatedly, and others not.

  Now that the CI has the `/merge` commit (since commit fad7281d78), `COMMIT_RANGE` can simply be set to `HEAD~..HEAD` to only hold the changes in the pull.

ACKs for top commit:
  fanquake:
    ACK fa5cbf2290

Tree-SHA512: e85fca4ca9d2615ddd2544403485e06885769a3f70bca297e23eefda2a1d28f47c5271f6adfa6ce0e5e972335c78098b76e0db4b109f59d0986bf508cef7528f
2023-01-04 13:56:45 +01:00
MarcoFalke fa5cbf2290
ci: Properly set COMMIT_RANGE in lint task 2023-01-02 14:05:23 +01:00
Suriyaa Sundararuban f84e445dee
doc: Correct linked Microsoft URLs 2022-12-31 16:54:13 +01:00
MarcoFalke fa5d9a0e24
Revert "ci: Use clang-15 in tsan task"
This reverts commit faa00ca78e.
2022-12-30 09:49:51 +01:00
MarcoFalke faa00ca78e
ci: Use clang-15 in tsan task 2022-12-29 16:30:13 +01:00
Hennadii Stepanov f1e89597c8
test: Drop no longer required bench output redirection 2022-11-10 16:26:44 +00:00
Hennadii Stepanov da16893474
ci: Use `macos-ventura-xcode:14.1` image for "macOS native" task 2022-10-25 13:39:03 +01:00
fanquake 3b85e17b49
Merge bitcoin/bitcoin#26297: ci: Use all available CPUs for functional tests in "Win64 native" task
6fbd173d8a ci: Use all available CPUs for functional tests in "Win64 native" task (Hennadii Stepanov)

Pull request description:

  On the [master](https://cirrus-ci.com/task/5422842484359168) branch:
  ![Screenshot from 2022-10-12 09-45-58](https://user-images.githubusercontent.com/32963518/195296883-3852ea09-7345-4166-b855-7704dcd87202.png)

  This [PR](https://cirrus-ci.com/task/6392972617973760) branch:
  ![Screenshot from 2022-10-12 11-11-15](https://user-images.githubusercontent.com/32963518/195315902-f667874a-8aeb-4f2f-bdc3-5ba432ae9353.png)

  Also consider "CPU Usage" charts provided by CI.

  Overlooked in cda62657e9 (bitcoin/bitcoin#25929).

ACKs for top commit:
  hebasto:
    Indeed. Reverted back to 6fbd173d8a ([pr26297.01](https://github.com/hebasto/bitcoin/commits/pr26297.01)), which was already [ACKed](https://github.com/bitcoin/bitcoin/pull/26297#pullrequestreview-1138724890) by @aureleoules.
  aureleoules:
    ACK 6fbd173d8a
  jarolrod:
    ACK 6fbd173d8a
  shaavan:
    ACK 6fbd173d8a

Tree-SHA512: ddd4b41af95bd735f881a3b2c64ee308de2725381f770e313e66555f929d88c8848c98cc5fcd15dfa6845b5dd84ca6c8764ef5d01602b0a62041820856af2b98
2022-10-14 11:37:44 +08:00
Hennadii Stepanov 98c389ccff
ci: Use Multi-ToolTask in "Win64 native" task
See https://devblogs.microsoft.com/cppblog/improved-parallelism-in-msbuild/
2022-10-12 11:50:57 +01:00