-
Notifications
You must be signed in to change notification settings - Fork 4
54 lines (49 loc) · 1.47 KB
/
ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
name: JSON BinPack
# Do not run this job for changes that only affect the website
on:
push:
paths-ignore:
- 'www/**'
jobs:
test:
strategy:
fail-fast: false
matrix:
platform:
- os: macos-13
cc: clang
cxx: clang++
- os: ubuntu-22.04
cc: clang
cxx: clang++
- os: ubuntu-22.04
cc: gcc
cxx: g++
- os: windows-2022
runs-on: ${{ matrix.platform.os }}
env:
CC: ${{ matrix.platform.cc }}
CXX: ${{ matrix.platform.cxx }}
steps:
- uses: actions/checkout@v2
- name: Install dependencies (macOS)
if: runner.os == 'macos'
run: brew bundle
env:
HOMEBREW_NO_ANALYTICS: 1
HOMEBREW_NO_AUTO_UPDATE: 1
- name: Install dependencies (GNU/Linux)
if: runner.os == 'linux'
run: sudo apt-get install --yes clang-format shellcheck
- name: Install dependencies (Windows)
if: runner.os == 'windows'
run: choco install shellcheck
- run: cmake --version
- run: cmake --preset release --log-context
- run: cmake --build --preset release --target shellcheck
- run: cmake --build --preset release --target clang_format_test
- run: cmake --build --preset release
- run: ctest --preset release --parallel
- name: Ensure no uncommitted changes
run: ./scripts/no-staged-uncommitted-files.sh
shell: bash