Releases: buehler/dotnet-operator-sdk
Releases · buehler/dotnet-operator-sdk
v3.1.0-prerelease.4
3.1.0-prerelease.4 (2021-02-23)
Features
v3.1.0-prerelease.3
3.1.0-prerelease.3 (2021-02-22)
Bug Fixes
v3.1.0-prerelease.2
3.1.0-prerelease.2 (2021-02-22)
Bug Fixes
v3.1.0-prerelease.1
3.1.0-prerelease.1 (2021-02-22)
Features
v3.0.1-prerelease.2
3.0.1-prerelease.2 (2021-02-21)
Bug Fixes
v3.0.1-prerelease.1
v3.0.0
3.0.0 (2021-02-08)
Bug Fixes
- deps: update dependency namotion.reflection to v1.0.16 (#145) (8d38373)
- deps: update dependency namotion.reflection to v1.0.18 (#147) (04b1a68)
- Correctly translate the kubernetes "special" fields in crds. (e5573c4)
Code Refactoring
- controller: Refactoring to scoped controllers. (17d636f), closes #138
- finalizer: Use scoped finalizer. (307cc55)
- function naming: Use best practice names. (4e675b8)
- testing: Adjust test helpers according to breaking changes. (163c18b)
- validators: Use scoped validators and register by type. (a63b511)
Features
- crd generation: Add additional printer columns. (#118) (1fd76c3), closes #60
- documentation: Add documentation for public elements of the libs (#119) (f97a3ef)
- events: Add event support for resources and controllers. (#132) (3537772), closes #5
- logging: Remove the structured logger in favor of JsonLogger. (8a6bf9d)
- webhooks: Add validation webhooks and cert support. (#136) (6633845), closes #3
- add KubeOpsBasePath to msbuild properties (#117) (532b878)
BREAKING CHANGES
- testing: This removes the mocked event queue.
To test controllers and finalizers, use the provided
methods of the KubernetesOperatorFactory to enqueue
events and finalizers. - validators: Validators do not need to be registered via
AddValidationWebhook
method. All validators are infered/searched
by type when they implement theIValidationWebhook<>
interface.
When the validation webhook is called, a scope is created. - function naming: This essentially renames all async functions.
According to best practices, async functions should have the
suffixAsync
. - finalizer: Refactoring of the finalizer logic. Same as with
the controller, the finalizer are now instantiated via dependency injection
in a scope. As soon as a finalization request happens, the finalizer
manager will search for the adequate finalizer and call it.
The new way of registering finalizer is via theIFinalizerManager
to attach a finalizer to an entity. - controller: Refactoring of the whole controller instantation.
This removes theResourceControllerBase
class. Please migrate to
the new interfaceIResourceController
. The basic idea is to provide
scoped access like asp.net api controller. ALL non abstract classes
that implement that interface are registered as controllers on startup.
Whenever an event for a resource happens, a dependency injection
scope is created and the controller is called with the specific action.
There is no need for a base class anymore. - logging: This removes the structured console logger.
Dotnet 5.0 provides a "simple logger" (default) as well as a
"json logger".
v3.0.0-prerelease.4
3.0.0-prerelease.4 (2021-02-04)
Bug Fixes
v3.0.0-prerelease.3
3.0.0-prerelease.3 (2021-01-29)
Bug Fixes
v3.0.0-prerelease.2
3.0.0-prerelease.2 (2021-01-29)
Code Refactoring
- controller: Refactoring to scoped controllers. (17d636f), closes #138
- finalizer: Use scoped finalizer. (307cc55)
- function naming: Use best practice names. (4e675b8)
- testing: Adjust test helpers according to breaking changes. (163c18b)
- validators: Use scoped validators and register by type. (a63b511)
BREAKING CHANGES
- testing: This removes the mocked event queue.
To test controllers and finalizers, use the provided
methods of the KubernetesOperatorFactory to enqueue
events and finalizers. - validators: Validators do not need to be registered via
AddValidationWebhook
method. All validators are infered/searched
by type when they implement theIValidationWebhook<>
interface.
When the validation webhook is called, a scope is created. - function naming: This essentially renames all async functions.
According to best practices, async functions should have the
suffixAsync
. - finalizer: Refactoring of the finalizer logic. Same as with
the controller, the finalizer are now instantiated via dependency injection
in a scope. As soon as a finalization request happens, the finalizer
manager will search for the adequate finalizer and call it.
The new way of registering finalizer is via theIFinalizerManager
to attach a finalizer to an entity. - controller: Refactoring of the whole controller instantation.
This removes theResourceControllerBase
class. Please migrate to
the new interfaceIResourceController
. The basic idea is to provide
scoped access like asp.net api controller. ALL non abstract classes
that implement that interface are registered as controllers on startup.
Whenever an event for a resource happens, a dependency injection
scope is created and the controller is called with the specific action.
There is no need for a base class anymore.