Skip to content

feat(data-index): Pages rollout kit — 28-repo generator, consistency guards, 200-checker - #57

Merged
andrew2net merged 1 commit into
mainfrom
feat/data-pages-rollout-kit
Aug 4, 2026
Merged

feat(data-index): Pages rollout kit — 28-repo generator, consistency guards, 200-checker#57
andrew2net merged 1 commit into
mainfrom
feat/data-pages-rollout-kit

Conversation

@andrew2net

Copy link
Copy Markdown
Contributor

Why

Finishes the relaton-data-* GitHub Pages "index site" rollout (relaton/relaton#48).
The per-repo machinery was correct but only wired up for 3 datasets; this makes the
rollout push-button and defect-proof from support, with no change to any
sibling repo
(they're delivered via the existing Cimas + generated _config.yml
flow).

What's here

  • Generator (lib/data_index_config.rb, data-index/configs.yml) — optional
    per-entry favicon / description / pubid_require overrides (fall back to the
    defaults/template), and the 3 already-live repos (ids, oasis, w3c) folded in
    so configs.yml is the single source for all 28 sites. w3c keeps
    Relaton::W3c::PubId + relaton/w3c/pubid; branch: v2 corrects their stale
    /main/ baseurl.
  • bin/check-data-pages — HTTP-checks each repo's Pages site + raw-index URL,
    reports 200, exits non-zero otherwise. The "confirm each site returns 200" gate.
  • spec/cimas_data_pages_spec.rb — guards that configs.yml and
    cimas-config/cimas.yml agree for every repo (entry + data group +
    deploy.yml/Gemfile.deploy mapping + matching branch). Closes the silent-404
    class where a branch drift skips the Pages publish.
  • data-index/generated/ — drift-guarded snapshot of all 28 rendered
    _config.yml (the exact bytes to commit into each data repo).
  • cimas-config/cimas.yml — reconcile w3c/oasis/ids branch: main -> v2
    (verified real default via gh api).
  • data-index/README.adoc — finished rollout runbook + per-repo Pages-enablement
    status (20 already enabled on v2; 5 main-default need admin).

Verification

  • bundle exec rspec169 examples, 0 failures.
  • Consistency guard proven to bite (branch flip → red).
  • bin/check-data-pages validated live: all 25 targets' raw-index return 200; the
    3 live repos return 200 site + raw-index on v2.

Not in this PR (operator steps, documented in the runbook)

cimas push to the data repos, committing each _config.yml, enabling Pages on the
5 main-default repos (needs admin), and the live 200 confirmation — all touch
external repos / network.

…guards, 200-checker

Make the relaton-data-* GitHub Pages rollout push-button and defect-proof from
the support repo (relaton/relaton#48). No sibling repo is modified.

- generator: add optional per-entry favicon/description/pubid_require overrides
  (fall back to defaults/template) and fold in the 3 already-live repos
  (ids/oasis/w3c) so configs.yml is the single source for all 28 sites. w3c keeps
  its Relaton::W3c::PubId + relaton/w3c/pubid; branch: v2 corrects their stale
  /main/ baseurl (index-v1.yaml is served from v2).
- lib: extract baseurl helper; add pages_url / raw_index_url builders.
- bin/check-data-pages: HTTP-check each repo's Pages site + raw-index, report
  200, exit non-zero otherwise ("confirm each site returns 200" gate).
- spec/cimas_data_pages_spec.rb: guard configs.yml <-> cimas.yml agreement
  (entry + data group + deploy.yml/Gemfile.deploy mapping + matching branch) to
  close the silent-404 class where a branch drift skips the Pages publish.
- data-index/generated/: drift-guarded snapshot of all 28 rendered _config.yml.
- cimas.yml: reconcile w3c/oasis/ids branch main -> v2 (verified real default).
- data-index/README.adoc: finished rollout runbook + Pages-enablement status.
@andrew2net
andrew2net merged commit 145ea77 into main Aug 4, 2026
5 checks passed
@andrew2net
andrew2net deleted the feat/data-pages-rollout-kit branch August 4, 2026 16:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant