xanmanning.helm

Ansible Role: Helm

This is an Ansible role used to install Helm.

Build Status

Requirements

This role works with Ansible version 2.7.0 or higher on the following Linux distributions:

  • Amazon Linux 2
  • CentOS 8
  • CentOS 7
  • Debian 10
  • Fedora 29
  • Fedora 30
  • Fedora 31
  • Ubuntu 18.04 LTS

Disclaimer

If you encounter any issues, please report it on GitHub. I work on this role in my free time, so I can't guarantee a quick fix.

:warning: This role only supports Helm version 3.0.0 and above.

Role Variables

Variable Description Default Value
helm_version Specify a version of Helm to use, e.g., 3.0.0. Use false for the latest version. false
helm_install_os_dependencies Allow the role to install necessary OS dependencies. false
helm_install_dir Directory where Helm will be installed. $HOME/bin
helm_projects_dir Directory to place Helm charts from Git. Use false to skip. $HOME/projects
helm_projects List of Helm charts to clone from Git. See notes below for details. NULL

Dependencies

This role does not depend on any other roles.

Example Playbook

Here is an example playbook for installing Helm for a single user:

- hosts: control_hosts
  roles:
     - { role: xanmanning.helm, helm_version: 3.0.0 }

Here is another example for installing the latest version of Helm globally:

---
- hosts: control_hosts
  become: true
  vars:
    helm_install_os_dependencies: true
    helm_install_dir: /opt/helm/bin
    helm_projects_dir: /opt/helm/projects
  roles:
    - role: xanmanning.helm

Note about helm_projects

This variable lists Git repositories to clone into the projects directory. If you leave it empty, no projects will be cloned.

Here’s an example of a project configuration:

helm_projects:
    - name: elastic-helm-charts                      # Directory name to clone
      repo: [email protected]:elastic/helm-charts       # Repository to clone from
      update_repo: true                               # Always update the local copy
      version: master                                  # Checkout this version of the repo
      force: false                                    # Don't remove existing copies
      key_file: "{{ ansible_user_dir }}/.ssh/id_rsa" # SSH key file for cloning
      recursive: true                                 # Clone submodules as well

License

BSD 3-clause

Author Information

Xan Manning

Informazioni sul progetto

Ansible Role to install Helm on a system

Installa
ansible-galaxy install xanmanning.helm
Licenza
bsd-3-clause
Download
4.4k
Proprietario
Deep in the lab...