---
# Plan A: no docker-py deps
- name: Install | Copy etcdctl binary from docker container
  command: sh -c "{{ docker_bin_dir }}/docker rm -f etcdctl-binarycopy;
           {{ docker_bin_dir }}/docker create --name etcdctl-binarycopy {{ etcd_image_repo }}:{{ etcd_image_tag }} &&
           {{ docker_bin_dir }}/docker cp etcdctl-binarycopy:{{ etcd_container_bin_dir }}etcdctl {{ bin_dir }}/etcdctl &&
           {{ docker_bin_dir }}/docker rm -f etcdctl-binarycopy"
  when: etcd_deployment_type == "docker"
  register: etcd_task_result
  until: etcd_task_result.rc == 0
  retries: 4
  delay: "{{ retry_stagger | random + 3 }}"
  changed_when: false

# Plan B: looks nicer, but requires docker-py on all hosts:
# - name: Install | Set up etcd-binarycopy container
#   docker:
#     name: etcd-binarycopy
#     state: present
#     image: "{{ etcd_image_repo }}:{{ etcd_image_tag }}"
#   when: etcd_deployment_type == "docker"
#
# - name: Install | Copy etcdctl from etcd-binarycopy container
#   command: /usr/bin/docker cp "etcd-binarycopy:{{ etcd_container_bin_dir }}etcdctl" "{{ bin_dir }}/etcdctl"
#   when: etcd_deployment_type == "docker"
#
# - name: Install | Clean up etcd-binarycopy container
#   docker:
#     name: etcd-binarycopy
#     state: absent
#     image: "{{ etcd_image_repo }}:{{ etcd_image_tag }}"
#   when: etcd_deployment_type == "docker"
