pass

Ansible Роль: pass

Роль gotmax23.pass Репозиторий на Github Репозиторий на SourceHut Лицензия MIT Открытые проблемы на Github Открытые PR на Github Версия роли Коммиты с последней версии Качество роли Galaxy Скачивания роли Galaxy Статус рабочего процесса Molecule на Github Actions Статус рабочего процесса Galaxy на Github Actions

Ansible роль, которая устанавливает password-store (pass), стандартный менеджер паролей Unix.

Предупреждение о бета-версии

Эта роль в настоящее время находится в бета-версии и не предназначена для использования в производственной среде. Возможны изменения, нарушающие обратную совместимость между выпусками, поэтому обязательно прочитайте примечания к релизу.

Требования

Если вы используете Enterprise Linux (CentOS, Rocky Linux, AlmaLinux, RHEL и т.д.), вам нужно установить репозиторий EPEL. Вы можете использовать robertdebock.epel для этого. См. пример плейбука для полного примера.

Эта роль зависит от некоторых коллекций, которые не включены в ansible-core.

Плейбук этой роли требует другой роли для подготовки целевой системы.

Чтобы установить необходимые зависимости этой роли, создайте файл requirements.yml со следующим содержимым:

---
roles:
  - name: robertdebock.epel
collections:
  - name: community.general

Затем, если вы используете ansible-base/ansible-core 2.10 или позже, выполните эту команду.

ansible-galaxy install -r requirements.yml

Если вы все еще используете Ansible 2.9, выполните вместо этого эти команды.

ansible-galaxy collection install -r requirements.yml
ansible-galaxy role install -r requirements.yml

Переменные роли

Доступные методы установки

Эта роль позволяет вам выбирать, из какого источника устанавливать Pass. Вы можете переопределить метод установки по умолчанию, установив pass_install_method в одно из значений, указанных ниже.

pass_install_method=distro_package

Описание: Устанавливает Pass из репозиториев дистрибутива. Эта версия может быть устаревшей.

Поддерживаемые дистрибутивы: Все дистрибутивы, поддерживаемые этой ролью.

По умолчанию: Да

pass_install_method=source

Описание: Устанавливает Pass из исходных кодов.

Поддерживаемые дистрибутивы: Все дистрибутивы, поддерживаемые этой ролью.

По умолчанию: Нет


Вот переменные этой роли и их значения по умолчанию, установленные в defaults/main.yml. При желании вы можете изменить их, чтобы настроить поведение этой роли.

---
# файл по умолчанию для pass
# Пожалуйста, смотрите раздел `Доступные методы установки`
pass_install_method: distro_package

# Опции:
# - `present` гарантирует, что pass установлен
# - `absent` гарантирует, что pass не установлен. Это не удаляет
# зависимости, которые были установлены, когда `pass_install_method=source`, чтобы избежать
# удаления пакетов, которые вы установили до запуска этой роли.
pass_state: "present"

# Pass может копировать пароли в буфер обмена вашей системы с помощью опции `-c`
# команды `pass show`. По умолчанию эта роль устанавливает `xclip`, помощник для буфера обмена для Xorg. 
# Если вы используете Wayland, измените это значение на
# `wl-clipboard`. Если вы хотите установить и `xclip`, и `wl-clipboard`,
# измените это значение на `both`.
pass_clipboard_helper: xclip

##########
# Эти переменные применяются только при `pass_install_method=source`.

# Куда загружать и извлекать исходный архив Pass.
pass_download_path: /opt/pass

# Какую версию Pass установить.
# При установке значения latest, эта роль определит последнюю версию
# и установит ее.
pass_version: latest
# pass_version: 1.7.4

# Параметры для передачи в make. Пожалуйста, смотрите [инструкции по установке][1] и
# [Makefile][2] в репозитории Pass для всех доступных параметров.
pass_make_params:
  # Вы можете удалить это значение, чтобы установить Pass в стандартное место, /usr/bin.
  # Тем не менее, я рекомендую оставить значение по умолчанию этой роли, которое соответствует Стандарту
  # Иерархии Файловой Системы[3] и избегает конфликта с системным менеджером пакетов.
  PREFIX: /usr/local  # Устанавливаем pass в /usr/local/bin

[1]: https://git.zx2c4.com/password-store/tree/INSTALL

[2]: https://git.zx2c4.com/password-store/tree/Makefile

[3]: https://refspecs.linuxfoundation.org/fhs.shtml

Пример плейбука

---
- name: Установить Pass
  hosts: all
  become: true

  tasks:
    - name: Обновить кеш apt
      when: ansible_pkg_mgr == "apt"
      ansible.builtin.apt:
        update_cache: true
        cache_valid_time: 3600

    - name: Установить EPEL репозиторий (будет выполняться только на EL-дистрибутивах)
      ansible.builtin.include_role:
        name: robertdebock.epel

    - name: Установить Pass
      ansible.builtin.include_role:
        name: "gotmax23.pass"

Совместимость

Эта роль тестируется с использованием последней версии ansible-core и последней версии коллекций из Ansible Galaxy. Это единственная версия Ansible, которую эта роль официально поддерживает. Поддержка для других версий предоставляется на основе лучшего усилия.

Эта роль совместима со следующими дистрибутивами:

дистрибутив версии
Archlinux любой
Debian buster, bullseye, bookworm
EL 8
Fedora 34, 35, 36
opensuse 15.3, tumbleweed
Ubuntu bionic, focal

Лицензия

MIT

Автор

Максвелл Г (@gotmax23)

О проекте

Ansible role that installs password-store (pass), the standard Unix password manager.

Установить
ansible-galaxy install gotmax23/ansible-role-pass
Лицензия
mit
Загрузки
103
Владелец
@gotmax:matrix.org | Fedora developer. Ansible Community Steering Committee member. Pythonista. | See my sr.ht profile for my current code.