This stops a repeat deletion from sending requests all the way to
Kubernetes, and gives a clear error message when a deletion is requested
on an already deleted resource.
Relates to #972
This makes the template system less tolerant in the name of detecting
YAML parse errors before things are sent to Kubernetes. It returns a
more detailed error message when a template creates a manifest which is
not valid YAML.
Closes#957
This includes a substantial bit of unit test improvements. Also, in
order to allow us to tests command line args (which translate to
helm.Option objects), I had to add a new interface to pkg/helm.
Template paths were relative to the chart that contained them, which
meant that all templates were named 'template/SOMETHING'. This made it
trivially easy to hit namespace collisions as in #933.
Template path names are essentially opaque strings so this patch simply
changes them to be qualified by parent chart.
When a release failed, the release record was not saved. That led to the
case where Kubernetes resources were deployed, but the release that
deployed them was not tracked.
To fix, we now save the release on failure. The 'helm delete' operation
can delete failed resources.
Closes#851
This is a minor fix to the Tiller internals to allow an alternate
template engine. This will still require future work to make it possible
to bootstrap in a different template renderer.
Previously, paging used the last release name of the current set to ask
for more results. Now switched to using the first name of the next set.
Not sure I like this method. It makes the user experience more
complicated.
This adds support for filtering list results. Filter strings are
passed from Helm to Tiller, where they are compiled as regular
expressions and executed against the list of releases. Only matching
releases are returned.
Filters are applied before limits and sorts.
This commit finally ties `helm install` together with the Kubernetes
client library to make an end-to-end trip.
There were several small fixes to go on both client and server side,
along with some changes to proto to support better error reporting.
The alpine chart has been updated to exhibit how the new Helm works.
This adds support for dry run on install, as well as providing
enough info for an install to display (verbose) manifests. While
doing this, I ended up just storing the rendered manifests for
simplicity.