Compose the D&D pipeline roles
This commit is contained in:
72
README.md
72
README.md
@@ -1,3 +1,71 @@
|
||||
# ansible-role-dnd-pipeline
|
||||
# rakestraw.dnd_pipeline
|
||||
|
||||
An Ansible role to install the full D&D production pipeline (Narratio, Seriatim, Audita, Notarius, and Scriptorium, plus supporting assets).
|
||||
Installs the D&D transcript-processing application suite by composing the
|
||||
standalone Seriatim, Audita, Notarius, Scriptorium, and Narratio roles. It
|
||||
supports Ubuntu 26.04 and Ansible Core 2.18 or newer. Downstream roles perform
|
||||
their own task-level privilege escalation, so a play does not need `become`.
|
||||
|
||||
## Installation
|
||||
|
||||
Install the role dependencies and their collection before applying this role:
|
||||
|
||||
```sh
|
||||
ansible-galaxy role install -r requirements.yml
|
||||
ansible-galaxy collection install -r collections/requirements.yml
|
||||
```
|
||||
|
||||
The dependency manifest installs the roles under their canonical names:
|
||||
`rakestraw.seriatim`, `rakestraw.audita`, `rakestraw.notarius`,
|
||||
`rakestraw.scriptorium`, and `rakestraw.narratio`. This standalone role is
|
||||
named `rakestraw.dnd_pipeline`; a later collection release will expose it as
|
||||
`rakestraw.dnd.pipeline`.
|
||||
|
||||
```yaml
|
||||
---
|
||||
- name: Install the D&D pipeline foundation
|
||||
hosts: pipeline_hosts
|
||||
gather_facts: true
|
||||
roles:
|
||||
- role: rakestraw.dnd_pipeline
|
||||
vars:
|
||||
dnd_pipeline_whisperx_transcribe_url: https://whisperx.example/transcribe
|
||||
```
|
||||
|
||||
## Variables
|
||||
|
||||
`dnd_pipeline_whisperx_transcribe_url` is required and is passed to Narratio.
|
||||
The compatible application versions are selected through these variables:
|
||||
|
||||
| Variable | Default |
|
||||
| --- | --- |
|
||||
| `dnd_pipeline_audita_version` | `v0.9.1` |
|
||||
| `dnd_pipeline_narratio_version` | `v2.0.0` |
|
||||
| `dnd_pipeline_notarius_version` | `v0.6.0` |
|
||||
| `dnd_pipeline_seriatim_version` | `v1.5.0` |
|
||||
| `dnd_pipeline_scriptorium_version` | `v0.13.0` |
|
||||
| `dnd_pipeline_manage_build_dependencies` | `true` |
|
||||
| `dnd_pipeline_go_snap_channel` | `1.26/stable` |
|
||||
| `dnd_pipeline_go_binary` | `/snap/bin/go` |
|
||||
|
||||
The common dependency-management switch controls whether every application
|
||||
role installs Git and Go. The Go channel and executable are likewise passed to
|
||||
all five roles. Advanced callers may supply unmapped standalone-role variables
|
||||
directly through normal Ansible variable precedence.
|
||||
|
||||
Narratio receives the standard Seriatim, Audita, Notarius, and Scriptorium
|
||||
binary and configuration paths managed by the composed roles. Notarius is
|
||||
installed but remains disabled in Narratio until a later feature supplies a
|
||||
Notarius pipeline. Campaign content, prompt content, operator policy, and
|
||||
secret delivery are intentionally deferred.
|
||||
|
||||
## Validation
|
||||
|
||||
`tests/integration` installs the pinned Git dependencies and collection into
|
||||
private temporary paths, runs syntax and production-profile lint checks, then
|
||||
applies the baseline suite with a local syntactically valid WhisperX URL. It
|
||||
uses native application smoke/configuration commands, validates Narratio's
|
||||
assembled configuration as the Narratio account, and requires an immediate
|
||||
clean repeat. Cleanup reapplies the baseline suite and removes only the
|
||||
driver's private temporary directory.
|
||||
|
||||
An Ansible role to install the full D&D production pipeline (Narratio, Seriatim, Audita, Notarius, and Scriptorium, plus supporting assets).
|
||||
|
||||
Reference in New Issue
Block a user