feat: manage Seriatim source prerequisites

This commit is contained in:
2026-09-07 18:03:57 +00:00
parent ac35c1f5ff
commit b84b045f31
5 changed files with 163 additions and 3 deletions

View File

@@ -4,8 +4,8 @@ Installs the [Seriatim](https://gitea.maximumdirect.net/eric/seriatim)
transcript processor from source. The role supports Ubuntu 26.04 on `amd64`
and `arm64` hosts and is independently usable outside the D&D pipeline role.
At this point the role defines and validates its public contract; binary
installation is added by subsequent implementation work.
The role manages its build dependencies and a root-owned source checkout. At
this point binary installation is added by subsequent implementation work.
## Requirements
@@ -37,6 +37,18 @@ ansible-galaxy collection install -r collections/requirements.yml
For development revisions, set both `seriatim_source_ref` and an honest
`seriatim_build_version`. Released deployments should select immutable tags.
When `seriatim_manage_build_dependencies` is enabled, the role installs Git
and converges the classic Go Snap to `seriatim_go_snap_channel`. When disabled,
both Git and the configured Go executable must already be available, and Go
must be version 1.25 or newer.
The checkout is authoritative: tracked changes and all untracked or ignored
files beneath `seriatim_source_dir` are discarded during convergence. The
repository URL may point to a private remote, but authentication must be
provided independently through the managed host's Git configuration or SSH
environment; this role does not manage credentials or accept unknown host
keys.
## Static validation
```sh