Skip to main content

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


Download files

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

Source Distribution

kuploy-0.3.1.tar.gz (9.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kuploy-0.3.1-py2.py3-none-any.whl (9.0 kB view details)

Uploaded Python 2Python 3

File details

Details for the file kuploy-0.3.1.tar.gz.

File metadata

  • Download URL: kuploy-0.3.1.tar.gz
  • Upload date:
  • Size: 9.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for kuploy-0.3.1.tar.gz
Algorithm Hash digest
SHA256 5083bcbd4d3b9d3e2c0d00fe4f609c8649b281d35c0c8c0c2e6228c99adc42a7
MD5 9b170924d272e0d5fbe89ffbca2d51a5
BLAKE2b-256 629913c5580c298839472474d7bbfce59715d0f78ceae4efa35561791185170f

See more details on using hashes here.

File details

Details for the file kuploy-0.3.1-py2.py3-none-any.whl.

File metadata

  • Download URL: kuploy-0.3.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 9.0 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for kuploy-0.3.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 26d085953391b051b8a7627141f63c61da9a488f68187617ef413fb6b9a9954d
MD5 f0e1cb76d229e216d9d6aa07db8f5bcd
BLAKE2b-256 ddda4daa0bc2a515bfc9719ec6b8aa5034847410fdc9b17da8487f60bcddd142

See more details on using hashes here.

Supported by

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