66 lines
2.5 KiB
YAML
66 lines
2.5 KiB
YAML
---
|
|
- include_vars: kube_versions.yml
|
|
|
|
- name: downloading...
|
|
debug:
|
|
msg: "{{ download.url }}"
|
|
when: "{{ download.enabled|bool and not download.container|bool }}"
|
|
|
|
- name: Create dest directories
|
|
file: path={{local_release_dir}}/{{download.dest|dirname}} state=directory recurse=yes
|
|
when: "{{ download.enabled|bool and not download.container|bool }}"
|
|
run_once: "{{ download_run_once|bool }}"
|
|
|
|
- name: Download items
|
|
get_url:
|
|
url: "{{download.url}}"
|
|
dest: "{{local_release_dir}}/{{download.dest}}"
|
|
sha256sum: "{{download.sha256 | default(omit)}}"
|
|
owner: "{{ download.owner|default(omit) }}"
|
|
mode: "{{ download.mode|default(omit) }}"
|
|
register: get_url_result
|
|
until: "'OK' in get_url_result.msg or 'file already exists' in get_url_result.msg"
|
|
retries: 4
|
|
delay: "{{ 20 | random + 3 }}"
|
|
when: "{{ download.enabled|bool and not download.container|bool }}"
|
|
run_once: "{{ download_run_once|bool }}"
|
|
|
|
- name: Extract archives
|
|
unarchive:
|
|
src: "{{ local_release_dir }}/{{download.dest}}"
|
|
dest: "{{ local_release_dir }}/{{download.dest|dirname}}"
|
|
owner: "{{ download.owner|default(omit) }}"
|
|
mode: "{{ download.mode|default(omit) }}"
|
|
copy: no
|
|
when: "{{ download.enabled|bool and not download.container|bool and download.unarchive is defined and download.unarchive == True }}"
|
|
run_once: "{{ download_run_once|bool }}"
|
|
|
|
- name: Fix permissions
|
|
file:
|
|
state: file
|
|
path: "{{local_release_dir}}/{{download.dest}}"
|
|
owner: "{{ download.owner|default(omit) }}"
|
|
mode: "{{ download.mode|default(omit) }}"
|
|
when: "{{ download.enabled|bool and not download.container|bool and (download.unarchive is not defined or download.unarchive == False) }}"
|
|
run_once: "{{ download_run_once|bool }}"
|
|
|
|
- name: pulling...
|
|
debug:
|
|
msg: "{{ download.repo }}:{{ download.tag }}"
|
|
when: "{{ download.enabled|bool and download.container|bool }}"
|
|
|
|
- name: Create dest directory for container images to be saved
|
|
file: path="{{local_release_dir}}/containers" state=directory recurse=yes
|
|
when: "{{ download.enabled|bool and download.container|bool }}"
|
|
run_once: "{{ download_run_once|bool }}"
|
|
|
|
#NOTE(bogdando) this brings no docker-py deps for nodes
|
|
- name: Download containers
|
|
command: "/usr/bin/docker pull {{ download.repo }}:{{ download.tag }}"
|
|
register: pull_task_result
|
|
until: pull_task_result.rc == 0
|
|
retries: 4
|
|
delay: "{{ 20 | random + 3 }}"
|
|
when: "{{ download.enabled|bool and download.container|bool }}"
|
|
run_once: "{{ download_run_once|bool }}"
|