Skip to content

Only use ubuntu runners supported by github, avoid using containers w… #45

Only use ubuntu runners supported by github, avoid using containers w…

Only use ubuntu runners supported by github, avoid using containers w… #45

Workflow file for this run

name: MacOS
on:
push:
pull_request:
types: [ opened, reopened, synchronize ]
jobs:
build:
name: build + test
strategy:
fail-fast: false
matrix:
os: [ 'macos-12', 'macos-13', 'macos-14' ]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Relink `python` package in `brew`
# Unlink and re-link to prevent errors when GitHub `macos` runner images
# install `python` outside of `brew`, for example:
# https://github.com/orgs/Homebrew/discussions/3895
# https://github.com/actions/setup-python/issues/577
# https://github.com/actions/runner-images/issues/6459
# https://github.com/actions/runner-images/issues/6507
# https://github.com/actions/runner-images/issues/2322
run: brew list -1
| grep python
| while read formula; do brew unlink $formula; brew link --overwrite $formula; done
- run: brew update
- run: brew install wget pkg-config libevent openssl@1.1 sqlite hiredis mongo-c-driver libmicrohttpd
- run: ./configure
env:
PKG_CONFIG_PATH: "${{ env.PKG_CONFIG_PATH }}:/usr/local/opt/openssl@1.1/lib/pkgconfig"
- name: Compile
run: make -j $(nproc)
- name: Unit Test
run: make check
build-cmake:
name: build + test cmake
strategy:
fail-fast: false
matrix:
ver: ["15"]
runs-on: macos-${{ matrix.ver }}
steps:
- uses: actions/checkout@v5
- name: Relink `python` package in `brew`
# Unlink and re-link to prevent errors when GitHub `macos` runner images
# install `python` outside of `brew`, for example:
# https://github.com/orgs/Homebrew/discussions/3895
# https://github.com/actions/setup-python/issues/577
# https://github.com/actions/runner-images/issues/6459
# https://github.com/actions/runner-images/issues/6507
# https://github.com/actions/runner-images/issues/2322
run: brew list -1
| grep python
| while read formula; do brew unlink $formula; brew link --overwrite $formula; done
- run: brew update
- run: brew install wget pkg-config libevent openssl@1.1 sqlite hiredis mongo-c-driver libmicrohttpd
- name: Configure
run: cmake -B ${{github.workspace}}/build
- name: Build
run: cmake --build ${{github.workspace}}/build
- name: Integration Test
working-directory: examples
run: |
./run_tests.sh
./run_tests_conf.sh
./run_tests_prom.sh