chore!: separated galaxy deps and own collections; modified ansible script generation to use two paths for collections
REQUIRES REGENERATING ansible.cfg!
This commit is contained in:
parent
4af69c31ce
commit
888590ed9f
188 changed files with 30 additions and 30 deletions
|
@ -0,0 +1,64 @@
|
|||
---
|
||||
- name: install required packages
|
||||
become: true
|
||||
ansible.builtin.apt:
|
||||
update_cache: true
|
||||
force_apt_get: true
|
||||
cache_valid_time: 3600
|
||||
pkg:
|
||||
- curl
|
||||
- jq
|
||||
|
||||
- name: find if binary is already installed
|
||||
ansible.builtin.file:
|
||||
path: '{{ helm_binary_path }}'
|
||||
register: helm_stat
|
||||
changed_when: false
|
||||
failed_when: false
|
||||
|
||||
- name: find current installed version
|
||||
when: helm_stat.state != "absent"
|
||||
ansible.builtin.command: "{{ helm_binary_path }} version --template='{% raw %}{{.Version}}{% endraw %}'"
|
||||
changed_when: false
|
||||
register: helm_local_version_exec
|
||||
|
||||
- name: find latest available version
|
||||
connection: local
|
||||
ansible.builtin.shell: |-
|
||||
curl -sSL https://api.github.com/repos/helm/helm/releases/latest | jq -r '.tag_name'
|
||||
register: latest_helm_version_exec
|
||||
when: helm_install_version is falsy or helm_install_version == "latest"
|
||||
changed_when: false
|
||||
|
||||
- name: set helm facts
|
||||
ansible.builtin.set_fact:
|
||||
helm_latest_version_available: '{{ latest_helm_version_exec.get("stdout", "") if latest_helm_version_exec is defined }}'
|
||||
helm_local_version: '{{ helm_local_version_exec.get("stdout", "") if helm_local_version_exec is defined }}'
|
||||
helm_target_install_version: '{{ helm_install_version if helm_install_version != "latest" else latest_helm_version_exec.get("stdout", "") }}'
|
||||
|
||||
- name: install binary
|
||||
become: true
|
||||
when: helm_stat.state == "absent" or (helm_local_version != helm_target_install_version and helm_install_version is not falsy)
|
||||
block:
|
||||
- name: create temporary directory
|
||||
ansible.builtin.tempfile:
|
||||
state: directory
|
||||
register: tmp_dir
|
||||
changed_when: false
|
||||
- name: retrieve archive
|
||||
ansible.builtin.unarchive:
|
||||
remote_src: true
|
||||
src: "https://get.helm.sh/helm-{{ helm_install_version if helm_install_version is not match('^$|^latest$') else helm_latest_version_available }}-linux-amd64.tar.gz"
|
||||
dest: '{{ tmp_dir.path }}'
|
||||
- name: install binary
|
||||
ansible.builtin.copy:
|
||||
remote_src: true
|
||||
src: '{{ tmp_dir.path }}/linux-amd64/helm'
|
||||
dest: '{{ helm_binary_path }}'
|
||||
owner: root
|
||||
group: root
|
||||
mode: '0755'
|
||||
- name: cleanup
|
||||
ansible.builtin.file:
|
||||
path: '{{ tmp_dir.path }}'
|
||||
state: absent
|
Loading…
Add table
Add a link
Reference in a new issue