Releases: cloudydeno/deno-kubernetes_client
v0.3.1: Fix Cluster CA on Deno v1.15+
Fix cluster certificate authority setup in KubeConfigRestClient
on Deno v1.15.0 and later.
In Deno v1.15, the API for adding extra certificate authorities was replaced with a new Array field, which newly allows adding extra certificate authorities. Upstream documentation on the change can be found in the Deno 1.15 blogpost: https://deno.com/blog/v1.15#in-memory-ca-certificates
TLS-related configuration are locked behind Deno's --unstable
flag, and Kubernetes loves TLS :) so using an API that can change completely on any minor release is a necessary evil for now.
v0.3.0: TLS client auth, Deno 1.11+
- Allow TLS authentication, when supported by Deno (#7).
- Requires running Deno with
--unstable
. - Not available yet as of Deno
v1.13.2
. To use immediately, usedeno upgrade --canary
. - Should be available in Deno
v1.14
once it is released.
- Requires running Deno with
- More consistently obey
--verbose
flag (#4). - Updated deps to
/[email protected]
. - Now requires Deno v1.11 or later.
v0.2.4: Improve Deno Deploy compatibility
- Clean up Deno-specific code in
stream-transformers.ts
.- This also improves compatibility with Deno Deploy.
- Updated deps to
/[email protected]
.
v0.2.3: Fix InClusterConfig regression in v0.2.2
Correctly base64-encode certificate-authority-data
v0.2.2: Kubeconfig inline CA data fix, update README
Fix for using certificate data stored within kubeconfig. The Base64 encoding was not being respected previously.
Also updated README to leverage the new permissions scoping in Deno 1.9, where --allow-run=kubectl
can now be used to make the required development permissions just that bit less wide-open.
v0.2.1: Windows environment detection
Better Windows support from jhannes via #1. Checks for the $USERPROFILE
variable as well as $HOME
.
v0.2.0: Consolidate all fetch-based clients
Rewrote KubeConfig handling and removed stable/unstable split.
There's only two transport implementations now: KubectlRawRestClient
and KubeConfigRestClient
.
autoDetectClient()
tries a lot harder now and if nothing works, it prints a compound error message (a la AWS credential chaining 😉) showing why each one failed.
Breaking change for almost any usage more complex than calling autoDetectClient()
.
v0.1.3: Improved locally patching resources
Now supports namespaced resources ;) and knows that subresources can't be patched.
Also, when running locally no API traffic is logged unless --verbose
is passed to the Deno program.
This is to help make interactive tooling more ergonomic.
All request paths are still logged in-cluster.
Hopefully will be able to put this down for a bit to bake, and come back to bump version once it feels stable.
v0.1.2: Initial via-kubectl-raw Patch support
Also exports the Reflector implementation and plumbs unstable/via-kubeconfig.ts
more.
v0.1.1: Add generic Reflector
Copy of notes from reflector.ts
:
Implementation of a Kubernetes List/Watch client which furnishes a view of the watched data.
This is commonly called a 'Reflector' among the client libraries, though this one is less standard.The core class here is a bit generic and tries to depend mostly on things within this file.
This is because a Reflector works pretty directly with Kubernetes API objects,
while this overall kubernetes_client module only serves as an API access path.
So you'll be furnishing your exact API structures by instiantiating the Reflector class.
(Usually the API will be from /x/kubernetes_apis/builtin/meta@v1/struct.ts but it can vary)This class/file work fine, but the types and APIs are still unstable while I figure out
what's necesary for various usecases.
Please file issues or start discussions if you have any input!
The new module is not imported anywhere, it is a standalone addition. This will likely remain so until I"m more confident in the API.
Also, added contentType
to the request options contract. This will be used for patching.