1234567891011121314151617181920212223 |
- ---
- - name: Check cluster health
- command: >
- etcdctl --cert-file {{ etcd_peer_cert_file }} --key-file {{ etcd_peer_key_file }} --ca-file {{ etcd_peer_ca_file }} --endpoint https://{{ etcd_peer }}:{{ etcd_client_port }} cluster-health
- register: etcd_cluster_health
- changed_when: false
- failed_when: false
- - name: Assume a member is not healthy
- set_fact:
- etcd_member_healthy: false
- - name: Get member item health status
- set_fact:
- etcd_member_healthy: true
- with_items: "{{ etcd_cluster_health.stdout_lines }}"
- when: "(etcd_peer in item) and ('is healthy' in item)"
- - name: Check the etcd cluster health
- # TODO(jchaloup): should we fail or ask user if he wants to continue? Or just wait until the cluster is healthy?
- fail:
- msg: "Etcd member {{ etcd_peer }} is not healthy"
- when: not etcd_member_healthy
|