buluma.hashicorp

Ansible role hashicorp

This role helps you install HashiCorp products using package management.

GitHub Version Issues Pull Requests Downloads
github Version Issues PullRequests Ansible Role

Example Playbook

Below is an example from molecule/default/converge.yml that has been tested on every push, pull request, and release.

---
- name: Setup HashiCorp Products
  hosts: all
  become: true
  gather_facts: true

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

Before running this, the machine must be set up. In CI, this is done using molecule/default/prepare.yml:

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

  roles:
    - role: buluma.bootstrap
    - role: buluma.core_dependencies

For a more detailed guide, see this full explanation and example on using these roles.

Role Variables

You can find default values for the role variables in defaults/main.yml:

---
# defaults for hashicorp

# Choose how to install HashiCorp products. Options are `package` (default) or
# `manual`. Using `manual` means this role will download from
# "https://releases.hashicorp.com/vault/".
hashicorp_installation_method: package

# List of HashiCorp products to install.
# hashicorp_products:
#   - name: consul
#   - name: consul-template
#   - name: nomad
#   - name: packer
#   - name: terraform
#   - name: vagrant
#   - name: vault

# If using `manual` for installation, specify the version here.
# hashicorp_products:
#   - name: vault
#     version: "1.10.4"

# For `vault`, you can choose the type: either
# `oss` (default), `ent`, or `hsm`.
# hashicorp_products:
#   - name: vault
#     type: oss

# Destination for installing the software.
hashicorp_destination: /usr/bin

# Specify the owner, group, and permissions for the installed binary.
hashicorp_group: root
hashicorp_owner: root
hashicorp_mode: "0755"

Requirements

State of Dependencies

This role uses other roles to set up the system. You can prepare your system in other ways.

Requirement GitHub Version
buluma.bootstrap Ansible Molecule Version
buluma.core_dependencies Ansible Molecule Version

Context

This role is part of several compatible roles. Check the documentation of these roles for more details.

Here's a visual of related roles:

dependencies

Compatibility

This role has been tested with these Docker container images:

Container Tags
Amazon Candidate
EL 8
Debian bullseye
Fedora 39, 38
Ubuntu focal, bionic, jammy

The minimum required version of Ansible is 2.12, and tests have been conducted on:

  • The previous version.
  • The current version.
  • The development version.

If you encounter any issues, please report them on GitHub.

Changelog

You can find the Role History.

License

This role is licensed under the Apache-2.0.

Author Information

Created by Shadow Walker.

Informazioni sul progetto

Install HashiCorp products using packages.

Installa
ansible-galaxy install buluma.hashicorp
Licenza
apache-2.0
Download
115.7k
Proprietario
DevOps Engineer