45 lines
1.5 KiB
YAML
45 lines
1.5 KiB
YAML
---
|
|
- name: kubeseal CLI | Get latest version from GitHub
|
|
ansible.builtin.uri:
|
|
url: https://api.github.com/repos/bitnami-labs/sealed-secrets/releases/latest
|
|
return_content: true
|
|
register: _kubeseal_latest
|
|
when: not sealed_secrets_cli_version
|
|
check_mode: false
|
|
|
|
- name: kubeseal CLI | Set version fact (latest)
|
|
ansible.builtin.set_fact:
|
|
_kubeseal_version: "{{ _kubeseal_latest.json.tag_name | regex_replace('^v', '') }}"
|
|
when: not sealed_secrets_cli_version
|
|
|
|
- name: kubeseal CLI | Set version fact (pinned)
|
|
ansible.builtin.set_fact:
|
|
_kubeseal_version: "{{ sealed_secrets_cli_version | regex_replace('^v', '') }}"
|
|
when: sealed_secrets_cli_version
|
|
|
|
- name: kubeseal CLI | Check installed version
|
|
ansible.builtin.command: kubeseal --version
|
|
register: _kubeseal_installed
|
|
changed_when: false
|
|
failed_when: false
|
|
|
|
- name: kubeseal CLI | Download and unpack
|
|
ansible.builtin.unarchive:
|
|
src: "https://github.com/bitnami-labs/sealed-secrets/releases/download/v{{ _kubeseal_version }}/kubeseal-{{ _kubeseal_version }}-linux-amd64.tar.gz"
|
|
dest: /usr/local/bin
|
|
remote_src: true
|
|
include:
|
|
- kubeseal
|
|
mode: "0755"
|
|
owner: root
|
|
group: root
|
|
when: >
|
|
_kubeseal_installed.rc != 0 or
|
|
_kubeseal_version not in _kubeseal_installed.stdout
|
|
|
|
- name: kubeseal CLI | Enable bash completion
|
|
ansible.builtin.shell: /usr/local/bin/kubeseal --help > /dev/null && echo done
|
|
args:
|
|
creates: /etc/bash_completion.d/kubeseal
|
|
changed_when: false
|