41 lines
1.2 KiB
YAML
41 lines
1.2 KiB
YAML
---
|
|
# Example playbook showing how to use the modular kubeconfig management
|
|
# across multiple clusters in your homelab
|
|
|
|
- name: Setup kubeconfig for FastPass cluster
|
|
hosts: fastpass_control_plane[0]
|
|
gather_facts: true
|
|
roles:
|
|
- role: kubeconfig-manager
|
|
vars:
|
|
cluster_name: "fastpass"
|
|
|
|
- name: Setup kubeconfig for Hub cluster
|
|
hosts: hub_cluster
|
|
gather_facts: true
|
|
roles:
|
|
- role: kubeconfig-manager
|
|
vars:
|
|
cluster_name: "hub"
|
|
|
|
- name: Setup kubeconfig for Internal cluster
|
|
hosts: internal_cluster[0]
|
|
gather_facts: true
|
|
roles:
|
|
- role: kubeconfig-manager
|
|
vars:
|
|
cluster_name: "internal"
|
|
|
|
# Alternative approach using the generic cluster-kubeconfig role
|
|
- name: Setup kubeconfig for any cluster
|
|
hosts: "{{ target_cluster_hosts }}"
|
|
gather_facts: true
|
|
roles:
|
|
- role: cluster-kubeconfig
|
|
vars:
|
|
cluster_name: "{{ target_cluster_name }}"
|
|
|
|
# Usage examples:
|
|
# ansible-playbook -i inventory.yml examples/multi-cluster-kubeconfig.yml
|
|
# ansible-playbook -i inventory.yml examples/multi-cluster-kubeconfig.yml --limit fastpass_control_plane[0]
|
|
# ansible-playbook -i inventory.yml examples/multi-cluster-kubeconfig.yml -e target_cluster_hosts=hub_cluster -e target_cluster_name=hub |