docs: Add initial WIP README
This commit is contained in:
parent
b11478212a
commit
aff2f7ac1d
1 changed files with 45 additions and 0 deletions
45
README.md
Normal file
45
README.md
Normal file
|
@ -0,0 +1,45 @@
|
|||
KonTemplate - A simple Kubernetes templater
|
||||
===========================================
|
||||
|
||||
I made this tool out of frustration with the available ways to template Kubernetes resource files. All I want out of
|
||||
such a tool is a way to specify lots of resources with placeholders that get filled in with specific values, based on
|
||||
which context (i.e. k8s cluster) is specified.
|
||||
|
||||
## Overview
|
||||
|
||||
KonTemplate lets you describe resources as you normally would in a simple folder structure:
|
||||
|
||||
```
|
||||
.
|
||||
├── prod-cluster.json
|
||||
└── some-api
|
||||
├── deployment.yaml
|
||||
└── service.yaml
|
||||
```
|
||||
|
||||
This example has all resources belonging to `some-api` (no file naming conventions enforced at all!) in the `some-api`
|
||||
folder and the configuration for the cluster `prod-cluster` in the corresponding file.
|
||||
|
||||
Lets take a short look at `prod-cluster.json`:
|
||||
|
||||
```json
|
||||
{
|
||||
"context": "k8s.prod.mydomain.com",
|
||||
"include": [
|
||||
{
|
||||
"name": "some-api",
|
||||
"values": {
|
||||
"importantFeature": true,
|
||||
"apiPort": 4567
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
Those values are then templated into the resource files of `some-api`.
|
||||
|
||||
## Usage
|
||||
|
||||
You must have `kubectl` installed to use KonTemplate.
|
Loading…
Reference in a new issue