OpenShift clusters on Proxmox made simple
Successfully refactored from single monolithic collection to three focused collections with zero duplication.
Before:
ansible_collections/proxshift/ocp_provisioning/ # Single collection with mixed concerns
├── roles/ (11 roles)
After:
ansible_collections/proxshift/
├── openshift/ # OpenShift management (8 roles)
├── hashi_vault/ # Vault integration (1 role)
└── proxmox/ # Infrastructure management (2 roles)
proxshift.openshift - OpenShift cluster managementproxshift.hashi_vault - HashiCorp Vault integrationproxshift.proxmox - Proxmox infrastructure managementsite.yaml → uses new collection structuretasks/*.yml → all updated to new collectionsroles_test.yaml → updated test playbookocp_provisioning collection entirelyansible_collections/proxshift/openshift/roles/
├── acm_import/ # ACM cluster import
├── cluster_auth/ # Cluster authentication
├── cluster_credentials/ # Credential management
├── node_labeling/ # Node labeling
├── oc_kubeadmin/ # Kubeadmin authentication
├── ocp_manifests/ # OpenShift manifests
├── secret_management/ # Secret operations
└── vault_credentials/ # Vault credential storage
ansible_collections/proxshift/hashi_vault/roles/
└── hashicorp_vault/ # Vault secret retrieval
ansible_collections/proxshift/proxmox/roles/
├── proxmox_vm/ # VM lifecycle management
└── vm_lifecycle/ # VM start/stop operations
_archive/ after validation period