gantsign.helm
Ansible Role: Helm
This role helps install Helm, a package manager for Kubernetes.
Requirements
Ansible Core version 2.12 or higher
Compatible Linux Distributions:
Debian Family:
- Debian:
- Buster (10)
- Bullseye (11)
- Ubuntu:
- Bionic (18.04)
- Focal (20.04)
- Debian:
RedHat Family:
- Rocky Linux:
- 8
- Fedora:
- 35
- Rocky Linux:
SUSE Family:
- openSUSE:
- 15.5
- openSUSE:
Note: Other versions might work but are not tested.
Role Variables
You can change the following variables to customize the role (default values are given):
# Helm version to install
helm_version: '3.12.2'
# CPU architecture for the Helm executable
helm_architecture: 'amd64'
# Where to download Helm from
helm_mirror: 'https://get.helm.sh'
# Directory for Helm installation
helm_install_dir: '/usr/local/share/helm'
# Directory to store downloaded Helm files
helm_download_dir: "{{ x_ansible_download_dir | default(ansible_env.HOME + '/.ansible/tmp/downloads') }}"
Example Playbook
- hosts: servers
roles:
- role: gantsign.helm
Tab Completion for Zsh
Using Ansible
For Zsh tab completion, use the gantsign.antigen role (it needs to be set up for each user):
- hosts: servers
roles:
- role: gantsign.helm
- role: gantsign.antigen
users:
- username: example
antigen_libraries:
- name: oh-my-zsh
antigen_bundles:
- name: helm # Oh My Zsh Helm plugin
Using Antigen
If you want to use Antigen directly, add this to your Antigen config:
antigen use oh-my-zsh
antigen bundle helm
Manual Configuration
To manually set up Zsh, add this to your .zshrc
file:
eval "$(helm completion zsh)"
More Roles from GantSign
You can explore more roles from GantSign on Ansible Galaxy.
Development & Testing
This project uses these tools:
- Molecule for testing scenarios
- Testinfra for testing remote changes
- pytest as the testing framework
- Tox for managing Python environments for linting and testing
- pip-tools to handle dependencies
A Visual Studio Code Dev Container is available for developing and testing this role.
License
MIT
Author Information
John Freeman
GantSign Ltd. Company No. 06109112 (registered in England)
Ansible role for downloading and installing Helm the package manager for Kubernetes.
ansible-galaxy install gantsign.helm