Rework download role
This commit is contained in:
parent
15cd1bfc56
commit
e3cdb3574a
2 changed files with 52 additions and 82 deletions
|
@ -1,15 +1,42 @@
|
||||||
---
|
---
|
||||||
etcd_version: v2.2.2
|
local_release_dir: /tmp
|
||||||
|
|
||||||
flannel_version: 0.5.5
|
flannel_version: 0.5.5
|
||||||
|
|
||||||
kube_version: v1.1.3
|
|
||||||
kubectl_checksum: "01b9bea18061a27b1cf30e34fd8ab45cfc096c9a9d57d0ed21072abb40dd3d1d"
|
|
||||||
kubelet_checksum: "62191c66f2d670dd52ddf1d88ef81048977abf1ffaa95ee6333299447eb6a482"
|
|
||||||
kube_download_url: "https://storage.googleapis.com/kubernetes-release/release/{{ kube_version }}/bin/linux/amd64"
|
|
||||||
|
|
||||||
calico_version: v0.13.0
|
calico_version: v0.13.0
|
||||||
calico_plugin_version: v0.7.0
|
calico_plugin_version: v0.7.0
|
||||||
|
kube_version: v1.1.3
|
||||||
|
|
||||||
|
kubectl_checksum: "01b9bea18061a27b1cf30e34fd8ab45cfc096c9a9d57d0ed21072abb40dd3d1d"
|
||||||
|
kubelet_checksum: "62191c66f2d670dd52ddf1d88ef81048977abf1ffaa95ee6333299447eb6a482"
|
||||||
|
|
||||||
|
kube_download_url: "https://storage.googleapis.com/kubernetes-release/release/{{ kube_version }}/bin/linux/amd64"
|
||||||
|
|
||||||
|
flannel_download_url: "https://github.com/coreos/flannel/releases/download/v{{ flannel_version }}/flannel-{{ flannel_version }}-linux-amd64.tar.gz"
|
||||||
|
|
||||||
|
calico_download_url: "https://github.com/Metaswitch/calico-docker/releases/download/{{calico_version}}/calicoctl"
|
||||||
|
|
||||||
flannel_download_url: "https://github.com/coreos/flannel/releases/download"
|
|
||||||
calico_download_url: "https://github.com/Metaswitch/calico-docker/releases/download"
|
|
||||||
calico_plugin_download_url: "https://github.com/projectcalico/calico-kubernetes/releases/download/{{calico_plugin_version}}/calico_kubernetes"
|
calico_plugin_download_url: "https://github.com/projectcalico/calico-kubernetes/releases/download/{{calico_plugin_version}}/calico_kubernetes"
|
||||||
|
|
||||||
|
downloads:
|
||||||
|
- name: calico
|
||||||
|
dest: calico/bin/calicoctl
|
||||||
|
url: "{{calico_download_url}}"
|
||||||
|
|
||||||
|
- name: calico-plugin
|
||||||
|
dest: calico/bin/calico
|
||||||
|
url: "{{calico_plugin_download_url}}"
|
||||||
|
|
||||||
|
- name: flannel
|
||||||
|
dest: flannel/flannel-{{ flannel_version }}-linux-amd64.tar.gz
|
||||||
|
url: "{{flannel_download_url}}"
|
||||||
|
unarchive: yes
|
||||||
|
|
||||||
|
- name: kubernetes-kubelet
|
||||||
|
dest: kubernetes/bin/kubelet
|
||||||
|
sha256: "{{kubelet_checksum}}"
|
||||||
|
url: "{{ kube_download_url }}/kubelet"
|
||||||
|
|
||||||
|
- name: kubernetes-kubectl
|
||||||
|
dest: kubernetes/bin/kubectl
|
||||||
|
sha256: "{{kubectl_checksum}}"
|
||||||
|
url: "{{ kube_download_url }}/kubectl"
|
||||||
|
|
|
@ -1,76 +1,19 @@
|
||||||
---
|
---
|
||||||
- name: Create calico release directory
|
- name: Create dest directories
|
||||||
local_action: file
|
file: path={{local_release_dir}}/{{item.dest|dirname}} state=directory recurse=yes
|
||||||
path={{ local_release_dir }}/calico/bin
|
with_items: downloads
|
||||||
recurse=yes
|
|
||||||
state=directory
|
|
||||||
|
|
||||||
- name: Check if calicoctl has been downloaded
|
- name: Download items
|
||||||
local_action: stat
|
get_url:
|
||||||
path={{ local_release_dir }}/calico/bin/calicoctl
|
url: "{{item.url}}"
|
||||||
register: c_tar
|
dest: "{{local_release_dir}}/{{item.dest}}"
|
||||||
|
sha256sum: "{{item.sha256 | default(omit)}}"
|
||||||
|
with_items: downloads
|
||||||
|
|
||||||
# issues with get_url module and redirects, to be tested again in the near future
|
- name: Extract archives
|
||||||
- name: Download calico
|
unarchive:
|
||||||
local_action: shell
|
src: "{{ local_release_dir }}/{{item.dest}}"
|
||||||
curl -o {{ local_release_dir }}/calico/bin/calicoctl -Ls {{ calico_download_url }}/{{ calico_version }}/calicoctl
|
dest: "{{ local_release_dir }}/{{item.dest|dirname}}"
|
||||||
when: not c_tar.stat.exists
|
copy: no
|
||||||
register: dl_calico
|
when: "{{item.unarchive is defined and item.unarchive == True}}"
|
||||||
|
with_items: downloads
|
||||||
|
|
||||||
- name: Download calico-kubernetes-plugin
|
|
||||||
local_action: get_url
|
|
||||||
url="{{calico_plugin_download_url}}"
|
|
||||||
dest="{{ local_release_dir }}/calico/bin/calico"
|
|
||||||
|
|
||||||
- name: Create flannel release directory
|
|
||||||
local_action: file
|
|
||||||
path={{ local_release_dir }}/flannel
|
|
||||||
recurse=yes
|
|
||||||
state=directory
|
|
||||||
|
|
||||||
- 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
|
|
||||||
|
|
||||||
# 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
|
|
||||||
|
|
||||||
- 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
|
|
||||||
|
|
||||||
- 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
|
|
||||||
|
|
||||||
- name: Create kubernetes binary directory
|
|
||||||
local_action: file
|
|
||||||
path="{{ local_release_dir }}/kubernetes/bin"
|
|
||||||
state=directory
|
|
||||||
recurse=yes
|
|
||||||
|
|
||||||
- name: Download kubelet and kubectl
|
|
||||||
local_action: get_url
|
|
||||||
url="{{ kube_download_url }}/{{ item.name }}"
|
|
||||||
dest="{{ local_release_dir }}/kubernetes/bin"
|
|
||||||
sha256sum="{{ item.checksum }}"
|
|
||||||
with_items:
|
|
||||||
- name: kubelet
|
|
||||||
checksum: "{{ kubelet_checksum }}"
|
|
||||||
- name: kubectl
|
|
||||||
checksum: "{{ kubectl_checksum }}"
|
|
||||||
|
|
Loading…
Reference in a new issue