Resume D&D storage and publishing plan
This commit is contained in:
@@ -11,7 +11,7 @@ object-storage credentials delivered through its existing secrets directory,
|
||||
publish the useful transcript and D&D artifact outputs, and retain maximum S3
|
||||
audio caching.
|
||||
|
||||
The standalone Narratio role already exposes Narratio v2.1.0's complete
|
||||
The standalone Narratio role already exposes Narratio v2.1.1's complete
|
||||
configuration surface for this behavior. This feature supplies D&D suite
|
||||
policy through that existing interface; it does not add another storage
|
||||
implementation or credential mechanism.
|
||||
@@ -25,6 +25,13 @@ publishing, and end-to-end external execution as deferred. The resulting suite
|
||||
can validate configuration and process local state, but it does not select the
|
||||
remote archive or publish the outputs needed for an operational deployment.
|
||||
|
||||
Narratio v2.1.0 also rejected a valid publish list when a rule explicitly set
|
||||
`required` while omitting a derivable `dest`. Narratio v2.1.1 corrects that
|
||||
resolution bookkeeping defect without changing the publish schema or
|
||||
destination rules. This feature therefore advances the pipeline application
|
||||
pin to v2.1.1 and retains explicit suite-owned requiredness together with
|
||||
native destination derivation.
|
||||
|
||||
The prior test-machine configuration records the intended Backblaze B2
|
||||
endpoint, bucket, prefix, credential names, publication set, and post-publish
|
||||
workspace cleanup. Narratio's current contract has since replaced the legacy
|
||||
@@ -53,6 +60,8 @@ Notarius, so S3 needs only to join the same path.
|
||||
|
||||
## Scope
|
||||
|
||||
- Advance the suite's Narratio application version from `v2.1.0` to the
|
||||
backward-compatible `v2.1.1` bugfix release.
|
||||
- Add suite-owned pipeline variables for the selected Narratio workspace,
|
||||
S3, cache, and publish settings.
|
||||
- Select the S3 backend with these D&D deployment defaults:
|
||||
@@ -137,6 +146,9 @@ Notarius, so S3 needs only to join the same path.
|
||||
- Adding notification providers. Narratio v2.1 supports only its existing
|
||||
`noop` notification mode.
|
||||
- Releasing new role or collection versions as part of this implementation.
|
||||
- Modifying Narratio, ConfigKit, or the standalone Narratio role. Narratio
|
||||
v2.1.1 is an already published prerequisite, and the existing generic role
|
||||
can install the selected application tag through `narratio_version`.
|
||||
|
||||
## Target End State
|
||||
|
||||
@@ -144,6 +156,7 @@ The standalone pipeline role exposes these suite variables with the selected
|
||||
defaults:
|
||||
|
||||
```yaml
|
||||
dnd_pipeline_narratio_version: v2.1.1
|
||||
dnd_pipeline_narratio_workspace_cleanup_after_publish: true
|
||||
dnd_pipeline_narratio_storage_backend: s3
|
||||
dnd_pipeline_narratio_storage_s3_bucket: rakestraw-assets
|
||||
@@ -223,14 +236,16 @@ remove, rename, or constrain this future composition path.
|
||||
defaults, dependency mappings, consumer documentation, and representative
|
||||
integration scenario.
|
||||
- `ansible-role-narratio` remains the generic owner of installation and native
|
||||
pipeline rendering. Its reviewed v2.1.0 interface already covers every
|
||||
pipeline rendering. Its reviewed `v0.1.0` role interface is compatible with
|
||||
Narratio v2.1.1 and already covers every
|
||||
configuration field required by this feature and should remain unchanged.
|
||||
- `ansible-collection-dnd` owns the faithful pipeline subtree import, the
|
||||
unified consumer dependency manifest, and artifact-boundary validation.
|
||||
- `ansible-workspace-dnd` owns this roadmap, the later implementation plan,
|
||||
status, and independent review record.
|
||||
- `narratio` is a read-only source of storage, publication, credential,
|
||||
caching, cleanup, restore, and CLI contracts.
|
||||
- `narratio` v2.1.1 is the released compatibility prerequisite and a read-only
|
||||
source of storage, publication, credential, caching, cleanup, restore, and
|
||||
CLI contracts during this implementation.
|
||||
- `rakestraw-ansible` remains unchanged until Feature 0016 consumes this
|
||||
interface on `pipeline-dnd`.
|
||||
|
||||
@@ -254,6 +269,10 @@ remove, rename, or constrain this future composition path.
|
||||
- Publish destinations remain omitted where Narratio can derive them. The
|
||||
configured source identity and artifact output path remain the single source
|
||||
of truth.
|
||||
- Narratio v2.1.1 is the minimum application version for this feature because
|
||||
it preserves destination derivation when `required` is explicit. Do not work
|
||||
around older behavior by duplicating destinations or omitting deliberate
|
||||
requiredness.
|
||||
- Workspace cleanup is gated by Narratio's own successful-publication
|
||||
evidence. Ansible does not independently inspect remote state or remove
|
||||
runtime content.
|
||||
@@ -273,11 +292,12 @@ remove, rename, or constrain this future composition path.
|
||||
|
||||
## Simplest Viable Implementation
|
||||
|
||||
Add the selected variables to the pipeline defaults and argument specification,
|
||||
then map them into the existing `rakestraw.narratio` dependency. Update the
|
||||
pipeline README to document the policy, credential names, complete-list
|
||||
replacement semantics, and native capabilities now available. Do not add a
|
||||
template, task, handler, fact, probe, or storage-specific validation layer.
|
||||
Advance `dnd_pipeline_narratio_version` to v2.1.1. Add the selected variables to
|
||||
the pipeline defaults and argument specification, then map them into the
|
||||
existing `rakestraw.narratio` dependency. Update the pipeline README to document
|
||||
the policy, credential names, complete-list replacement semantics, and native
|
||||
capabilities now available. Do not add a template, task, handler, fact, probe,
|
||||
or storage-specific validation layer.
|
||||
|
||||
In the existing pipeline integration driver, extend the synthetic secrets map
|
||||
with object-storage values and explicitly supply representative S3 and publish
|
||||
@@ -313,6 +333,12 @@ visible locally, but it would duplicate paths already owned by Narratio's
|
||||
built-in sources and the configured artifact definitions. Native destination
|
||||
derivation keeps path coordination automatic.
|
||||
|
||||
Omitting explicit `required: true` values would avoid the v2.1.0 failure only
|
||||
by relying on an unrelated defaulting path. Changing the generic role's YAML
|
||||
format would not repair the underlying sequence-resolution mismatch. Narratio
|
||||
v2.1.1 fixes the owning application boundary, allowing the suite to state its
|
||||
requiredness policy directly without duplicating destinations.
|
||||
|
||||
Deleting spool audio after publication would minimize transient disk usage,
|
||||
but no such retention policy has been selected, and local-audio sessions may
|
||||
depend on that content. Leaving the field omitted preserves Narratio's default
|
||||
@@ -330,6 +356,8 @@ operational workflow.
|
||||
- The pipeline role declares and documents every suite variable shown in the
|
||||
target state, with matching argument-spec entries and direct Narratio
|
||||
dependency mappings.
|
||||
- The pipeline installs Narratio v2.1.1, whose released configuration loader
|
||||
supports explicit requiredness together with derived publish destinations.
|
||||
- The two credential-reference variables accept paired `null` overrides so a
|
||||
caller can deliberately select Narratio's ambient AWS SDK provider chain.
|
||||
- The default effective Narratio configuration selects the specified
|
||||
@@ -346,8 +374,9 @@ operational workflow.
|
||||
credential value.
|
||||
- No new production task, template, handler, fact, state file, wrapper, or
|
||||
storage-validation command is introduced.
|
||||
- The standalone Narratio role remains unchanged because its v2.1.0 interface
|
||||
already renders the required native fields and preserves null omission.
|
||||
- The standalone Narratio role remains unchanged because its `v0.1.0` role
|
||||
interface can install Narratio v2.1.1, renders the required native fields,
|
||||
and preserves null omission.
|
||||
- The existing pipeline integration scenario explicitly supplies
|
||||
representative S3 and publish inputs, resolves synthetic values for all four
|
||||
typed credentials, passes Narratio's native configuration validation, and
|
||||
@@ -363,7 +392,9 @@ operational workflow.
|
||||
validation, and clean-repeat suite passes without a duplicate S3 behavior
|
||||
test.
|
||||
- No real object-storage request, paid model request, application repository
|
||||
change, asset change, release tag, or published artifact is required.
|
||||
change during the remaining implementation, asset change, new release tag,
|
||||
or published artifact is required. The existing Narratio v2.1.1 release is a
|
||||
prerequisite rather than an implementation deliverable.
|
||||
- Pipeline documentation links operators to Narratio's canonical procedures
|
||||
for S3 session audio, publish, restore, locks, status, and cleanup and no
|
||||
longer describes storage and publishing as deferred.
|
||||
@@ -373,9 +404,10 @@ operational workflow.
|
||||
|
||||
## Dependencies and Follow-up Work
|
||||
|
||||
Features 0009, 0011, 0012, 0013, and 0014 are prerequisites. In particular,
|
||||
Feature 0011 supplies the credential directory and Feature 0014 supplies the
|
||||
human-operator access needed for the eventual live deployment.
|
||||
Features 0009, 0011, 0012, 0013, and 0014 and the public Narratio v2.1.1 bugfix
|
||||
release are prerequisites. In particular, Feature 0011 supplies the credential
|
||||
directory and Feature 0014 supplies the human-operator access needed for the
|
||||
eventual live deployment.
|
||||
|
||||
[Feature 0016](0016-deploy-dnd-pipeline-to-pipeline-dnd.md) follows this work.
|
||||
It will put the four actual values in encrypted host inventory, pin the exact
|
||||
|
||||
Reference in New Issue
Block a user