Skip to content

Commit 10a1f7b

Browse files
Vivswanrepo-platform-syncsettings-as-code-release
authored
chore: sync repo-platform build cb69066b5306, adopt the site module, and drop the apply-settings hook (#153)
Co-authored-by: repo-platform-sync <repo-platform-sync@users.noreply.github.com> Co-authored-by: settings-as-code-release <settings-as-code-release@users.noreply.github.com>
1 parent b0f9c19 commit 10a1f7b

12 files changed

Lines changed: 376 additions & 670 deletions
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# Repo-owned: generated once by Vivswan/repo-platform, never
2+
# overwritten by sync. ci.yml's `site` leg runs this action on the judged
3+
# commit before the fleet renders docs/ and deploys: build this repository's
4+
# own website here. Contract and examples: repo-platform's docs/site.md.
5+
6+
name: Site Build
7+
description: Builds this repository's own website for the fleet's Pages deploy.
8+
9+
inputs:
10+
base-path:
11+
description: The URL path the site is served under ("/" with a custom domain, else "/<repo>/")
12+
required: true
13+
origin:
14+
description: The site's origin (https://<owner>.github.io, or https://<domain>)
15+
required: true
16+
17+
outputs:
18+
dist:
19+
description: The built site's directory, relative to the repository root; empty = no repository site
20+
value: ${{ steps.build.outputs.dist }}
21+
22+
runs:
23+
using: composite
24+
steps:
25+
# A bun repository replaces the no-op step below with, for example:
26+
# - uses: oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2.2.0
27+
# with: {bun-version-file: .bun-version}
28+
# - {run: bun install --frozen-lockfile, shell: bash}
29+
# - id: build
30+
# shell: bash
31+
# env: {PAGES_BASE_PATH: "${{ inputs.base-path }}", PAGES_ORIGIN: "${{ inputs.origin }}"}
32+
# run: |
33+
# bun run build:web
34+
# echo "dist=apps/web/dist" >> "$GITHUB_OUTPUT"
35+
- id: build
36+
shell: bash
37+
run: |
38+
echo "site-build hook: no repository site configured; docs/ publishes alone when present"
39+
echo "dist=" >> "$GITHUB_OUTPUT"

‎.github/repo-platform-manifest.json‎

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,19 +9,20 @@
99
".github/ISSUE_TEMPLATE/config.yml": {"class": "starter"},
1010
".github/ISSUE_TEMPLATE/feature_request.yml": {"class": "starter"},
1111
".github/actionlint.yaml": {"class": "starter"},
12+
".github/actions/site-build/action.yml": {"class": "starter"},
1213
".github/agents.md": {"class": "link", "hash": "79909577a70fc4971a7fcfd3cbec6a1af7182ca2dadc87f2979dce5e28f93ca0"},
1314
".github/copilot-instructions.md": {"class": "link", "hash": "79909577a70fc4971a7fcfd3cbec6a1af7182ca2dadc87f2979dce5e28f93ca0"},
1415
".github/dependabot.yml": {"class": "managed", "hash": "a9e955fa9fd485a2d4cd9c86113252a6176d841223e6846c3f091c4317675223"},
1516
".github/instructions/review.instructions.md": {"class": "managed", "hash": "89d5c9bc2bea185a076b37a4cefb5ffea25a37f050c4e39512b875b95e2db380"},
16-
".github/repo-platform-manifest.json": {"class": "managed", "hash": null, "commit": "aca127263903bf252be50ae91483c49a72686ec5"},
17-
".github/settings.yml": {"class": "starter"},
17+
".github/repo-platform-manifest.json": {"class": "managed", "hash": null, "commit": "cb69066b5306727e9fb65ba86653e045c62579f3"},
18+
".github/settings.local.yml": {"class": "starter"},
19+
".github/settings.yml": {"class": "managed", "hash": "0cb54a24cdee176549b27ed790b684e2007f035b635eb19f5f6a535c837a789c"},
1820
".github/workflows/auto-assign.yml": {"class": "managed", "hash": "2168da47ac697147a7382136791035b6cb7213b8e5f01c71e8c16293016d7bb5"},
1921
".github/workflows/auto-format.yml": {"class": "starter"},
2022
".github/workflows/checks.yml": {"class": "starter"},
21-
".github/workflows/ci.yml": {"class": "managed", "hash": "0f857ede60114f27ddb068d6de0c30f52d686ebbe8f838fa51c0131680590fb4"},
23+
".github/workflows/ci.yml": {"class": "managed", "hash": "18f8b84e1ff2234f9a523d3a5e27e400ad7fab1a2bb248b03224e346858c2d28"},
2224
".github/workflows/copilot-setup-steps.yml": {"class": "starter"},
23-
".github/workflows/dependabot-bun-lockfile.yml": {"class": "managed", "hash": "68401247f45fa93db4cf1ee3322f838b7f14968baa33284f2e5a0fe82f45000f"},
24-
".github/workflows/docs-site.yml": {"class": "managed", "hash": "ca47c131f8c3db79590c46ce134752e9dcb08f8ccb860688b6e25b7aed649604"},
25+
".github/workflows/dependabot-bun-lockfile.yml": {"class": "managed", "hash": "dd72634f48dfb5e2da96a904d076ebed5b09a9cd470b5f91b99773db651e4578"},
2526
".github/workflows/nightly-fuzz.yml": {"class": "starter"},
2627
".github/workflows/nightly.yml": {"class": "starter"},
2728
".github/workflows/post-green.yml": {"class": "starter"},
@@ -34,7 +35,7 @@
3435
".repo-platform.yml": {"class": "starter"},
3536
".typography-allow": {"class": "managed", "hash": "768ce791aa89e0061a7ccce09ee389478c45062d28d0c256e09b9e7160455ac3"},
3637
".yamllint": {"class": "managed", "hash": "5185668468d5411afbc98e237d44a785ae9c80c49d1510439ac275d18d69a00e"},
37-
"AGENTS.md": {"class": "split", "grammar": "managed-region", "begin": "<!-- BEGIN REPO-PLATFORM MANAGED -->", "end": "<!-- END REPO-PLATFORM MANAGED -->", "hash": "1106a7878eddc7af3bab635345cab1475b340641938c40a784e2d477db4ce332"},
38+
"AGENTS.md": {"class": "split", "grammar": "managed-region", "begin": "<!-- BEGIN REPO-PLATFORM MANAGED -->", "end": "<!-- END REPO-PLATFORM MANAGED -->", "hash": "2cb5a50d0496904f7a7948963396c1716dc75bbf33bb2fcf059302a8be1803a8"},
3839
"CLAUDE.md": {"class": "link", "hash": "a54ff182c7e8acf56acfd6e4b9c3ff41e2c41a31c9b211b2deb9df75d9a478f9"},
3940
"LICENSE.md": {"class": "split", "grammar": "managed-region", "begin": "<!-- BEGIN REPO-PLATFORM MANAGED -->", "end": "<!-- END REPO-PLATFORM MANAGED -->", "hash": "18a881b9189f088a8d955b430e318b87f5386a32b2dabacda7eac2fbc10708d9"},
4041
"release-please-config.json": {"class": "starter"}

‎.github/settings.local.yml‎

Lines changed: 113 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,113 @@
1+
---
2+
# This repository's OWN settings. The fleet's central settings-repos heal
3+
# applies the six-layer merge of this file with the fleet layers; the sync
4+
# renders the same merge into .github/settings.yml.
5+
# Rendered once, repo-owned: template sync never rewrites it. Fleet defaults
6+
# merge UNDER this file - keys here win, null opts out, labels replace by
7+
# name, rulesets MERGE by name (rules append by type, nested objects merge
8+
# key by key, other arrays replace wholesale). The fleet invariants (squash-only merging, the main
9+
# and non-bypassable rulesets) sit ABOVE and cannot be overridden.
10+
# Undeclared labels are deleted against the MERGED roster; undeclared
11+
# rulesets are left alone.
12+
#
13+
# The fleet layers already carry everything this repository used to declare
14+
# by hand: the repository policy block, the dependabot labels (dependencies,
15+
# github_actions, javascript), the triage trio, the release-please labels,
16+
# the nightly and fuzzer tracking labels (nightly-failure, fuzz-nightly),
17+
# and the main ruleset with its code_scanning, code_quality, and
18+
# copilot_code_review rules.
19+
20+
repository:
21+
description: "GitHub Action applying declarative repository settings: rulesets, labels, branch protection, and more. A loud, stateless Probot Settings replacement."
22+
# Declared even when empty: the apply manages only declared keys, so
23+
# this keeps it healing out-of-band edits.
24+
homepage: ""
25+
topics: github-action, repository-settings, settings-as-code, configuration-as-code, probot-settings, rulesets, branch-protection, labels
26+
private: false
27+
28+
labels:
29+
# e2e-nightly.yml's file-fuzz-issue.ts files under this label, so it must
30+
# survive the label sync.
31+
- name: e2e-fuzz
32+
color: "B60205"
33+
description: Automated e2e nightly failure
34+
35+
rulesets:
36+
# NARROWS the release-please module's release-tags ruleset: the fleet
37+
# declares it over `v*`, which would also freeze the moving major tag
38+
# (v2) that update-release.yml force-moves with the Actions token on
39+
# every release. A same-name ruleset merges key by key and an array
40+
# replaces wholesale, so this entry swaps only the include list and
41+
# inherits everything else (rules, enforcement, bypass) from the fleet.
42+
# The vX.Y.Z tags stay immutable: each points at a commit carrying the
43+
# built bundle that template-sync workflow pins and release artifacts
44+
# reference - on the `build` branch (the release commit's tree without its
45+
# workflows, plus the bundle) from now on; the tags cut before that branch
46+
# existed point at main commits from when main still committed the bundle.
47+
# The `latest` tag matches neither pattern; its own ruleset is below.
48+
- name: release-tags
49+
conditions:
50+
ref_name:
51+
include:
52+
- v*.*.*
53+
54+
# The moving major tags (v1, v2) move on purpose - every release in the
55+
# line force-pushes them to its packaged commit - so no update rule, but
56+
# they must never vanish: a deleted major bricks every @v2 consumer at
57+
# once. fnmatch's * crosses dots, so v* also covers the vX.Y.Z tags;
58+
# that overlap is a harmless union with release-tags above.
59+
- name: major-release-tags
60+
target: tag
61+
enforcement: active
62+
conditions:
63+
ref_name:
64+
include:
65+
- v*
66+
exclude: []
67+
rules:
68+
- type: deletion
69+
bypass_actors:
70+
- actor_id: 5
71+
actor_type: RepositoryRole
72+
bypass_mode: always
73+
74+
# The moving `latest` tag: post-green.yml and the release hook point it at
75+
# the `build` commit of the newest main source with a lease, so no update
76+
# or non_fast_forward rule (either would refuse that move; the lease and
77+
# the script's own checks keep it from going backward). Deletion is the one
78+
# thing it must never suffer: a deleted latest bricks every @latest
79+
# consumer at once. No bypass, like the build ruleset, so the apply heals
80+
# an out-of-band bypass actor.
81+
- name: latest-tag
82+
target: tag
83+
enforcement: active
84+
conditions:
85+
ref_name:
86+
include:
87+
- latest
88+
exclude: []
89+
rules:
90+
- type: deletion
91+
bypass_actors: []
92+
93+
# The `build` branch of packaged commits: post-green.yml appends a green
94+
# main commit's packaged commit with a plain push when its token can (the
95+
# release hook appends the release's when post-green did not), so build may
96+
# only ever move forward - no force-push can rewrite the chain that
97+
# `@build` consumers pin by sha and that the release hook walks to find
98+
# a release's commit, and no deletion can remove it from under them.
99+
# Declared with NO bypass, like the fleet's non-bypassable ruleset: an
100+
# omitted key is invisible to drift detection, so the empty list is what
101+
# lets the apply heal an out-of-band bypass actor.
102+
- name: build
103+
target: branch
104+
enforcement: active
105+
conditions:
106+
ref_name:
107+
include:
108+
- build
109+
exclude: []
110+
rules:
111+
- type: deletion
112+
- type: non_fast_forward
113+
bypass_actors: []

0 commit comments

Comments
 (0)