When running glide update there are errors due to pinned versions
in the glide.yaml file mixed with getting a more recent version of
kubernetes. client-go needs a newer version of go-autorest.
Note, go-autorest is pinned to v8.0.0 rather than the latest
release of v8.4.0 because kubernetes is pinned to v8.0.0.
Kubernetes has a dependency on a development version of
github.com/docker/distribution that does not work for windows. Helm
picks up this dependency and it breaks helm development on win. The
bug was later fixed. There is an issue on Kubernetes to update
to a newer version. In the meantime, this change causes helm to
use the latest stable release for that minor version.
Fixes#2396
Relates to https://github.com/kubernetes/kubernetes/issues/45377
This prevents clients from seeing half-written files because
on POSIX systems renaming a file is an atomic operation.
Drive-by: Add test for repo file permission.
This fixes a TOML panic by replacing one parser library with another.
The older library did not gracefully handle reflection issues, and so
was prone to panic. The new one is not great, but it doesn't seem to
panic.
Closes#2271
Add plugin management subcommands for installing and removing plugins
to `$HELM_HOST/plugins`.
Install accepts a vcs url or a local directory.
```
$ helm plugin install http://github.com/adamreese/helm-env
Installed plugin: env
$ helm plugin list
NAME VERSION DESCRIPTION
env 0.1.0 Print out the helm environment.
$ helm plugin remove env
Removed plugin: env
```
closes#1977
There was a hyphen range bug in semver that prevented constraints
in the form of v2.3.5-20161202202307-sha.e8fc5e5. This would be
parsed incorrectly as a hyphen range and then fail. The bug in
semver was fixed in semver v1.2.2 for this issue.
This adds a hidden 'helm doc' command that generates documentation out
of the Helm help text.
Currently it can create:
- man pages for HELM(1)
- Markdown documentation
- bash autocompletions
Those are the three built-ins for Cobra.
The command is hidden so that it doesn't show up to the regular user,
since this is really a specialized task. It has the advantage of making
it trivially easy to install man pages and bash completion at installation time.
A bug in the semver package caused prereleases to be included in
version ranges by default. Prereleases, per the spec, are not
expected to be API compatible with the releases themselves.
The semver package now ignores prereleases when evaluating
constraints when the constraint does not contain a prerelease. If
the constraint contains a prerelease they are evaluated.
- decouple tunnel from kube client
- add context switching for init cmd
- add unit tests for installer and init command
- refactor installer and remove unused code