Age | Commit message (Collapse) | Author | Files | Lines |
|
If kubectl fails during a kontemplate run, kontemplate should also
exit with a non-zero status code.
This fixes #43
|
|
|
|
|
|
Adds a simple script that will build stripped binaries for various platforms
and GPG-sign them.
|
|
Adds a version command that can have the Kontemplate git hash added to it at
build time by using the Go linker's -X flag.
|
|
|
|
|
|
|
|
|
|
|
|
Replace urfave/cli with the kingpin[1] library.
It has slightly more sensible argument validation than the other Go libraries.
Additionally I've opted for removing the '-f / --file' flag in favour of positional arguments to commands.
A previous command like `kontemplate template -f somefile.yml` is now just `kontemplate template somefile.yml`. All other arguments remain the same.
[1]: https://github.com/alecthomas/kingpin
|
|
After filtering resource sets, check whether any resource sets "survived".
Otherwise it can be assumed that the user specified invalid exclude/include
combinations and should be warned about that.
Fixes #35
|
|
|
|
|
|
This adds functionality to specify default values directly in resource sets.
The idea is that users can create a file called `values.yaml` or `values.json`
in a resource set's folder and have all variables specified in that file be
automatically merged into the resource set variables with the lowest priority.
This fixes #25
This fixes #30 (to a degree)
|
|
Instead of printing a spooky stacktrace when the user forgets to specify
the `-f` argument, return an error a lot more gracefully.
|
|
Golang's template package now has an option for failing if template variables
are missing: https://golang.org/pkg/text/template/#Template.Option
This updates the templater code to make use of that option and return the
errors encountered during templating.
This fixes #1
|
|
|
|
|
|
Users of kontemplate may expect variables defined on the parent resource to be
inherited by children.
This implements that functionality. Values defined twice are overwritten by the
child's definition.
Fixes #20
|
|
|
|
|
|
|
|
This introduces support for looking up secret values in the 'pass' command line
tool (https://www.passwordstore.org/).
Values like passwords can be interpolated from pass and even more complex
structures like certificates for Kubernetes Secrets can be retrieved and base64-
encoded as necessary.
Fixes #2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A resource set collection is a resource set with an addition 'include' array
configured. It is a short-hand for importing multiple resource sets from the
same folder and for excluding/including them as a group.
See https://github.com/tazjin/kontemplate/issues/9 for more information.
Closes #9
|
|
|
|
* renamed --limit to --include (-i)
* added --exclude (-e)
Kontemplate users can now explicitly include and exclude certain resource sets.
Excludes always override includes.
Closes #11
|
|
* Adds support for calling `kubectl replace` (necessary for resource types that do
not support `apply`).
* Sets `kubectl` context to whatever is defined in the cluster configuration file
|
|
|
|
This integrates support for actually calling out to `kubectl apply`.
A dry-run flag is implemented, too.
The `run` command has been renamed to `template`.
|
|
This adds the Go template functions from [sprig][] as well as a custom `json`
function that can interpolate any data as a JSON object - very useful for adding
arrays of data in JSON format into a variable:
```
certificateDomains:
- oslo.pub
- tazj.in
annotations:
acme/certificate: {{ .certificateDomains | json }}
annotations:
acme/certificate: ["oslo.pub", "tazj.in"]
```
[sprig]: https://godoc.org/github.com/Masterminds/sprig
|
|
|
|
|
|
|
|
|
|
Closes #5
|
|
Enable Travis.CI builds
|
|
|
|
|
|
Adds a basic CLI structure with a single "run" command that takes a --file (-f)
and --limit (-l) flag.
--limit can be used to only output certain resource sets.
Closes #4
|
|
Open code under MIT license.
|