about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorFilesLines
2017-10-27 fix main: Do not stop templater if a single resource set is emptyVincent Ambo1-1/+1
This fixes #91
2017-10-20 feat templater: Add IP lookup functionStefan Magnus Landrø2-0/+35
This introduces support for looking up IP addresses using local DNS resolver. Function will return a list of all IP addresses associated with hostname. Further processing can be achieved using supported list template functions.
2017-08-31 fix templater: Don't template default.yml filesVincent Ambo3-5/+8
After the change from #84 default variable files with the '.yml' extension got templated as resource set templates accidentally. This resolves the issue by moving the list reserved default file names to a common place and reusing it in both the templater and context pkg. This fixes #85
2017-08-25 fix context: Support ".yml" extension on default filesVincent Ambo1-9/+6
In other places in Kontemplate that deal with YAML files, both the ".yaml" and ".yml" extension are supported. This fixes context loading code to support that for resource set variables, too. This fixes #83
2017-08-22 chore brew: Update Homebrew formula to v1.2.0Vincent Ambo1-3/+3
2017-08-22 chore image: Bump Docker image to build v1.2.0Vincent Ambo2-4/+4
2017-08-22 Version 1.2.0Vincent Ambo3-3/+3
This release comes with some new features, usability improvements and a better build & release process. Features: * Documentation has been improved significantly, check out the new [README][] and follow the links within! * Extra variables can now be loaded from files on disk. Simply specify a list of YAML/JSON files under the 'import' key in your cluster context file. Check out #66 for details! * Resource set paths can now be overridden by users. By default it is assumed that the path to a resource set is the same as its name, however this is now user-controllable. This means the same resource set can be included multiple times under different names, for easier including/excluding. See #71 for details! * Kontemplate is currently getting a website that is under construction at [kontemplate.works][] - feel free to check it out and [give feedback][]! Fixes: * Windows release binaries now have the correct filename * Several potential warning and error messages have been improved Release binaries are signed with GPG key `66F505681DB8F43B` which is verified on my Github profile. [README]: https://github.com/tazjin/kontemplate/blob/master/README.md [kontemplate.works]: http://kontemplate.works/ [give feedback]: https://github.com/tazjin/kontemplate-website/issues
2017-08-22 feat main: Warn if resource set contains no templatesVincent Ambo1-3/+13
If a resource set is specified by the user and does _not_ contain any templates, a warning will now be printed. This fixes #79
2017-08-22 chore build: Bump dependency versionsVincent Ambo1-4/+4
Several bugfixes, nothing major. Skipped one "outdated" dependency because the only change was a new text file.
2017-08-22 refactor build: Keep GPG-signatures outside of tarballsVincent Ambo1-7/+7
Instead of signing the binary and adding the signature in the release tarball, keep the GPG-signatures *outside* of the tarball. This makes it easier to use the built-in GPG-signature verification features of package managers such as pacman.
2017-08-22 fix build: Build Windows executable with correct nameVincent Ambo1-1/+12
Windows executable filenames must end in ".exe" because the operating system can't execute them otherwise. This fixes #73
2017-08-04 docs: Complete cycle by linking back to kontemplate.worksVincent Ambo1-1/+2
2017-08-04 style: Apply go fmtVincent Ambo1-8/+8
2017-08-04 docs: Add tables of content to all documentation filesVincent Ambo5-1/+68
2017-08-04 docs resource-sets: Document resource set structureVincent Ambo3-1/+148
Documents the structure of resource sets and the fields necessary for including them in cluster configurations. Also adds some words about nested resource sets and the like.
2017-08-04 docs cluster-config: Document cluster configuration filesVincent Ambo1-0/+93
Adds documentation for the YAML files describing cluster configuration.
2017-08-04 docs context: Document ResourceSet & Context struct fieldsVincent Ambo1-2/+19
2017-08-04 docs templates: Document some template logicVincent Ambo1-1/+42
Adds documentation for `if` and `range` statements in Go templates and also more explicitly points people at the Go documentation for more information.
2017-08-04 docs README: Update feature listVincent Ambo1-1/+13
Adds a feature list with links to individual feature description documents.
2017-07-13 refactor templater: Use resource set 'path' field when loading filesVincent Ambo1-2/+3
2017-07-13 feat context: Allow overriding resource set pathsVincent Ambo4-5/+105
Instead of always inferring the path at which files in a resource set are located, let users override the path by specifying a `path` field. This makes it possible to add the same resource set multiple times with different values while still keeping distinct names for addressability (for example when using include/exclude). This fixes #70
2017-07-03 feat context: Add ability to import extra variables from filesVincent Ambo6-4/+96
Kontemplate context specifications can now load extra variables from YAML or JSON files by specifying a list of files (relative to the context file) under the `import` key.
2017-07-03 feat build: Test if 'go fmt' has been appliedVincent Ambo1-0/+1
2017-07-03 feat build: Run go vet before buildingVincent Ambo1-0/+3
2017-07-03 fix main: Correctly print kubectl errorsVincent Ambo1-1/+1
2017-07-03 refactor context: Extract loadJsonOrYaml to util packageVincent Ambo2-29/+30
The logic to deserialise a structure from *either* JSON or YAML is reused several times and can be easily extracted, which this commit does.
2017-06-22 docs: Add official code of conductDr. J. Kubernaught2-0/+26
As dictated by the goddess to the eternal polyfather of love. Signed-off-by: Reverend Dr. J. Kubernaughtt The Most Recent <tazjin@gmail.com>
2017-06-11 chore: Update Brew formula & Dockerfile to 1.1.0Vincent Ambo3-5/+5
2017-06-11 chore: Release version 1.1.0Vincent Ambo3-3/+3
This release features some cleanup and under-the-hood changes, as well as "ecosystem-features" that don't directly affect the way Kontemplate itself functions. * Resource-sets are now passed on to kubectl in individual invocations. This means that kubectl errors can be scoped to individual resource set files and issues such as #51 are less of a problem. * A Dockerfile is provided and published at `tazjin:kontemplate` on Docker Hub. This image contains `kontemplate`, `kubectl` and `pass` and can be used - for example - as an image for a step in a CI system. * Kontemplate is now available on Homebrew, check the README for installation instructions. * If different resource sets don't contain `---` separators in YAML, `kubectl` calls will no longer fail. (#51) * Autocompleted trailing slashes in shells are now filtered from include & exclude lists to enhance the CLI experience slightly.
2017-06-11 chore: Update dependenciesVincent Ambo1-3/+3
2017-06-11 feat: Add shell script to check if dependencies are up-to-dateVincent Ambo1-0/+29
2017-06-11 fix templater: Ignore slash-suffixes on includes/excludesVincent Ambo1-0/+1
To prevent situations where a shell auto-appends a slash to an include/exclude specification on the CLI, trailing slashes in those string lists are now trimmed. This fixes #54
2017-06-11 fix main: Fix 'kontemplate template' outputVincent Ambo2-6/+9
2017-06-11 refactor main: Call kubectl individually per resource setVincent Ambo1-17/+24
Instead of passing the rendered output of all resource sets to kubectl simultaneously, build upon the previous commit and pass resource sets individually to new instances of kubectl. This resolves #51
2017-06-11 refactor templater: Add intermediate type to represent rendered RSesVincent Ambo1-14/+35
As a first step in resolving #51 this refactors the `templater` package to return rendered resource sets as a distinct type. This also fixes #56
2017-06-07 feat image: Add Dockerfile for CI pipeline imageVincent Ambo3-0/+28
Adds a simple Docker image that can be used in CI pipelines to deploy `kontemplate`-based environments. This image contains kontemplate and all of its dependencies (including pass as an optional dependency).
2017-05-18 docs README: Update installation instructionsVincent Ambo1-3/+24
2017-05-18 feat build: Add Homebrew binary formulaVincent Ambo1-0/+13
Adds a Homebrew formula that downloads and installs the 1.0.2 binary release. Users should be able to "tap" this formula from OS X, the README will be updated in a separate commit. This fixes #41
2017-05-18 chore: Version bump to 1.0.2Vincent Ambo3-5/+3
2017-05-18 feat build: Add Repeatr formula for repeatable buildsVincent Ambo1-0/+83
Adds a formula for Repeatr (http://repeatr.io/) that can be used to build kontemplate in a repeatable way with pinned dependencies. Fixes #47
2017-05-08 fix main: Print information about kubectl errorsVincent Ambo1-4/+20
2017-05-08 fix main: Exit with kubectl status codeVincent Ambo2-5/+3
If kubectl fails during a kontemplate run, kontemplate should also exit with a non-zero status code. This fixes #43
2017-05-08 docs: Mention AUR package in READMEVincent Ambo1-0/+3
2017-05-08 feat build: Add ArchLinux PKGBUILDVincent Ambo2-0/+39
2017-05-08 feat release: Add simple release scriptVincent Ambo3-1/+60
Adds a simple script that will build stripped binaries for various platforms and GPG-sign them.
2017-05-08 feat main: Add version commandVincent Ambo1-0/+17
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.
2017-05-08 docs: Add note about binary releases to READMEVincent Ambo1-1/+4
2017-05-08 docs: Add more information to READMEVincent Ambo1-5/+38
2017-05-08 docs: Add some tips and tricksVincent Ambo1-0/+67
2017-05-08 docs: Document template formatVincent Ambo2-0/+91