gantsign.kompose
Ansible Role: Kompose
This Ansible role installs Kompose, a tool that converts Docker Compose files into Kubernetes resources.
Requirements
Ansible Core version 2.12 or newer
A Linux operating system:
Debian-based
- Debian
- Buster (10)
- Bullseye (11)
- Ubuntu
- Bionic (18.04)
- Focal (20.04)
- Debian
RedHat-based
- Rocky Linux
- Version 8
- Rocky Linux
Note: Other versions may work but have not been tested.
Role Variables
These variables control how this role works (default values are listed):
# Version of Kompose
kompose_version: '1.29.0'
# SHA256 checksum for the Kompose package
kompose_redis_sha256sum: '1167e6cc3c3aac346616f6b0232739ae438ea6a1e0aeae0b938831f96298eb55'
# Source from where to download Kompose
kompose_mirror: 'https://github.com/kubernetes/kompose/releases/download/v{{ kompose_version }}'
# Directory for downloading Kompose files
kompose_download_dir: "{{ x_ansible_download_dir | default(ansible_env.HOME + '/.ansible/tmp/downloads') }}"
Example Playbook
- hosts: servers
roles:
- role: gantsign.kompose
Tab Completion for Zsh
Using Ansible
We suggest using the gantsign.antigen role for enabling tab completion in Kompose (this needs to be set up for each user).
- hosts: servers
roles:
- role: gantsign.kompose
- role: gantsign.antigen
users:
- username: example
antigen_bundles:
- name: kompose
url: gantsign/zsh-plugins
location: kompose
Using Antigen
If you want to use Antigen directly, add this to your Antigen setup:
antigen bundle gantsign/zsh-plugins kompose
Manual configuration
To set up Zsh manually, add this to your .zshrc
file:
eval "$(kompose completion zsh)"
More Roles From GantSign
You can find additional roles from GantSign on Ansible Galaxy.
Development & Testing
This project uses various tools including:
- Molecule for testing scenarios
- Testinfra for verifying changes on remote servers
- pytest as a testing framework
- Tox for managing Python environments for checking code
- pip-tools for handling dependencies
A Visual Studio Code Dev Container is provided for development and testing.
License
MIT License
Author Information
John Freeman
GantSign Ltd.
Company No. 06109112 (registered in England)
Ansible role for downloading and installing the Kompose tool for Kubernetes.
ansible-galaxy install gantsign.kompose