|
@@ -0,0 +1,35 @@
|
|
|
|
+---
|
|
|
|
+# Ensures groups are associated with relevant cluster roles.
|
|
|
|
+#
|
|
|
|
+# Required variables (some are reused from deploy-rhbk role):
|
|
|
|
+#
|
|
|
|
+# openshift:
|
|
|
|
+# role_assignments: a dictionary of group / list-of-roles mappings
|
|
|
|
+# groupname:
|
|
|
|
+# - role1
|
|
|
|
+# - role2
|
|
|
|
+# remove_kubeadmin: whether to remove kubeadmin secret (make sure someone
|
|
|
|
+# has cluster-admin rights before doing this)
|
|
|
|
+#
|
|
|
|
+# Optional variables:
|
|
|
|
+#
|
|
|
|
+# kubeadmin_config the administrator kubeconfig file (tmp/kubeconfig-ocp4)
|
|
|
|
+#
|
|
|
|
+- name: Iterate over defined groups in role_assignments
|
|
|
|
+ ansible.builtin.include_tasks:
|
|
|
|
+ file: tasks/create-crb.yml
|
|
|
|
+ loop: "{{ openshift.role_assignments.keys() }}"
|
|
|
|
+ loop_control:
|
|
|
|
+ loop_var: group
|
|
|
|
+
|
|
|
|
+- name: Remove kubeadmin secret if requested
|
|
|
|
+ kubernetes.core.k8s:
|
|
|
|
+ kubeconfig: "{{ kubeadmin_config }}"
|
|
|
|
+ validate_certs: no
|
|
|
|
+ api_version: v1
|
|
|
|
+ kind: secret
|
|
|
|
+ namespace: kube-system
|
|
|
|
+ name: kubeadmin
|
|
|
|
+ state: absent
|
|
|
|
+ when: openshift.remove_kubeadmin | default(no)
|
|
|
|
+...
|