mirror of
https://github.com/kubernetes-sigs/kubespray.git
synced 2025-12-13 21:34:40 +03:00
Factorize dynamic groups into a role
This commit is contained in:
@@ -6,35 +6,12 @@
|
|||||||
# - to ensure we keep compatibility with old style group names
|
# - to ensure we keep compatibility with old style group names
|
||||||
# - to reduce inventory boilerplate (defining parent groups / empty groups)
|
# - to reduce inventory boilerplate (defining parent groups / empty groups)
|
||||||
|
|
||||||
- name: Define groups for legacy less structured inventories
|
- name: Inventory setup and validation
|
||||||
hosts: all
|
|
||||||
gather_facts: false
|
|
||||||
tags: always
|
|
||||||
tasks:
|
|
||||||
- name: Match needed groups by their old names or definition
|
|
||||||
vars:
|
|
||||||
group_mappings:
|
|
||||||
kube_control_plane:
|
|
||||||
- kube-master
|
|
||||||
kube_node:
|
|
||||||
- kube-node
|
|
||||||
calico_rr:
|
|
||||||
- calico-rr
|
|
||||||
no_floating:
|
|
||||||
- no-floating
|
|
||||||
k8s_cluster:
|
|
||||||
- kube_node
|
|
||||||
- kube_control_plane
|
|
||||||
- calico_rr
|
|
||||||
group_by:
|
|
||||||
key: "{{ (group_names | intersect(item.value) | length > 0) | ternary(item.key, '_all') }}"
|
|
||||||
loop: "{{ group_mappings | dict2items }}"
|
|
||||||
|
|
||||||
- name: Check inventory settings
|
|
||||||
hosts: all
|
hosts: all
|
||||||
gather_facts: false
|
gather_facts: false
|
||||||
tags: always
|
tags: always
|
||||||
roles:
|
roles:
|
||||||
|
- dynamic_groups
|
||||||
- validate_inventory
|
- validate_inventory
|
||||||
|
|
||||||
- name: Install bastion ssh config
|
- name: Install bastion ssh config
|
||||||
|
|||||||
@@ -28,3 +28,16 @@
|
|||||||
roles:
|
roles:
|
||||||
- role: kubespray_defaults
|
- role: kubespray_defaults
|
||||||
- role: network_plugin/cni
|
- role: network_plugin/cni
|
||||||
|
tasks:
|
||||||
|
- name: Create /etc/cni/net.d directory
|
||||||
|
file:
|
||||||
|
path: /etc/cni/net.d
|
||||||
|
state: directory
|
||||||
|
owner: root
|
||||||
|
mode: "0755"
|
||||||
|
- name: Config bridge host-local CNI
|
||||||
|
copy:
|
||||||
|
src: "10-mynet.conf"
|
||||||
|
dest: "/etc/cni/net.d/"
|
||||||
|
owner: root
|
||||||
|
mode: "0644"
|
||||||
|
|||||||
19
roles/dynamic_groups/tasks/main.yml
Normal file
19
roles/dynamic_groups/tasks/main.yml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
---
|
||||||
|
- name: Match needed groups by their old names or definition
|
||||||
|
vars:
|
||||||
|
group_mappings:
|
||||||
|
kube_control_plane:
|
||||||
|
- kube-master
|
||||||
|
kube_node:
|
||||||
|
- kube-node
|
||||||
|
calico_rr:
|
||||||
|
- calico-rr
|
||||||
|
no_floating:
|
||||||
|
- no-floating
|
||||||
|
k8s_cluster:
|
||||||
|
- kube_node
|
||||||
|
- kube_control_plane
|
||||||
|
- calico_rr
|
||||||
|
group_by:
|
||||||
|
key: "{{ (group_names | intersect(item.value) | length > 0) | ternary(item.key, '_all') }}"
|
||||||
|
loop: "{{ group_mappings | dict2items }}"
|
||||||
Reference in New Issue
Block a user