Metadata-Version: 2.4
Name: kapitan
Version: 0.35.0
Summary: Generic templated configuration management for Kubernetes, Terraform and other things
Project-URL: Homepage, https://kapitan.dev
Project-URL: Repository, https://github.com/kapicorp/kapitan
Project-URL: Documentation, https://kapitan.dev/
Author-email: Ricardo Amaro <ramaro@kapicorp.com>
License-Expression: Apache-2.0
License-File: AUTHORS
License-File: LICENSE
Keywords: jinja,jsonnet,kubernetes,reclass
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development :: Build Tools
Requires-Python: <3.15,>=3.10
Requires-Dist: addict<3,>=2.4.0
Requires-Dist: azure-identity<2,>=1.12.0
Requires-Dist: azure-keyvault-keys<5,>=4.7.0
Requires-Dist: boto3<2,>=1.18.17
Requires-Dist: cachetools<8.0.0,>=7.0.1
Requires-Dist: certifi
Requires-Dist: copier<10,>=9.3.1
Requires-Dist: cryptography<47.0.0,>=3.4.7
Requires-Dist: filetype<2,>=1.2.0
Requires-Dist: gitdb<5,>=4.0.10
Requires-Dist: gitpython<4,>=3.1.30
Requires-Dist: google-api-python-client<3,>=2.15.0
Requires-Dist: hvac==2.4.0
Requires-Dist: jinja2<4,>=3.0.1
Requires-Dist: jsonnet<0.22,>=0.21.0
Requires-Dist: jsonpath-ng<2,>=1.7.0
Requires-Dist: jsonschema<5,>=4.17.3
Requires-Dist: kadet<0.4,>=0.3.0
Requires-Dist: kapicorp-reclass>=2.0.0
Requires-Dist: packaging<26,>=23
Requires-Dist: pydantic-settings<3,>=2.4.0
Requires-Dist: pydantic<3,>=2.8.2
Requires-Dist: python-box<8,>=7.2.0
Requires-Dist: python-gnupg<0.6.0,>=0.4.7
Requires-Dist: pyyaml~=6.0
Requires-Dist: regex<2025,>=2024.5.10
Requires-Dist: requests<3,>=2.28.2
Requires-Dist: strenum<0.5,>=0.4.15; python_version ~= '3.10'
Requires-Dist: toml<0.11,>=0.10.2
Requires-Dist: typing-extensions<5,>=4.0.0
Requires-Dist: yamllint<2,>=1.29.0
Provides-Extra: gojsonnet
Requires-Dist: gojsonnet<0.22,>=0.21.0; extra == 'gojsonnet'
Provides-Extra: omegaconf
Requires-Dist: omegaconf<3,>=2.4.0.dev3; extra == 'omegaconf'
Provides-Extra: reclass-rs
Requires-Dist: reclass-rs<0.11.0,>=0.10.1; extra == 'reclass-rs'
Description-Content-Type: text/markdown

# Kapitan: advanced configuration management tool

[![Test, Build and Publish docker image](https://github.com/kapicorp/kapitan/actions/workflows/test-build-publish.yml/badge.svg?branch=master&event=push)](https://github.com/kapicorp/kapitan/actions/workflows/test-build-publish.yml)
![Python Version](https://img.shields.io/pypi/pyversions/kapitan)
![Downloads](https://img.shields.io/pypi/dm/kapitan)
![Docker Pulls](https://img.shields.io/docker/pulls/kapicorp/kapitan)
[![Releases](https://img.shields.io/github/release/kapicorp/kapitan.svg)](https://github.com/kapicorp/kapitan/releases)
[![Docker Image Size](https://img.shields.io/docker/image-size/kapicorp/kapitan/latest.svg)](https://hub.docker.com/r/kapicorp/kapitan)

<img src="docs/images/kapitan_logo.png" width="25">


**`Kapitan`** aims to be your *one-stop tool* to help you manage the ever growing complexity of your configurations.

Join the community [`#kapitan`](https://kubernetes.slack.com/archives/C981W2HD3)

## [**Official site**](https://kapitan.dev) <https://kapitan.dev>


## [**Quick Start**](https://kapitan.dev/getting_started/#quickstart)

## Install Kapitan

### Docker (recommended)

```shell
docker run -t --rm -v $(pwd):/src:delegated kapicorp/kapitan -h
```

On Linux you can add `-u $(id -u)` to `docker run` to preserve file permissions.

### Pip

Kapitan needs Python 3.10 or newer.

#### Install Python 3

* Linux: `sudo apt-get update && sudo apt-get install -y python3-dev python3-pip python3-yaml git`
* Mac: `brew install python3 libyaml git`

#### Install Kapitan

User (`$HOME/.local/lib/python3.x/bin` on Linux or `$HOME/Library/Python/3.x/bin` on macOS):

```shell
pip3 install --user --upgrade kapitan
```

System-wide (not recommended):

```shell
sudo pip3 install --upgrade kapitan
```

## Build Kapitan

### Docker

To build a docker image for the architecture of your machine, run `docker build . -t you-kapitan-image`, and to build for a specific platform, add `--platform linux/arm64`.

To build a multi-platform image (as the CI does), follow [the docker multi-platform documentation](https://docs.docker.com/build/building/multi-platform/).

To build a docker image using a specific python version, run `docker build --build-arg PYTHON_BUILDER_VERSION=<python-version> . -t you-kapitan-image`. By default the Dockerfile is pinned using python 3.11 as the python builder version.

## Related projects

* [Tesoro](https://github.com/kapicorp/tesoro) - Kubernetes Admission Controller for Kapitan Secrets
* [Kapitan Reference](https://github.com/kapicorp/kapitan-reference) - our reference repository to get started with Kapitan
