Files
devx/docs/specs/DEVX-178.md
T

1.4 KiB

DEVX-178: PLAYBOOK_ROLE_MAP entry for deploy-controller playbook

Problem

OBL-INFRA-655 adds the deploy-controller.yml playbook in the infra repo to the infra repo (drives the new deploy_controller role). The infra molecule coverage guard (test_every_playbook_is_mapped) requires every playbook under ansible/playbooks/ to appear in PLAYBOOK_ROLE_MAP. Without the entry, the guard fails and unmapped playbooks fail open to all testable roles — correct but wasteful.

Approach

REQ-1: Add a deploy-controller.yml → ['deploy_controller'] entry to PLAYBOOK_ROLE_MAP in src/devx/molecule/molecule_changed.py so changes to the playbook select the deploy_controller molecule scenario.

Test Plan

  • Existing test_molecule_changed.py mapping tests cover new entries generically; add an explicit assertion that the deploy-controller playbook maps to deploy_controller.
  • make pytest-cov (100% gate), make lint-all.

Deploy Plan

Merge → devx release publishes automatically → infra dep-PR bumps the pin; the mapping takes effect on the next infra CI run.

Rollback Plan

Revert the squash commit; infra playbook falls back to fail-open all-role selection (safe, slower).

Acceptance Criteria

  • REQ-1: the deploy-controller playbook key maps to ["deploy_controller"] in PLAYBOOK_ROLE_MAP.
  • Unit test pins the mapping; 100% coverage maintained.