Files
bitcoin/.github/workflows/ci.yml
Ryan Ofsky a334bbe9b7 Squashed 'src/ipc/libmultiprocess/' changes from 1b8d4a6f1e54..13424cf2ecc1
13424cf2ecc1 Merge bitcoin-core/libmultiprocess#205: cmake: check for Cap'n Proto / Clang / C++20 incompatibility
72dce118649b Merge bitcoin-core/libmultiprocess#200: event loop: add LogOptions struct and reduce the log size
85003409f964 eventloop: add `LogOptions` struct
657d80622f81 cmake: capnproto pkg missing helpful error
d314057775a5 cmake: check for Cap'n Proto / Clang / C++20 incompatibility
878e84dc3030 Merge bitcoin-core/libmultiprocess#203: cmake: search capnproto in package mode only
1a85da5873c2 Merge bitcoin-core/libmultiprocess#202: doc: correct the build instructions for the example
df01873e1ecb Merge bitcoin-core/libmultiprocess#197: ci: Add freebsd and macos build
3bee07ab3367 cmake: search capnproto in package mode only
b6d3dc44194c doc: correct the build instructions for example
fa1ac3000055 ci: Add macos and freebsd task

git-subtree-dir: src/ipc/libmultiprocess
git-subtree-split: 13424cf2ecc1e5eadc85556cf1f4c65e915f702a
2025-09-05 15:43:16 -04:00

98 lines
2.2 KiB
YAML

name: CI
on:
push:
pull_request:
jobs:
build-openbsd:
runs-on: ubuntu-latest
name: build • openbsd
defaults:
run:
shell: openbsd {0}
steps:
- uses: actions/checkout@v5
- name: Start OpenBSD VM
uses: vmactions/openbsd-vm@v1
with:
prepare: |
pkg_add -v cmake ninja git bash
run: |
git clone --depth=1 https://codeberg.org/OpenBSD/ports.git /usr/ports
sync: 'rsync'
copyback: false
- name: Install capnproto
run: |
cd /usr/ports/devel/capnproto/
make install
- name: Run CI script
run: |
cd ${{ github.workspace }}
CI_CONFIG="ci/configs/openbsd.bash" bash ci/scripts/ci.sh
build-freebsd:
runs-on: ubuntu-latest
name: build • freebsd
defaults:
run:
shell: freebsd {0}
steps:
- uses: actions/checkout@v5
- name: Start FreeBSD VM
uses: vmactions/freebsd-vm@v1
with:
prepare: |
pkg install -y cmake ninja bash capnproto
sync: 'rsync'
copyback: false
- name: Run CI script
run: |
cd ${{ github.workspace }}
CI_CONFIG="ci/configs/freebsd.bash" bash ci/scripts/ci.sh
build-macos:
runs-on: macos-latest
name: build • macos
steps:
- uses: actions/checkout@v5
- name: Install dependencies
env:
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK: 1
run: |
brew install --quiet ninja capnp
- name: Run CI script
run: |
CI_CONFIG="ci/configs/macos.bash" bash ci/scripts/ci.sh
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
config: [default, llvm, gnu32, sanitize, olddeps]
name: build • ${{ matrix.config }}
steps:
- uses: actions/checkout@v5
- name: Install Nix
uses: cachix/install-nix-action@v31 # 2025-05-27, from https://github.com/cachix/install-nix-action/tags
with:
nix_path: nixpkgs=channel:nixos-25.05 # latest release
- name: Run CI script
env:
CI_CONFIG: ci/configs/${{ matrix.config }}.bash
run: ci/scripts/run.sh