A handy helm3 deployment tool
Project description
Kuploy - a handy helm3 deployment tool
Kuploy is a wrapper around helm that adds a lot of convenient features. It allows to store everything that is needed to deploy to kubernetes in one place.
Features
- store chart names and versions along with values into yaml files and deploy from this files
- Verify that the correct kubeconfig is active
- Auto-Select a kube config for a deployment
- Simple and secure secret management
- Install docker secrets before installing a chart
- Apply k8s yamls before/after a chart is installed
- Use local charts and charts from repositories
- Automatically add and refresh chart repositories
- Point to the correct location in a chart in case of an error
Installation
pip install kuploy
Usage
Deploy all charts from a yaml:
kuploy mystack.yaml
Secret handling
Kuploy creates an AES master key that is stored as secret in kubernetes. Whenever a secret is encrypted or decrypted, the master key is queried from kubernetes. That means that every user with access to a particular kubernetes context is able to encrypt and decrypt secrets.
Initialize the master key
Create an AES masterkey to encrypt secrets:
kuploy secrets --context testcluster --init-masterkey
This allows to create a new master key or to restore a previously generated one. A new master key should be backed up on a secure location (e.g. a password database).
Encrypt a secret
kuploy secrets --context testcluster --encrypt
Queries for a secret and encrypts it. Instead of a secret, a number can be entered to create a random secret and encrypt it.
A secret looks like <SECRET>+GO41xBf2X7dHtjTk+OTQ7g=
. It can be used as value in a deployment yaml and will be decrypted during deployment.
Yaml format
context: testcluster
charts:
- name: victoria-metrics-k8s-stack
namespace: monitoring
chart:
repo: https://victoriametrics.github.io/helm-charts/
name: victoria-metrics-k8s-stack
version: 0.6.1
values:
grafana:
enabled: false
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file kuploy-0.3.0.tar.gz
.
File metadata
- Download URL: kuploy-0.3.0.tar.gz
- Upload date:
- Size: 9.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.1.dev0+g94f810c.d20240510 CPython/3.12.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9a3daffd0b150b15f274f21dc9be14dfc6e1d3cfcbae64ce4d348814635739b3 |
|
MD5 | b45e0c35affb28cb8fc7936f7391fd1b |
|
BLAKE2b-256 | 56da4dce22eaec384fc6a6fefccfa3e74c55431110fe75e43ad68ac8745a658c |
File details
Details for the file kuploy-0.3.0-py2.py3-none-any.whl
.
File metadata
- Download URL: kuploy-0.3.0-py2.py3-none-any.whl
- Upload date:
- Size: 9.0 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.1.dev0+g94f810c.d20240510 CPython/3.12.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ce08296ade8392cef8c2fe380f0c4641e02fffd4d06ee97bc39f8191ff0b4b03 |
|
MD5 | 78c58d64459bfda890d353cf297206c3 |
|
BLAKE2b-256 | ed30f952f09b40dc3605939b2269044966a6c3fb39e803357314d2fd10f8e8ce |