hashicorp

Ansible роль hashicorp

Установка продуктов HashiCorp с помощью пакетов.

GitHub GitLab Загрузки Версия
github gitlab downloads Version

Пример Playbook

Этот пример взят из molecule/default/converge.yml и тестируется при каждом пуше, запросе на слияние и релизе.

---
- name: Converge
  hosts: all
  become: true
  gather_facts: true

  roles:
    - role: robertdebock.hashicorp
      hashicorp_products:
        - name: consul
          version: "1.11.3"
    - role: robertdebock.hashicorp
      hashicorp_installation_method: manual
      hashicorp_products:
        - name: vault
          version: "1.9.0"
          type: ent

Машину нужно подготовить. В CI это делается с помощью molecule/default/prepare.yml:

---
- name: Prepare
  hosts: all
  become: true
  gather_facts: false

  roles:
    - role: robertdebock.bootstrap
    - role: robertdebock.core_dependencies

Вы также можете посмотреть полное объяснение и пример того, как использовать эти роли.

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

Значения по умолчанию для переменных установлены в defaults/main.yml:

---
# файл значений по умолчанию для hashicorp

# Вы можете выбрать метод установки продуктов hashicorp. Выбирайте между 'package' или
# 'manual'. 'manual' означает, что эта роль будет загружать из
# "https://releases.hashicorp.com/vault/".
hashicorp_installation_method: package

# Вы можете установить продукты hashicorp, используя этот список.
# hashicorp_products:
#   - name: consul
#   - name: consul-template
#   - name: nomad
#   - name: packer
#   - name: terraform
#   - name: vagrant
#   - name: vault

# Если вы используете 'manual' в качестве метода установки hashicorp, вы должны
# указать версию для установки.
# hashicorp_products:
#   - name: vault
#     version: "1.10.4"

# Для 'vault' вы можете выбрать, какой тип хотите установить, либо:
# 'oss' (по умолчанию), 'ent' или 'hsm'.
# hashicorp_products:
#   - name: vault
#     type: oss

# Куда установить программное обеспечение.
hashicorp_destination: /usr/bin

# Владелец/группа/режим для установленного бинарного файла.
hashicorp_group: root
hashicorp_owner: root
hashicorp_mode: "0755"

Требования

Состояние используемых ролей

Для подготовки системы используются следующие роли. Вы можете подготовить свою систему другим способом.

Требование GitHub GitLab
robertdebock.bootstrap Build Status GitHub Build Status GitLab
robertdebock.core_dependencies Build Status GitHub Build Status GitLab

Контекст

Эта роль является частью многих совместимых ролей. Ознакомьтесь с документацией этих ролей для получения дополнительной информации.

Вот обзор связанных ролей: dependencies

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

Эта роль была протестирована на следующих образах контейнеров:

контейнер теги
Amazon Candidate
EL 9
Debian bullseye
Fedora 37, 38
Ubuntu all

Минимальная версия Ansible, необходимая для работы, - 2.12. Тесты были проведены на:

  • предыдущей версии.
  • текущей версии.
  • версии разработки.

Если вы обнаружите проблемы, пожалуйста, зарегистрируйте их в GitHub.

Лицензия

Apache-2.0.

Информация об авторе

robertdebock

Пожалуйста, рассмотрите возможность поддержать меня.

О проекте

Install HashiCorp products using packages.

Установить
ansible-galaxy install robertdebock/ansible-role-hashicorp
Лицензия
apache-2.0
Загрузки
174633
Владелец
I know my way around (Linux) infrastructure, have a passion for automation, Docker, Ansible, Molecule and ci/cd.