Skip to content

Commit 66c1e6c

Browse files
committed
ci: harden to cpp-ci reusable; remove inline ci.yml + placeholder
Replaces the previous inline cmake/ctest matrix and the placeholder required.yml with a single ci.yml that calls the org-wide `required` aggregator with `lang: cpp` and the correct source-dir + cmake-flags preserved from the prior workflow. Pinned to resq-software/.github@6410acb (the commit introducing cpp-ci.yml). Re-pin to the merge commit or tag after PR#12 lands. Parity: - os matrix: ubuntu + macos + windows (same as before) - source: packages/resq-common (same) - flag: -DRESQ_COMMON_BUILD_TESTS=ON (same) Additionally runs CodeQL for c-cpp and the full security-scan suite via the reusable — upgrade from the prior CI.
1 parent 0e2dc86 commit 66c1e6c

2 files changed

Lines changed: 40 additions & 46 deletions

File tree

.github/workflows/ci.yml

Lines changed: 40 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,51 @@
1+
# Copyright 2026 ResQ Software
2+
# SPDX-License-Identifier: Apache-2.0
3+
#
4+
# Thin CI wrapper. Dispatches to the org-wide reusable `required`
5+
# aggregator (which calls cpp-ci matrix + security-scan). Subsumes
6+
# the prior inline cmake/ctest workflow AND the placeholder
7+
# required.yml — both removed in the same PR.
8+
19
name: CI
210

311
on:
412
push:
513
branches: [main]
6-
paths: ["packages/**"]
14+
paths: ["packages/**", ".github/workflows/ci.yml"]
715
pull_request:
816
branches: [main]
917

10-
jobs:
11-
test:
12-
strategy:
13-
fail-fast: false
14-
matrix:
15-
os: [ubuntu-latest, macos-latest, windows-latest]
16-
runs-on: ${{ matrix.os }}
17-
steps:
18-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
18+
permissions:
19+
contents: read
20+
security-events: write
21+
pull-requests: read
1922

20-
- name: Configure
21-
run: cmake -B build -DRESQ_COMMON_BUILD_TESTS=ON packages/resq-common
23+
concurrency:
24+
group: ${{ github.workflow }}-${{ github.ref }}
25+
cancel-in-progress: true
2226

23-
- name: Build
24-
run: cmake --build build --config Debug
27+
jobs:
28+
gates:
29+
uses: resq-software/.github/.github/workflows/required.yml@6410acba18c9fc79949643abd48f0a2d43994c62
30+
with:
31+
lang: cpp
32+
cpp-os-list: '["ubuntu-latest","macos-latest","windows-latest"]'
33+
cpp-source-dir: "packages/resq-common"
34+
cpp-cmake-flags: "-DRESQ_COMMON_BUILD_TESTS=ON"
35+
codeql-languages: '["c-cpp"]'
36+
secrets: inherit
2537

26-
- name: Test
27-
run: ctest --test-dir build --output-on-failure -C Debug
38+
required:
39+
name: required
40+
runs-on: ubuntu-latest
41+
needs: [gates]
42+
if: always()
43+
steps:
44+
- env:
45+
R: ${{ needs.gates.result }}
46+
run: |
47+
set -eu
48+
case "$R" in
49+
success|skipped|"") echo "ok: gates=$R" ;;
50+
*) echo "::error::gates reusable returned: $R"; exit 1 ;;
51+
esac

.github/workflows/required.yml

Lines changed: 0 additions & 30 deletions
This file was deleted.

0 commit comments

Comments
 (0)