mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-09 04:06:42 +00:00
Merge branch 'main' into feature/store-i18n
Fourteen real conflicts plus the 66 generated READMEs.
utils/cache/files.py and its test: both sides added a skip-dir rule, resolved
as a union so the root `build/` prune and the per-root walk key coexist.
plugins/lookup/database.py and postgres_libraries.py: main's added lookups kept,
with get_entity_name renamed to entity_name as this branch renamed it.
roles/web-app-{mailu,matrix}/meta/services.yml: main's `covers: [email]` and its
MAIL_PROVIDER-gated email entry, plus this branch's gitlab/jira/n8n/jitsi
consumers, which the merge base carried on neither side.
group_vars/all/17_resource.yml: this branch's lookup('resource', ...) refactor;
main's single added literal is already covered by _POSTGRES_MAX_LOCKS_PER_TRANSACTION.
docs/requirements/035-mcp-proxy-expansion.md: this branch moved the design into
ADR 0003, so the requirement keeps only the user story and the criteria. Main's
delta inside the moved block was two new roles, carried into the ADR audit:
web-app-stalwart as adapter_candidate, svc-net-tor-smtp as privileged_control_plane.
The no_surface total said 99 while its own subcategories summed to 112.
inventories/development/default.yml: biber keeps no explicit email. Both sides fixed
the same CI failure; this branch fixed it in _apply_account_defaults, which renders
biber@{{ DOMAIN_PRIMARY }} (utils/cache/users/__init__.py:68) — byte-identical to
the address main hardcoded, so the inventory line is a second copy of one fact.
roles/web-app-{gitlab,keycloak}/files/playwright/playwright.spec.js and
roles/web-app-gitlab/templates/playwright.env.j2: union of both import sets, with
requireDotenvValue kept over decodeDotenvQuotedValue for CANONICAL_DOMAIN because
an empty value must fail rather than match every substring.
The 66 role READMEs take this side: aceb5295ef moved Cosmos, Quick Setup and
Credits to the documentation build, and test_readme.py now rejects them in a
committed README. Main's prose edits inside them are carried over by hand (the
Mailu deprecation banner, Mailu -> Stalwart in erpnext and zammad), and the two
READMEs main added fresh are stripped of the three generated sections.
roles/web-app-sphinx/README.md stays deleted; 6eb9a59d14 merged that role into
web-app-docs. The root README's generated role table was regenerated from the
merged metadata.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
commit
f2fedfc677
351 files changed
+9968
-416
No files matched your search
@@ -20,7 +20,7 @@ Three variables keep the fallback inside the group's bounds:
|
||||
- `CURRENT_RUN_ID` — keeps the calling run itself alive.
|
||||
- `INCLUDE_PATHS` — newline-separated workflow paths, the members of the concurrency group being backed up. Without it the helpers would also cancel runs the group never governed, such as the `cron-*` workflows that listen on `push`. Derive the list from the `concurrency:` blocks, not from what looks related: `entry-delete-branch.yml` keys its group on the *deleted* ref, so it is not a member of a push's group, and listing it would make a push to `main` cancel an unrelated branch cleanup. A value that lists no path at all aborts rather than silently matching nothing.
|
||||
|
||||
Leave `KEEP_NEWEST_PER` and `INCLUDE_PATHS` unset to cancel every matching run, as the lifecycle events do — a closed PR and a deleted branch have no run left that deserves to survive. A fallback also mirrors whatever gates its group: `global-ci-*` cancels on every ref except `main`, so the push job carries the same `github.ref_name != 'main'` guard, while `pr-ci-*` is declared `cancel-in-progress: true` unconditionally, so the pull request job is ungated too.
|
||||
Leave `KEEP_NEWEST_PER` and `INCLUDE_PATHS` unset to cancel every matching run, as the lifecycle events do — a closed PR and a deleted branch have no run left that deserves to survive. A fallback also mirrors whatever gates its group: `global-ci-*` cancels on every ref except `main` (where only a `Release version ` head commit cancels), so the push job carries the same predicate and does not listen on `main`, leaving the release case to the group, while `pr-ci-*` is declared `cancel-in-progress: true` unconditionally, so the pull request job is ungated too.
|
||||
|
||||
`FORCE_CANCEL_AFTER_SECONDS` turns the cancel into an escalation. A cancel request does not stop a running step: the runner asks it to end, and a step that ignores the signal keeps going until its own `timeout-minutes`, which is 350 for a deploy. The concurrency group holds the newer run on `pending` until the occupant is *terminal*, not until it is cancel-requested, so a superseded sweep can block its branch for hours after being told to stop -- measured at eight minutes and counting, with ten deploy jobs untouched. After the wait, every run that is still not `completed` gets [`force-cancel`](https://docs.github.com/en/rest/actions/workflow-runs), which bypasses the conditions that keep it alive. The skipped cleanup steps are the price, and for a run that has already been superseded its artefacts are of no use to anyone. Leave the variable unset to cancel and walk away, which is what a closed pull request and a deleted branch want.
|
||||
|
||||
|
||||
Reference in new issue
Block a user