Files
ansible-workspace-dnd/docs/roadmap/implementation.md

9.0 KiB

Implementation Plan 0016: Prepare the D&D Deployment Playbook

Status: in_progress

Target executor: GPT-5.6-Terra

Feature roadmap: docs/roadmap/features/0016-deploy-dnd-pipeline-to-pipeline-dnd.md

Active plan location: docs/roadmap/implementation.md

Objective

Finish and commit repository preparation in rakestraw-ansible: minimal playbook, host variables with comments for unknown values, reviewed dependency pins, and concise operator instructions. This revision supersedes all previous deployment and live-acceptance stages. Do not execute them.

Execution Rules

  • Execute the stages below in order, rereading each stage's listed policies. Check working trees first, preserve unrelated work, validate, and commit each completed unit with its stated plain-English intent.
  • Do not deploy to an operational controller or target, connect to the target, populate actual credentials, or run a real pipeline session.
  • Missing controller, SSH, Vault, and session inputs are not blockers. Express unknown required values through commented instructions and variable references.
  • Keep playbooks limited to hosts and roles. No new tasks, wrapper, probes, runtime assertions, or automated test harness is required.
  • Use existing workspace .venv/bin executables for local Ansible checks. Core 2.21.3 is installed; a missing PATH entry or /etc/ansible directory does not mean tooling is missing. Explicit local paths suffice.
  • Reuse passing validation whose inputs are unchanged. Optional diagnostics and ansible-doc documentation rendering are not acceptance gates.
  • Keep credential values out of plaintext files, Git, commands, and logs. Do not create fake keys or an empty Vault file to satisfy inventory references.

Starting State and Repository Scope

  • Feature 0015 is complete and independently reviewed.
  • Consumer 716a80e added the initial runbook; 12b2462 committed the new playbook, host configuration, and dependencies. Inspect intervening commits; do not repeat or discard completed work.
  • Public dependency installation, target-only host listing, and syntax checking passed for the prepared consumer configuration. The missing option descriptions in three roles affect ansible-doc only and are not part of this feature.
  • rakestraw-ansible owns remaining comments/runbook changes. The workspace owns status and review handoff. All other repositories remain read-only.
  • No credentials, controller access, target access, or session selection is needed to complete this plan.

Stage 1: Finish Consumer Comments and Usage Documentation

Completion: complete (consumer 7f8353d74efabb5ae408e41be9837df53010dd95)

Objective and Owning Repository

Make the existing committed consumer configuration self-explanatory in rakestraw-ansible and remove live execution as a completion requirement.

Required Policy Review

Before this stage, read AGENTS.md, docs/orientation.md, docs/conventions.md, docs/ansible.md, docs/testing.md, docs/planning.md, the Feature 0016 roadmap, and the consumer README/runbook.

Preconditions

Inspect the current consumer changes and the two completed commits above. Local Ansible tools are available. There are no remote prerequisites.

Required Changes

  1. Retain playbooks/pipeline/dnd.yml, which contains only the pipeline-dnd host and rakestraw.dnd.pipeline role. Retain reviewed dependency pins and known host values. Compare against the revised roadmap; correct only actual discrepancies, without adding suite-default copies or extra play content.
  2. In inventory/host_vars/pipeline-dnd/narratio.yml, add the roadmap's comments beside dnd_pipeline_secrets: define the four referenced vault_dnd_* variables in an encrypted vault.yml before eventual deployment. Retain unresolved references. Do not obtain secret values or create a Vault file.
  3. Revise docs/pipeline-dnd.md to describe repository preparation as the completed deliverable. Clearly label installation, credential provisioning, and deployment commands as future operator instructions, not steps the implementation agent must execute. Remove operational prerequisite checklists and session-acceptance requirements from this feature's completion path.
  4. Retain useful concise future-use instructions: the pinned collection refresh, Vault variable names and selection options, and minimal playbook invocation. Link application documentation for later pipeline operation rather than maintaining a live-session test script or demanding session selection now.
  5. Preserve connection inventory, unrelated dependencies, and the historical proof-of-concept playbook/role.

Validation

Run git diff --check in rakestraw-ansible and review the changed documentation and comments. Reuse the recorded successful public installation, syntax, and host-listing results if only comments/documentation change. No runtime tests or repeated dependency installation are necessary for those edits.

If executable configuration changes, rerun only affected local checks using the workspace tools and explicit local inventory/dependency paths:

ansible-playbook -i inventory playbooks/pipeline/dnd.yml --limit pipeline-dnd --list-hosts
ansible-playbook -i inventory playbooks/pipeline/dnd.yml --limit pipeline-dnd --syntax-check

Use previously installed isolated public dependencies when available. If needed, install from requirements.yml into disposable local role/collection paths. Do not use operational /etc/ansible destinations or local sibling role sources. Keep unresolved credentials untouched; local syntax checking does not claim they resolve. If unrelated encrypted inventory prevents a local check, use a disposable inventory containing the target alias and non-secret variables, and report that narrower validation scope.

Completion Criteria

The required public files exist, unknown values have explanatory comments, local validation evidence is sufficient, and the consumer changes are committed. No deployment or real credential provisioning is required.

Commit

Document the remaining D&D deployment inputs.

Stage 2: Record the Repository Preparation Handoff

Completion: complete (handoff recorded by this change)

Objective and Owning Repository

Record Feature 0016 implementation readiness for independent review in the workspace, scoped entirely to committed repository content.

Required Policy Review

Before this stage, read AGENTS.md, docs/orientation.md, docs/conventions.md, docs/testing.md, docs/planning.md, and the revised Feature 0016 roadmap.

Preconditions

Stage 1 has passed local validation and is committed. No remote prerequisites.

Required Changes

  1. Update docs/status.md and this plan's progress notes with the consumer commit and local validation evidence. Describe real deployment as separately deferred operator work, not a blocker or incomplete acceptance criterion.
  2. Keep Feature 0016 in_progress pending independent review. Report any actual repository issues; do not mark it done solely because implementation ended.
  3. Confirm the feature's owning working trees are clean after committing. Preserve any unrelated changes and identify them instead of discarding them.

Validation and Completion Criteria

Run git diff --check. Evidence points to committed consumer content and appropriate local checks. The handoff makes no claims of live deployment or runtime acceptance. No paid request or host access is necessary.

Commit

Record D&D playbook preparation for review.

Final Validation and Handoff

Report owning commits, changed consumer files, comments explaining missing values, and local validation performed or reused. Feature review evaluates the committed playbook/configuration, not operational deployment. No push is required unless separately requested.

Progress Notes

  • Consumer 716a80e added the initial runbook, and 12b2462 committed the minimal playbook, public host choices, and reviewed dependency manifest. Public dependency installation from the mixed manifest succeeded, host listing selected only pipeline-dnd, and syntax checking passed.
  • Stage 1 is complete in consumer commit 7f8353d74efabb5ae408e41be9837df53010dd95. The plaintext inventory now explains its unresolved Vault references, and the runbook distinguishes the completed repository preparation from future operator installation, credential provisioning, deployment, and application operation.
  • Stage 1 changed only comments and documentation, so the prior installation, host-listing, and syntax evidence was reused as directed. git diff --check passed, and the consumer working tree is clean.
  • Stage 2 records the implementation handoff for independent review. No live deployment, target validation, credential provisioning, or pipeline session was performed or is claimed by Feature 0016.

Open Questions

None required for this repository-only implementation. Unknown API keys and future operational inputs are documented for the operator, not requested now.