diff options
| author | zhubingbing <1392607554@qq.com> | 2016-09-20 07:13:45 +0000 |
|---|---|---|
| committer | zhubingbing <1392607554@qq.com> | 2016-09-22 04:07:09 +0000 |
| commit | f13b267c880ea126879db81f36cf0f53e252502a (patch) | |
| tree | ed0f0b2a4918f3065ecef9eab0275f7d106e2b48 | |
| parent | af9ea973e81b3376ae7e434e7724b2957786783b (diff) | |
| download | kolla-f13b267c880ea126879db81f36cf0f53e252502a.tar.gz kolla-f13b267c880ea126879db81f36cf0f53e252502a.zip | |
add etcd reconfigure content and do_reconfigure file
Closes-bug: #1624881
Change-Id: I1901089b09a7c0e519243f9f6399566a5f5d0d31
| -rw-r--r-- | ansible/roles/etcd/tasks/do_reconfigure.yml | 64 | ||||
| -rw-r--r-- | ansible/roles/etcd/tasks/reconfigure.yml | 2 |
2 files changed, 66 insertions, 0 deletions
diff --git a/ansible/roles/etcd/tasks/do_reconfigure.yml b/ansible/roles/etcd/tasks/do_reconfigure.yml new file mode 100644 index 000000000..6eece782d --- /dev/null +++ b/ansible/roles/etcd/tasks/do_reconfigure.yml @@ -0,0 +1,64 @@ +--- +- name: Ensuring the containers up + kolla_docker: + name: "{{ item.name }}" + action: "get_container_state" + register: container_state + failed_when: container_state.Running == false + when: inventory_hostname in groups[item.group] + with_items: + - { name: etcd, group: etcd } + +- include: config.yml + +- name: Check the configs + command: docker exec {{ item.name }} /usr/local/bin/kolla_set_configs --check + changed_when: false + failed_when: false + register: check_results + when: inventory_hostname in groups[item.group] + with_items: + - { name: etcd, group: etcd } + +# NOTE(jeffrey4l): when config_strategy == 'COPY_ALWAYS' +# and container env['KOLLA_CONFIG_STRATEGY'] == 'COPY_ONCE', +# just remove the container and start again +- name: Containers config strategy + kolla_docker: + name: "{{ item.name }}" + action: "get_container_env" + register: container_envs + when: inventory_hostname in groups[item.group] + with_items: + - { name: etcd, group: etcd } + +- name: Remove the containers + kolla_docker: + name: "{{ item[0]['name'] }}" + action: "remove_container" + register: remove_containers + when: + - inventory_hostname in groups[item[0]['group']] + - config_strategy == "COPY_ONCE" or item[1]['KOLLA_CONFIG_STRATEGY'] == 'COPY_ONCE' + - item[2]['rc'] == 1 + with_together: + - [{ name: etcd, group: etcd }] + - "{{ container_envs.results }}" + - "{{ check_results.results }}" + +- include: start.yml + when: remove_containers.changed + +- name: Restart containers + kolla_docker: + name: "{{ item[0]['name'] }}" + action: "restart_container" + when: + - inventory_hostname in groups[item[0]['group']] + - config_strategy == 'COPY_ALWAYS' + - item[1]['KOLLA_CONFIG_STRATEGY'] != 'COPY_ONCE' + - item[2]['rc'] == 1 + with_together: + - [{ name: etcd, group: etcd }] + - "{{ container_envs.results }}" + - "{{ check_results.results }}" diff --git a/ansible/roles/etcd/tasks/reconfigure.yml b/ansible/roles/etcd/tasks/reconfigure.yml index ed97d539c..c66bdb1bc 100644 --- a/ansible/roles/etcd/tasks/reconfigure.yml +++ b/ansible/roles/etcd/tasks/reconfigure.yml @@ -1 +1,3 @@ --- +- include: do_reconfigure.yml + when: inventory_hostname in groups['etcd'] |
