Skip to content

Commit 7e5c421

Browse files
authored
ci: add placeholder required status gate (#4)
* ci: add placeholder `required` status gate for org ruleset Satisfies the `required` status-check context in org ruleset `default-branch-baseline` (id 15191038, currently evaluate mode). Placeholder: this job always passes. Before the ruleset flips to active, harden it with `needs:` on real language-CI jobs or replace with a call to a reusable workflow from resq-software/.github once the matching lang-ci.yml exists. * ci: harden `required` gate — call real dotnet-ci reusable Replaces the always-pass placeholder with a ci.yml that calls the org-wide `required` aggregator with `lang: dotnet` and the correct solution path. Pinned to resq-software/.github@6410acb (the commit introducing dotnet-ci.yml). After PR#12 on resq-software/.github merges, re-pin to the merge commit SHA or a semver tag. The top-level `required` job emits the status-check context consumed by org ruleset `default-branch-baseline`. * ci: re-pin reusable workflow ref to resq-software/.github main Updates @sha from the feat-branch tip to the merge commit of resq-software/.github#12 (f4b51a620aa1bf89c0bce4f434b36f92ff7d517d). Functionally equivalent — same content — but pins to a ref that now exists on main rather than a closed PR branch.
1 parent 971420c commit 7e5c421

1 file changed

Lines changed: 47 additions & 0 deletions

File tree

.github/workflows/ci.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
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 in resq-software/.github (which calls dotnet-ci +
6+
# security-scan). The top-level `required` job emits the status-
7+
# check context consumed by the org ruleset `default-branch-baseline`.
8+
9+
name: CI
10+
11+
on:
12+
push:
13+
branches: [main]
14+
pull_request:
15+
16+
permissions:
17+
contents: read
18+
security-events: write
19+
pull-requests: read
20+
21+
concurrency:
22+
group: ${{ github.workflow }}-${{ github.ref }}
23+
cancel-in-progress: true
24+
25+
jobs:
26+
gates:
27+
uses: resq-software/.github/.github/workflows/required.yml@f4b51a620aa1bf89c0bce4f434b36f92ff7d517d
28+
with:
29+
lang: dotnet
30+
dotnet-solution: ResQ.Viz.sln
31+
codeql-languages: '["csharp"]'
32+
secrets: inherit
33+
34+
required:
35+
name: required
36+
runs-on: ubuntu-latest
37+
needs: [gates]
38+
if: always()
39+
steps:
40+
- env:
41+
R: ${{ needs.gates.result }}
42+
run: |
43+
set -eu
44+
case "$R" in
45+
success|skipped|"") echo "ok: gates=$R" ;;
46+
*) echo "::error::gates reusable returned: $R"; exit 1 ;;
47+
esac

0 commit comments

Comments
 (0)