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.4.0.tar.gz (10.3 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.4.0-py2.py3-none-any.whl (9.3 kB view details)

Uploaded Python 2Python 3

File details

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

File metadata

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

File hashes

Hashes for kuploy-0.4.0.tar.gz
Algorithm Hash digest
SHA256 9579bfad73ab2c0dc82a2d0e36f098326cdc25210dd1402adcfdf879bc0fea74
MD5 dd0c5222b12047bb6030ed310785ba1a
BLAKE2b-256 d3dbb953c8db9793346d343bbb835662d7efcb4a50952755d6f615ee4970035c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: kuploy-0.4.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 9.3 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.4.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 ce51bbf24c9b1074d6f7256fa0db7d6847834f453b8062b6c0f66a6296a4ea3d
MD5 61043b9f1dca04794b86b6e5eb1170ea
BLAKE2b-256 046b7413bd4200ac4458a10a1052af09810f72d9b6cd232152f3e262e503ff6a

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