78 lines
2.4 KiB
YAML
78 lines
2.4 KiB
YAML
# vim: set filetype=yaml.ansible :
|
|
---
|
|
- name: Set hashicorp flag
|
|
ansible.builtin.set_fact:
|
|
hashicorp: true
|
|
|
|
- name: RedHat repository
|
|
when:
|
|
- ansible_os_family == 'RedHat'
|
|
block:
|
|
- name: Enable hashicorp repo for fedora >=41
|
|
become: true
|
|
when:
|
|
- ansible_distribution == 'Fedora'
|
|
- ansible_distribution_major_version|int >= 41
|
|
ansible.builtin.command:
|
|
creates: /etc/yum.repos.d/hashicorp.repo
|
|
cmd: "dnf config-manager addrepo --from-repofile={{ pkgconfig.hashicorp.Linux.Fedora.repo }}"
|
|
|
|
- name: Enable hashicorp repo for fedora <41
|
|
become: true
|
|
when:
|
|
- ansible_distribution == 'Fedora'
|
|
- ansible_distribution_major_version|int < 41
|
|
ansible.builtin.command:
|
|
creates: /etc/yum.repos.d/hashicorp.repo
|
|
cmd: "dnf config-manager --add-repo {{ pkgconfig.hashicorp.Linux.Fedora.repo }}"
|
|
|
|
- name: Enable hashicorp repo for RHEL like distribution
|
|
become: true
|
|
when:
|
|
- ansible_distribution != 'Fedora'
|
|
ansible.builtin.command:
|
|
creates: /etc/yum.repos.d/hashicorp.repo
|
|
cmd: "dnf config-manager --add-repo {{ pkgconfig.hashicorp.Linux.RedHat.repo }}"
|
|
|
|
- name: Debian based repository
|
|
when:
|
|
- ansible_os_family == 'Debian'
|
|
block:
|
|
- name: Create temporary directory
|
|
ansible.builtin.tempfile:
|
|
state: directory
|
|
prefix: hashicorp.
|
|
register: d_hashicorp_tmp
|
|
|
|
- name: Get hashicorp archive gpg key
|
|
ansible.builtin.get_url:
|
|
dest: "{{ d_hashicorp_tmp.path }}/gpg"
|
|
url: https://apt.releases.hashicorp.com/gpg
|
|
mode: '0644'
|
|
|
|
- name: Install hashicorp archive gpg key
|
|
become: true
|
|
ansible.builtin.command:
|
|
creates: /usr/share/keyrings/hashicorp-archive-keyring.gpg
|
|
cmd:
|
|
- gpg
|
|
- --dearmor
|
|
- -o
|
|
- /usr/share/keyrings/hashicorp-archive-keyring.gpg
|
|
- "{{ d_hashicorp_tmp.path }}/gpg"
|
|
|
|
- name: Enable hasicorp repo for debian
|
|
ansible.builtin.apt_repository:
|
|
repo: "{{ pkgconfig.hashicorp.Linux.Debian.repo }}"
|
|
state: present
|
|
update_cache: false
|
|
|
|
- name: MacOS specific configuration
|
|
when:
|
|
- ansible_distribution == 'MacOSX'
|
|
block:
|
|
- name: Enable hashicorp homebrew tap
|
|
when: ansible_os_family == 'Darwin'
|
|
ansible.builtin.set_fact:
|
|
brewtaps: "{{ brewtaps + ['hashicorp/tap'] }}"
|