aboutsummaryrefslogtreecommitdiff
path: root/ansible/roles/etcd/tasks/bootstrap_services.yml
blob: 3630a38d10c5931fc0009f4fe33aa84ee52fe984 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
---
- name: Add new member to etcd cluster
  vars:
    service_name: "etcd"
    service: "{{ etcd_services[service_name] }}"
  become: true
  command: >-
    {{ kolla_container_engine }} exec {{ service.container_name }}
    etcdctl member add {{ ansible_facts.hostname }}
    --peer-urls={{ etcd_protocol }}://{{ 'api' | kolla_address(inventory_hostname) | put_address_in_context('url') }}:{{ etcd_peer_port }}
  delegate_to: "{{ etcd_cluster_leader | default(groups[service.group][0]) }}"

- name: Bootstrapping etcd containers
  vars:
    service_name: "etcd"
    service: "{{ etcd_services[service_name] }}"
  become: true
  kolla_container:
    action: "start_container"
    common_options: "{{ docker_common_options }}"
    environment: "{{ etcd_base_environment | combine(etcd_bootstrap_service_environment) }}"
    image: "{{ service.image }}"
    name: "{{ service.container_name }}"
    volumes: "{{ service.volumes }}"
    dimensions: "{{ service.dimensions }}"

- name: Wait for etcd service port liveness
  wait_for:
    host: "{{ api_interface_address }}"
    port: "{{ etcd_client_port }}"
    connect_timeout: 1
    timeout: 60
  register: check_etcd_client_port
  until: check_etcd_client_port is success
  retries: 10
  delay: 6