Skip to main content

A Helm automation package

Project description

Helm Python

This is a Helm 3 wrapper in python. Use it for your Iac scripts.

use

  1. add helm_python in your requirements.txt
  2. import Helm class
import Helm
  1. init Helm class
helm = Helm()

optionnal:

  • debug : if True, only display command (default: False)

This init function check if Helm is installed in PATH and if Helm version is 3 or higher

helm upgrade

helm.upgrade(
    name="my-nginx", 
    path="stable/nginx"
)

is equivalent to :

helm upgrade -i my-nginx stable/nginx

where :

  • "name" is the name of helm installation
  • "path" is the Helm package localisation (for examples: "stable/prometheus-operator" or "../myfolder/mychart")

Optionnal :

  • namespace: namespace for installation
  • value_file_path: path to your values.yaml
  • sets (array) : list of overwrite values
  • wait : False if Helm dosn't have to wait the running status (default: True)

example for sets use :

tst_set = [
    {
        'name': 'image.tag',
        'value': '2.0.0'
    },
    {
        'name': 'grafana."grafana\.ini"."auth\.google"',
        'value': 'SECRET'
    },
    {
        'name': 'alertmanager.config.receivers[0].slack_configs[0].api_url',
        'value': 'ANOTHER_SECRET'
    }
]

develop

github

You can clone project on Github : github.com/slavayssiere/helm_python

prerequisite

please install :

sudo python -m pip install --upgrade pip setuptools wheel
sudo python -m pip install tqdm
sudo python -m pip install --user --upgrade twine

to deploy to PyPi:

python setup.py bdist_wheel
python -m twine upload dist/*

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

helm_python-0.1.2-py3-none-any.whl (3.0 kB view hashes)

Uploaded Python 3

helm_python-0.1.2-py2.py3-none-any.whl (3.1 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page