This repository has been archived by the owner on Nov 17, 2021. It is now read-only.
Releases: vmware-archive/kubecfg
Releases · vmware-archive/kubecfg
v0.10.1
v0.10.0
v0.9.1
v0.9.0
kubecfg validate
now ignores object kinds that are not found in the server discovery data by default.
This matches the behaviour ofkubectl
, and allows CRDs to "just work" (ie: be silently ignored) in more cases. See--ignore-unknown
flag to force other behaviour.- Phase 1 for migrating the gc-tag from an annotation to a label.
In this release,kubecfg --gc-tag=...
writes the gc-tag to both the old annotation and new label, but continues to read from the annotation. A future version will move to the label exclusively - see #205 for overall progress. - Improve error message when
kubecfg
encounters an unexpected jsonnet result structure. null
values at object level in jsonnet results are now silently ignored.
This is sometimes seen inhelm template
output, and is also useful to conditionally "whiteout" objects. Notenull
values within objects are still preserved at this stage.- client-go upgraded to kubernetes-1.10.3
- As part of this upgrade,
kubecfg
now uses the server's OpenAPI schema and not Swagger.
- As part of this upgrade,
v0.8.0
Big feature: import
now works on URLs!
- So things like the following are possible. I recommend using a specific tag/commit URL in practice.
local kube = import "https://raw.githubusercontent.com/bitnami-labs/kube-libsonnet/master/kube.libsonnet";
kube.Secret("foo") {data_+: {foo: "sekret!"}}
- Note that if remote file A imports a relative path B, then B is resolved relative to A's location (and then along the search path if not found), just as it always was with local paths.
- New flag:
--jurl
that is like--jpath
but accepts a URL to add to the search path. - HTTP/S requests are performed using golang
net/http
, and should obeyhttp_proxy
, etc. - The actual "top level" kubecfg input arguments must be local paths for now. These will also change to support URLs in a future release.
- Thanks to @petr-k for another amazing code contribution!
Other changes:
-J
argument handling has been changed (ie: fixed). It can now be specified multiple times to add multiple search directories, as always intended.kubecfg.libsonnet
is now embedded in the binary (last in the search path), soimport "kubecfg.libsonnet"
should always work.- New
completion
subcommand that outputs shell completion.source <(kubecfg completion)
for bash. - Now uses client-go v5.0.1
- Now uses go-jsonnet v0.10.0, which includes various new std functions.
validate
now skips resource kinds that can't be found in the server schema, but do appear in the server discovery information. In particular, this allows CRDs to pass validation. Thanks to @mmikulicic!- Objects are now validated against the server schema at the beginning of an
update
(by default).
v0.7.2
- Replace jsonnet_cgo with go-jsonnet
- No more cgo (yay)
- Please file bugs if you notice any regressions in functionality or stability
- Thanks to @petr-k for doing the conversion
- Releases built with go1.9
- (v0.7.1 fixes an issue with the v0.7.0 release auto-build)
- (v0.7.2 fixes another issue with osx release auto-build)
v0.7.1
v0.7.0
v0.6.0
v0.5.0
- Add
validate
subcommand. This validates API objects against the server's published OpenAPI schema. Online-only for now. - Added opt-in "garbage collection" to
update
. If you runupdate
repeatedly with the same--gc-tag
value, thenupdate
will now delete API objects with that "tag" on the server that are no longer found in local config.- To start using this feature, just start using
--gc-tag
(and importantly specify the same set of input files on each invocation). "Stale" objects will be deleted on the second and subsequentupdate
runs. - To stop using this feature, just stop using
--gc-tag
. kubecfg update -v --gc-tag=foo --dry-run
can be used to indicate what (if any) objects will be deleted (not a 100% accurate representation, since actually creating/updating objects might alter the state of the cluster)- Multiple disjoint pipelines pushing to the same cluster using different
--gc-tag
values and different input files are safe.
- To start using this feature, just start using