diff options
| author | Danilo M. <danix@danix.xyz> | 2026-10-19 20:53:05 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-10-19 20:53:05 +0200 |
| commit | e6ac42e158ed5ceee2c58eaf2f23a0ad3bb82f41 (patch) | |
| tree | af12ae932e9cbbf774f5a03cceeba0dc20c4b1c0 /AGENTS.md | |
| parent | 30c6bc22a445105e7e7f37fb00ca054de1ecf3ad (diff) | |
| download | slackrepo_setup-e6ac42e158ed5ceee2c58eaf2f23a0ad3bb82f41.tar.gz slackrepo_setup-e6ac42e158ed5ceee2c58eaf2f23a0ad3bb82f41.zip | |
Track the slackrepo config; add sb-publish and publish gates
slackrepo_SBo-danix.conf is now kept here. Site values (rsync target,
Gotify URL and key) moved to the root-only SBo-danix.local it sources;
make-local.py migrates them out of an old inline config. The rsync push
moved into sb-publish; rsync_push_hook calls it and holds back when
SBB_PUBLISH=n, so sb-builder can build without publishing and publish
later. --preview does not set OPT_DRY_RUN, so the hooks now also check
OPT_PREVIEW: previews no longer notify Gotify or run manage-packages.sh
for real. gpg-agent.conf adds allow-preset-passphrase so sb-builder can
unlock the signing key for jobs without a tty.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'AGENTS.md')
| -rw-r--r-- | AGENTS.md | 16 |
1 files changed, 16 insertions, 0 deletions
@@ -43,6 +43,22 @@ Weekly flow: regenerate repo with this script; `sbshadow` runs `mkhint -F` at th Do **not** add a hintfile generator to this script — it would create a second owner of HINT_DIR and fight mkhint's `.bak` handling. +## slackrepo config and publishing + +`slackrepo_SBo-danix.conf` is the source of truth for `/etc/slackrepo/slackrepo_SBo-danix.conf`. +Never commit site values (rsync target, passwords, Gotify URL or key, hostnames): they live in the +root-only `/etc/slackrepo/SBo-danix.local`, which the config sources; `SBo-danix.local.example` +documents the keys with placeholders. slackrepo unsets only its own known config names after +sourcing (`varnames`, `genrepnames`, `initnames`, `OPTIONLIST` in `slackrepo`), so the `SB_*` +variables survive into the hooks, which run as functions in slackrepo's shell. + +Gates in the hooks: `SBB_PUBLISH=n` holds back `rsync_push_hook` (sb-builder sets it for +unpublished runs; `sb-publish` pushes later). `--preview` does not set `OPT_DRY_RUN` +(`cmdfunctions.sh`), so hooks check `OPT_PREVIEW` too. To check the gates without a VM, source +the config with `/usr/local/bin/` rewritten to a stub dir (stub `sb-publish`, +`manage-packages.sh`, `curl`) and call the hooks under each `OPT_DRY_RUN`/`OPT_PREVIEW`/ +`SBB_PUBLISH` combination. + ## Run ```bash |
