- use `-e target_hosts=openop_3` or `-e target_hosts=openop_2` for one side only
- use `-e target_hosts=openop_2,openop_3` to update both sides in `dual_oop`
-`/deploy.yml` is idempotent: if nothing changed, Ansible usually reports `ok` and does not restart or recreate service
- to apply changed templates, image tags, manifests, or vars, rerun same tool `/deploy.yml` command with those updated inputs
- tool playbooks use inventory host variables, including remote kubeconfig paths and filenames
- if you want to use scenario playbooks instead, `--tags <service>` works for deploy/reconcile, but dedicated tool `undeploy.yml` is clearer for removal
## Where kubeconfigs go
For remote deployments, playbooks fetch kubeconfigs locally to: