2018-06-25 19:23:20 +08:00
|
|
|
---
|
|
|
|
- name: "Get heketi topology."
|
|
|
|
register: "heketi_topology"
|
2018-08-08 20:22:50 +08:00
|
|
|
changed_when: false
|
|
|
|
command: "{{ bin_dir }}/kubectl exec {{ heketi_pod_name }} -- heketi-cli topology info --json"
|
2018-06-25 19:23:20 +08:00
|
|
|
- name: "Render heketi topology template."
|
2018-07-25 22:42:30 +08:00
|
|
|
become: true
|
2018-06-25 19:23:20 +08:00
|
|
|
vars: { nodes: "{{ groups['heketi-node'] }}" }
|
2018-08-08 20:22:50 +08:00
|
|
|
register: "rendering"
|
2018-06-25 19:23:20 +08:00
|
|
|
template:
|
|
|
|
src: "topology.json.j2"
|
2018-07-25 22:42:30 +08:00
|
|
|
dest: "{{ kube_config_dir }}/topology.json"
|
|
|
|
- name: "Copy topology configuration into container."
|
2018-08-08 20:22:50 +08:00
|
|
|
when: "rendering.changed"
|
|
|
|
command: "{{ bin_dir }}/kubectl cp {{ kube_config_dir }}/topology.json {{ heketi_pod_name }}:/tmp/topology.json"
|
2018-06-25 19:23:20 +08:00
|
|
|
- name: "Load heketi topology."
|
2018-08-08 20:22:50 +08:00
|
|
|
when: "rendering.changed"
|
2018-09-05 21:58:44 +08:00
|
|
|
command: "{{ bin_dir }}/kubectl exec {{ heketi_pod_name }} -- heketi-cli --user admin --secret {{ heketi_admin_key }} topology load --json=/tmp/topology.json"
|
2018-06-25 19:23:20 +08:00
|
|
|
- name: "Get heketi topology."
|
|
|
|
register: "heketi_topology"
|
2018-08-08 20:22:50 +08:00
|
|
|
changed_when: false
|
2018-09-05 21:58:44 +08:00
|
|
|
command: "{{ bin_dir }}/kubectl exec {{ heketi_pod_name }} -- heketi-cli --user admin --secret {{ heketi_admin_key }} topology info --json"
|
2018-07-05 08:14:36 +08:00
|
|
|
until: "heketi_topology.stdout|from_json|json_query(\"clusters[*].nodes[*].devices[?state=='online'].id\")|flatten|length == groups['heketi-node']|length"
|
|
|
|
retries: 60
|
|
|
|
delay: 5
|