From 98fe2c02b27e810b2cf901a4b551ae0076326cf1 Mon Sep 17 00:00:00 2001
From: Smaine Kahlouch <smaine.kahlouch@arkena.com>
Date: Thu, 31 Dec 2015 10:28:47 +0100
Subject: [PATCH] review local tasks

---
 inventory/inventory.example                    | 2 +-
 roles/kubernetes/preinstall/tasks/download.yml | 7 -------
 roles/kubernetes/preinstall/tasks/main.yml     | 4 ++--
 3 files changed, 3 insertions(+), 10 deletions(-)

diff --git a/inventory/inventory.example b/inventory/inventory.example
index df5d077cc..2ccbc0462 100644
--- a/inventory/inventory.example
+++ b/inventory/inventory.example
@@ -1,5 +1,5 @@
 [downloader]
-node1 ansible_ssh_host=10.99.0.26
+node1 ansible_ssh_host=10.99.0.26 ansible_connection=local
 
 [kube-master]
 node1 ansible_ssh_host=10.99.0.26
diff --git a/roles/kubernetes/preinstall/tasks/download.yml b/roles/kubernetes/preinstall/tasks/download.yml
index efc8aac76..c8749a03e 100644
--- a/roles/kubernetes/preinstall/tasks/download.yml
+++ b/roles/kubernetes/preinstall/tasks/download.yml
@@ -4,13 +4,11 @@
      path={{ local_release_dir }}/calico/bin
      recurse=yes
      state=directory
-  delegate_to: "{{ groups['kube-master'][0] }}"
 
 - name: Check if calicoctl has been downloaded
   local_action: stat
      path={{ local_release_dir }}/calico/bin/calicoctl
   register: c_tar
-  delegate_to: "{{ groups['kube-master'][0] }}"
 
 # issues with get_url module and redirects, to be tested again in the near future
 - name: Download calico
@@ -18,7 +16,6 @@
     curl -o {{ local_release_dir }}/calico/bin/calicoctl -Ls {{ calico_download_url }}/{{ calico_version }}/calicoctl
   when: not c_tar.stat.exists
   register: dl_calico
-  delegate_to: "{{ groups['kube-master'][0] }}"
 
 
 - name: Download calico-kubernetes-plugin
@@ -31,13 +28,11 @@
      path={{ local_release_dir }}/flannel
      recurse=yes
      state=directory
-  delegate_to: "{{ groups['kube-master'][0] }}"
 
 - name: Check if flannel release archive has been downloaded
   local_action: stat
      path={{ local_release_dir }}/flannel/flannel-{{ flannel_version }}-linux-amd64.tar.gz
   register: f_tar
-  delegate_to: "{{ groups['kube-master'][0] }}"
 
 # issues with get_url module and redirects, to be tested again in the near future
 - name: Download flannel
@@ -45,14 +40,12 @@
     curl -o {{ local_release_dir }}/flannel/flannel-{{ flannel_version }}-linux-amd64.tar.gz -Ls {{ flannel_download_url }}/v{{ flannel_version }}/flannel-{{ flannel_version }}-linux-amd64.tar.gz
   when: not f_tar.stat.exists
   register: dl_flannel
-  delegate_to: "{{ groups['kube-master'][0] }}"
 
 - name: Extract flannel archive
   local_action: unarchive
      src={{ local_release_dir }}/flannel/flannel-{{ flannel_version }}-linux-amd64.tar.gz
      dest={{ local_release_dir }}/flannel copy=no
   when: dl_flannel|changed
-  delegate_to: "{{ groups['kube-master'][0] }}"
 
 - name: Pick up only flannel binaries
   local_action: copy
diff --git a/roles/kubernetes/preinstall/tasks/main.yml b/roles/kubernetes/preinstall/tasks/main.yml
index 3505133bc..be017b5b6 100644
--- a/roles/kubernetes/preinstall/tasks/main.yml
+++ b/roles/kubernetes/preinstall/tasks/main.yml
@@ -1,7 +1,7 @@
 ---
 - include: download.yml
-  delegate_to: localhost
-  when: inventory_hostname == "{{ groups['kube-master'][0] }}"
+  run_once: true
+  delegate_to: "{{ groups['downloader'][0] }}"
 
 - name: "Identify init system"
   shell: >
-- 
GitLab