The Elixir based Kubernetes Development Framework
MIT License
## Chores
Full Changelog: https://github.com/coryodaniel/bonny/compare/v1.3.0...v1.4.0
Published by mruoss about 1 year ago
Bonny.Axn.register_descendant/3
- Add option group
to define in what group to apply a descendant and apply descendants in groups.Full Changelog: https://github.com/coryodaniel/bonny/compare/v1.2.1...v1.3.0
Published by mruoss over 1 year ago
mix bonny.gen.manifest
- Merge RBAC rules for the same resources - #213
Full Changelog: https://github.com/coryodaniel/bonny/compare/v1.1.3...v1.2.0
Published by mruoss over 1 year ago
Full Changelog: https://github.com/coryodaniel/bonny/compare/v1.1.2...v1.1.3
Published by mruoss over 1 year ago
Full Changelog: https://github.com/coryodaniel/bonny/compare/v1.1.1...v1.1.2
Published by mruoss over 1 year ago
Bonny.Pluggable.Finalizer
- Remove finalizers from resource if they need to be removed.Bonny.Axn
- Fix by @sleipnir for a regression where descendants were not applied - #192, #191
Full Changelog: https://github.com/coryodaniel/bonny/compare/v1.1.0...v1.1.1
Published by mruoss over 1 year ago
This release updates its dependency on k8s
to a new major version (2.x
). If you're using k8s
directly in your code, you should have added it explicitely to your dependencies in mix.exs
and this update will fail until you update that dependency manually. If you're using k8s
directly in your code but you haven't added it explicetly to your list of dependencies, you might get surprises as 2.x
comes with (yet few) breaking changes.
The most likely problem to occur is a Handshake Failure
when working with local clusters. Its easily fixed, please follow the instructions on the k8s migration guide.
Bonny.Pluggable.AddMissingGVK
- A pluggable step for adding missing GVK information to resources - #184, #183
Bonny.API.Version.add_conditions/1
- Helper to define a schema for conditions on the CRDBonny.Axn.set_condition/4
- Helper to set a condition on a resourceBonny.Pluggable.Finalizer
- A pluggable step to define and implement finalizers, #6, #189
Bonny.Axn.register_after_processed/2
- Registers a callback to be invoked at the very end of an action event's processing by the operatorFull Changelog: https://github.com/coryodaniel/bonny/compare/v1.0.1...v1.1.0
Published by mruoss over 1 year ago
:test
env per defaultFull Changelog: https://github.com/coryodaniel/bonny/compare/v1.0.0...v1.0.1
With Version 1.0.0, Bonny got a thorough refactoring. Besides this changelog,
you might consider the several guides (e.g. the migration guide)
Bonny.Operator
was introduced as an entry point to the watching and handlingPluggable
(think Plug
)Bonny.Axn
as token to process ADDED
, MODIFIED
,DELETED
and reconciliation events by Pluggable
pipelines.Bonny.ControllerV2
was introduced as a successor to Bonny.Controller
. It leveragesPluggable.StepBuilder
(think Plug.Builder
) to build a pluggable pipeline.Bonny.Event
and Bonny.EventRecorder
were introducd for KubernetesPluggable
architecture, controllers are much easier to test (Think of Plug.Conn
tests)Pluggable
architecture makes your processing pipelines composable and simpler to customize/extendPublished by mruoss almost 2 years ago
Bonny.Pluggable.AddManagedByLabelToDescendants
- Adds the app.kubernetes.io/managed-by
label to all descendants registered within the pipeline.nil
and {controller :: module(), init_opts :: keyword()}
in the operator's controllers/2
callback.K8sConn
- Implement spec correctly.Bonny.Axn.apply_descendants/N
, Bonny.Axn.apply_status/N
- Raise upon error.Full Changelog: https://github.com/coryodaniel/bonny/compare/v1.0.0-rc.1...v1.0.0-rc.2
Published by mruoss almost 2 years ago
With Version 1.0.0, Bonny got a thorough refactoring. You might consider reading the several guides (e.g. the migration guide)
Bonny.Operator
was introduced as an entry point to the watching and handlingPluggable
(think Plug
)Bonny.Axn
as token to process ADDED
, MODIFIED
,DELETED
and reconciliation events by Pluggable
pipelines.Bonny.ControllerV2
was introduced as a successor to Bonny.Controller
. It leveragesPluggable.StepBuilder
(think Plug.Builder
) to build a pluggable pipeline.Bonny.Event
and Bonny.EventRecorder
were introducd for KubernetesWhy this refactoring?
Pluggable
architecture, controllers are much easier to test (Think of Plug.Conn
tests)Pluggable
architecture makes your processing pipelines composable and simpler to customize/extendBonny.Pluggable.SkipObservedGenerations
- halts the pipelines for a defined list of actions if the observed generation equals the resource's generation.Bonny.Pluggable.ApplyDescendants
- applies all the descendants added to the %Bonny.Axn{}
struct.Bonny.Pluggable.ApplyStatus
- applies the status of the given %Bonny.Axn{}
struct to the status subresource.Bonny.Pluggable.Logger
- logs an action event and when status, descendants and events are applied to the cluster. If desired, it makes sense to be placed as first step in your operator pipeline but can also be added to a controller pipeline.Bonny.Resource.add_owner_reference/3
used to add the owner reference to resources created by the controller. (#147)mix bonny.init
(#160, #67)Bonny.Controller
was deprecated in favor of the new design withBonny.Operator
and Bonny.ControllerV2
Published by mruoss about 2 years ago
Full Changelog: https://github.com/coryodaniel/bonny/compare/v0.5.1...v0.5.2
Published by mruoss over 2 years ago
priv
folder to packagePublished by mruoss over 2 years ago
Version 0.5.0 comes with some major changes. Please read through the migration guide before upgrading.
Bonny.Server.AsyncStreamRunner
to run streams in a separate processBonny.Sys.Telemetry
defines telemetry
spans and eventsBonny.Server.Watcher
and Bonny.Server.Reconciler
were rewritten completely. They now prepare streams which are to be run with Bonny.Server.AsyncStreamRunner
k8s
was updated to version ~> 1.1
and code was refactored accordinglyBonny.Sys.Event
was deprecated in favor of Bonny.Sys.Telemetry