Skip to main content

kindtool

Python program for simplyfing workflows with kind.

kind is a tool for running local Kubernetes clusters using Docker container “nodes”.

With kindtool you can add a simple Kindfile to your project. You can crate, destroy, start and maintain a k8s cluster for ci or development.

Installation

Requirements:

  • docker
  • python3
  • kind
  • kubectl
  • optional: helm

Kind installation

Official documentation: https://kind.sigs.k8s.io/docs/user/quick-start/

Fast lane:

get_latest_release() {
  curl --silent "https://api.github.com/repos/$1/releases/latest" | # Get latest release from GitHub api
    grep '"tag_name":' |                                            # Get tag line
    sed -E 's/.*"([^"]+)".*/\1/'                                    # Pluck JSON value
}
KIND_LATEST=$(get_latest_release kubernetes-sigs/kind)
ARCH=$(dpkg --print-architecture 2>/dev/null || echo "amd64")

curl -Lo ./kind https://kind.sigs.k8s.io/dl/${KIND_LATEST}/kind-linux-${ARCH}
chmod +x ./kind
sudo mv ./kind /usr/local/bin/kind

Kindtool installation

$ pip3 install kindtool

Kubectl installation

Helm installation

Workflow

# creates a new Kindfile (edit for your needs)
$ kindtool init -d <projectdir>

# creates the cluster - this will create a .kind directory next to Kindfile
$ kindtool up

# kills the kind cluster - configuration, k8s config is removed,
# the persistent data will be kept in .kind/data
$ kindtool destroy

# kills the kind cluster  and removes the data folder
# this needs to be run as root! Docker might created files that have 0/0 uids/gids
$ sudo kindtool destroy -f

# is kind running - print status information
$ kindtool status

# start the k8s dashboard
$ kindtool dashboard

# returns the directory with the config files
# can be used as export KUBECONFIG=$(kindfile get kubeconfig)
$ kindtool get kubeconfig

Examples

https://github.com/egandro/kindtool-examples

Metadata

Release files for kindtool 0.0.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for kindtool 0.0.4
File Size Uploaded Provenance
kindtool-0.0.4.tar.gz 16.3 kB Without provenance Details

Release files / kindtool-0.0.4.tar.gz

Download URL kindtool-0.0.4.tar.gz
Size 16.3 kB
Tags Source
SHA-256 checksum
How to use checksums
bb702c6813b7d493c5d0e18231c685508af0b1baaa57bb648db60e6e164849cf
BLAKE2b-256 checksum
How to use checksums
5096efec3449f56daf572de3925e8dcda7c869bac9bc350043012a5dbd0085c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.2

Security for kindtool 0.0.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page