25 lines
1.5 KiB
Markdown
25 lines
1.5 KiB
Markdown
# JOURNAL — sub-phase conc (Builder, append-only)
|
||
|
||
## 2026-06-10 — bootstrap
|
||
|
||
Read concurrency-restructure-full-plan.md (SSOT) + plan.md §6.1/§7/§9. Oriented on the code:
|
||
|
||
- `runner/harness/lifecycle.py` — recipe flock (l.46), registry (l.65–97), deploy_app
|
||
registration (l.283), teardown unregister (l.723), three-way janitor (l.726).
|
||
- `runner/run_recipe_ci.py` — `acquire_recipe_lock` call site (l.843), `fetch_recipe` (l.140,
|
||
rm-rf + reclone of the shared tree), janitor call sites (l.600 quick, l.932 cold).
|
||
- `.drone.yml` — recipe-ci step runs `cc-ci-run runner/run_recipe_ci.py` bare (P1 wraps it),
|
||
`concurrency.limit: 2` (P4 removes).
|
||
- Greps for P3 fallout: `~/.abra/recipes` referenced in abra.py (recipe_checkout,
|
||
has_lightweight_version_tags, recipe_head_commit, recipe_versions), generic.py:28,
|
||
lifecycle.prepull_images, run_recipe_ci (fetch_recipe, snapshot_recipe_tests, comment),
|
||
warm_reconcile.py:202 (runs OUTSIDE per-run context — keeps default), and
|
||
tests/ghost+discourse install_steps.sh (`${HOME}/.abra/recipes/...` — these run INSIDE a
|
||
run and copy compose.ccci.yml into the deploy tree, so they must resolve the per-run dir).
|
||
- `~/.abra/servers/...` paths are unaffected by design (servers/ is symlinked to the canonical
|
||
/root/.abra/servers, so both resolutions land on the same file).
|
||
|
||
Working setup: state files on main in this clone; code on branch `restructure/concurrency`
|
||
via a git worktree at ../cc-ci-conc; test runs on the cc-ci host via /root/builder-clone
|
||
(`cc-ci-run -m pytest ...`, `nix develop .#lint`).
|