--- - name: Create flannel release directory local_action: file 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 local_action: shell 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 src={{ local_release_dir }}/flannel/flannel-{{ flannel_version }}/flanneld dest={{ local_release_dir }}/flannel/bin when: dl_flannel|changed - name: Delete unused flannel files local_action: file path={{ local_release_dir }}/flannel/flannel-{{ flannel_version }} state=absent when: dl_flannel|changed