create snapshot-controller only if needed
This commit is contained in:
parent
c3c9a42502
commit
79f6cd774a
2 changed files with 20 additions and 3 deletions
|
@ -314,7 +314,7 @@ def main():
|
|||
wait=dict(default=False, type='bool'),
|
||||
all=dict(default=False, type='bool'),
|
||||
log_level=dict(default=0, type='int'),
|
||||
state=dict(default='present', choices=['present', 'absent', 'latest', 'reloaded', 'stopped']),
|
||||
state=dict(default='present', choices=['present', 'absent', 'latest', 'reloaded', 'stopped', 'exists']),
|
||||
recursive=dict(default=False, type='bool'),
|
||||
),
|
||||
mutually_exclusive=[['filename', 'list']]
|
||||
|
@ -339,6 +339,11 @@ def main():
|
|||
elif state == 'latest':
|
||||
result = manager.replace()
|
||||
|
||||
elif state == 'exists':
|
||||
result = manager.exists()
|
||||
module.exit_json(changed=changed,
|
||||
msg='%s' % result)
|
||||
|
||||
else:
|
||||
module.fail_json(msg='Unrecognized state %s.' % state)
|
||||
|
||||
|
|
|
@ -1,15 +1,27 @@
|
|||
---
|
||||
- name: check if snapshot namespace exists
|
||||
register: snapshot_namespace_exists
|
||||
kube:
|
||||
kubectl: "{{ bin_dir }}/kubectl"
|
||||
name: "{{ snapshot_controller_namespace }}"
|
||||
resource: "namespace"
|
||||
state: "exists"
|
||||
when: inventory_hostname == groups['kube_control_plane'][0]
|
||||
tags: snapshot-controller
|
||||
|
||||
- name: Snapshot Controller | Generate Manifests
|
||||
template:
|
||||
src: "{{ item.file }}.j2"
|
||||
dest: "{{ kube_config_dir }}/{{ item.file }}"
|
||||
mode: 0644
|
||||
with_items:
|
||||
- {name: snapshot-ns, file: snapshot-ns.yml}
|
||||
- {name: snapshot-ns, file: snapshot-ns.yml, apply: not snapshot_namespace_exists}
|
||||
- {name: rbac-snapshot-controller, file: rbac-snapshot-controller.yml}
|
||||
- {name: snapshot-controller, file: snapshot-controller.yml}
|
||||
register: snapshot_controller_manifests
|
||||
when: inventory_hostname == groups['kube_control_plane'][0]
|
||||
when:
|
||||
- inventory_hostname == groups['kube_control_plane'][0]
|
||||
- item.apply | default(True) | bool
|
||||
tags: snapshot-controller
|
||||
|
||||
- name: Snapshot Controller | Apply Manifests
|
||||
|
|
Loading…
Reference in a new issue