2022-08-05 14:03:38 +02:00
|
|
|
---
|
|
|
|
# Copyright (c) Ansible Project
|
|
|
|
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
|
|
|
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
|
2020-03-09 10:11:07 +01:00
|
|
|
- name: Include distribution specific variables
|
|
|
|
include_vars: "{{ lookup('first_found', params) }}"
|
|
|
|
vars:
|
|
|
|
params:
|
|
|
|
files:
|
|
|
|
- "{{ ansible_facts.distribution }}.yml"
|
|
|
|
- "{{ ansible_facts.os_family }}.yml"
|
|
|
|
- default.yml
|
|
|
|
paths:
|
|
|
|
- "{{ role_path }}/vars"
|
|
|
|
|
|
|
|
- name: Install package
|
|
|
|
action: "{{ ansible_facts.pkg_mgr }}"
|
|
|
|
args:
|
|
|
|
name: "{{ passwordstore_packages }}"
|
|
|
|
state: present
|
2020-03-30 11:06:48 +02:00
|
|
|
when: ansible_facts.pkg_mgr in ['apt', 'dnf', 'yum', 'pkgng', 'community.general.pkgng']
|
2020-03-09 10:11:07 +01:00
|
|
|
|
|
|
|
- block:
|
|
|
|
# OpenSUSE Leap>=15.0 don't include password-store in main repo
|
|
|
|
- name: SUSE | Add security:privacy repo
|
|
|
|
template:
|
|
|
|
src: security-privacy.repo.j2
|
|
|
|
dest: /etc/zypp/repos.d/security:privacy.repo
|
|
|
|
|
|
|
|
- name: SUSE | Install package
|
|
|
|
package:
|
|
|
|
name: password-store
|
|
|
|
state: present
|
2023-02-16 06:42:27 +01:00
|
|
|
update_cache: true
|
|
|
|
disable_gpg_check: true
|
2020-03-30 11:06:48 +02:00
|
|
|
when: ansible_facts.pkg_mgr in ['zypper', 'community.general.zypper']
|
2020-03-09 10:11:07 +01:00
|
|
|
|
2022-07-31 22:13:27 +02:00
|
|
|
# See https://github.com/gopasspw/gopass/issues/1849#issuecomment-802789285
|
|
|
|
- name: Install gopass on Debian
|
|
|
|
when: ansible_facts.os_family == 'Debian'
|
2023-02-16 06:42:27 +01:00
|
|
|
become: true
|
2022-07-31 22:13:27 +02:00
|
|
|
block:
|
|
|
|
- name: Fetch gopass repo keyring
|
|
|
|
ansible.builtin.get_url:
|
|
|
|
url: https://packages.gopass.pw/repos/gopass/gopass-archive-keyring.gpg
|
|
|
|
dest: /usr/share/keyrings/gopass-archive-keyring.gpg
|
|
|
|
- name: Add gopass repo
|
|
|
|
ansible.builtin.apt_repository:
|
|
|
|
repo: "deb [arch=amd64,arm64,armhf \
|
|
|
|
signed-by=/usr/share/keyrings/gopass-archive-keyring.gpg] \
|
|
|
|
https://packages.gopass.pw/repos/gopass stable main"
|
|
|
|
state: present
|
|
|
|
- name: Update apt-cache and install gopass package
|
|
|
|
ansible.builtin.apt:
|
|
|
|
name: gopass
|
2023-02-16 06:42:27 +01:00
|
|
|
update_cache: true
|
2022-07-31 22:13:27 +02:00
|
|
|
|
2020-03-09 10:11:07 +01:00
|
|
|
- name: Install on macOS
|
|
|
|
when: ansible_facts.distribution == 'MacOSX'
|
|
|
|
block:
|
|
|
|
- name: MACOS | Find brew binary
|
|
|
|
command: which brew
|
|
|
|
register: brew_which
|
|
|
|
|
|
|
|
- name: MACOS | Get owner of brew binary
|
|
|
|
stat:
|
|
|
|
path: "{{ brew_which.stdout }}"
|
|
|
|
register: brew_stat
|
|
|
|
|
|
|
|
- name: MACOS | Install package
|
|
|
|
homebrew:
|
|
|
|
name:
|
|
|
|
- gnupg2
|
|
|
|
- pass
|
2022-07-31 22:13:27 +02:00
|
|
|
- gopass
|
2020-03-09 10:11:07 +01:00
|
|
|
state: present
|
2023-02-16 06:42:27 +01:00
|
|
|
update_homebrew: false
|
|
|
|
become: true
|
2020-03-09 10:11:07 +01:00
|
|
|
become_user: "{{ brew_stat.stat.pw_name }}"
|
|
|
|
# Newer versions of brew want to compile a package which takes a long time. Do not upgrade homebrew until a
|
|
|
|
# proper solution can be found
|
|
|
|
environment:
|
2023-03-07 07:10:10 +01:00
|
|
|
HOMEBREW_NO_AUTO_UPDATE: "True"
|