k8s

Kubernetes API Client for Elixir

MIT License

Downloads
1.8M
Stars
315
Committers
25
k8s - 2.0.0-rc.0

Published by mruoss almost 2 years ago

This version comes with some breaking changes. Please refer to the migrations guide for help on how to migrate your projects to this version.

Added

  • K8s.Selector.label_not/N, K8s.Selector.field/N and K8s.Selector.field_not/N - Support for field selectors (#117)
  • K8s.Client.Provider.stream/5 callback was added to the behaviour
  • K8s.Client.Runner.Base.stream/3
  • K8s.Client.MintHTTPProvider - The mint client implementation
  • K8s.Client.HTTPTestHelper - to be used in tests (resides in lib/ so it can be used by dependents)
  • Open :connect operations (connections) now accept messages to be sent to pods
  • K8s.Client.put_conn/2 to add pielining support to the Client API

Changed

  • K8s.Client.Provider behaviour was adapted to the new internal architecture
  • K8s.Client.watch/N now returns a :watch or :watch_all_namespaces operation to be passed to K8s.Client.stream/N
  • Websockex was replaced by Mint.WebSocket

Removed

  • K8s.Client.HTTPProvider was removed in favor of K8s.Client.MintHTTPProvider
  • The :stream_to in http_opts is not supported anymore.

Breaking changes

  • Tests using the DynamicHTTPProvider which work with watch_and_stream are going to need to be changed. The HTTP mocks now need to implement the stream/5 callback. (See K8s.Client.Runner.Watch.StreamTest on this branch for examples)
  • The :stream_to in http_opts is not supported anymore. Instead, Elixir Streams are returned. Map over the returned stream to send messages to other processes.
  • Errors are encapsulated in K8s.Client.HTTPError
  • headers/1 callback was removed from K8s.Client.Provider behaviour
  • K8s.Client.HTTPProvider (HTTPoison implementation) was removed.
  • K8s.Client.watch/N now returns a :watch or :watch_all_namespaces operation to be passed to K8s.Client.stream/N

Fixed

  • Update PKI.cert_from_map/2 to support fully qualified domain names (FQDN) - Fix for K8s.Conn.from_file/1 (#164)
k8s - 1.2.0

Published by mruoss almost 2 years ago

What's Changed

Chores

New Contributors

Full Changelog: https://github.com/coryodaniel/k8s/compare/1.1.10...1.2.0

k8s - 1.1.10

Published by mruoss almost 2 years ago

Fixed

  • K8s.Client.run/2: spec updated to include t:K8s.Discovery.Error.t/0 in possible error structs

Full Changelog: https://github.com/coryodaniel/k8s/compare/1.1.9...1.1.10

k8s - 1.1.9

Published by mruoss almost 2 years ago

What's Changed

Full Changelog: https://github.com/coryodaniel/k8s/compare/1.1.8...1.1.9

k8s - 1.1.8

Published by mruoss almost 2 years ago

What's Changed

Chores

Full Changelog: https://github.com/coryodaniel/k8s/compare/1.1.7...1.1.8

k8s - 1.1.7

Published by mruoss about 2 years ago

What's Changed

Full Changelog: https://github.com/coryodaniel/k8s/compare/1.1.6...1.1.7

k8s - 1.1.6

Published by mruoss about 2 years ago

What's Changed

Chores & Maintenance

New Contributors

Full Changelog: https://github.com/coryodaniel/k8s/compare/1.1.5...1.1.6

k8s - 1.1.5

Published by mruoss over 2 years ago

Fixed

  • K8s.Client.watch_and_stream/2: 410 Gone not rescued #159
  • K8s.Client.watch/3: get operations should be transformed to list BEFORE retrieving the resource version #160

Changed

  • K8s.Client.watch_and_stream/2: Request BOOKMARK events and process them when watching resource collections. #159
k8s - 1.1.3

Published by mruoss over 2 years ago

Fixed

Fix default value in K8s.Client.Runner.Watch.run/4 and K8s.Client.Runner.Watch.stream/3

k8s - 1.1.2

Published by mruoss over 2 years ago

Fixed

  • Support for FQDN K8s API servers and Root CA chains #144
  • Wrong exception raised by K8s.Resource.from_file!/2 #137, #143
  • K8s.Client.Runner.Watch.stream/3 - convert :get to :list operation with field selector.
  • Make Logger metadata library: :k8s available at compile time.
k8s -

Published by mruoss over 2 years ago

Fixed

  • Initialize authorization header as valid keyword list #142
  • Restore deprecated K8s.Sys.Event module.
k8s -

Published by mruoss over 2 years ago

Added

  • K8s.Client.Runner.Watch.stream/3 - watches a resource and returns an elixir Stream of events #121
  • K8s.Client.apply/2 - Create a server-side apply operation

Changed

  • Handle generic kubernetes response Failure without a reason #120
  • Replace Notion with Telemetry and improve Logging #128

Deprecated

  • K8s.Client.HTTPProvider.headers/2 was deprecated in favor of K8s.Client.HTTPProvider.headers/1
  • K8s.Client.DynamicHTTPProvider.headers/2 was deprecated in favor of K8s.Client.DynamicHTTPProvider.headers/1

Fixed

  • Preserve namespace in get_to_list/1 #122, #123
  • Fix obsolete doc on wait operation #118
  • Dialyzer errors with K8s.Client functions #119
  • Enable peer certificate authentication #127. Be aware, this will break configurations that have been using incorrect certificate(s) up to this point.
k8s - 1.0

Published by coryodaniel over 3 years ago

k8s - 0.5.0-rc.1 - Request Middleware

Published by coryodaniel almost 5 years ago

k8s - 0.4.0

Published by coryodaniel almost 5 years ago