Skip to content

v1.0.0

Compare
Choose a tag to compare
@mruoss mruoss released this 28 Nov 07:56
· 250 commits to master since this release

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 handling
    of processes. Your controllers are not more added to the supervision tree by
    bonny. Instead you must create an operator and add that to your application's
    supervision tree.
  • The Pluggable (think Plug)
    library is used with 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 leverages
    Pluggable.StepBuilder (think Plug.Builder) to build a pluggable pipeline.
  • Bonny.Event and Bonny.EventRecorder were introducd for Kubernetes
    event creation (#156, #5)

Why this refactoring?

  • Allows for better CRD and API version definitions
  • With a Pluggable architecture, controllers are much easier to test (Think of Plug.Conn tests)
  • The Pluggable architecture makes your processing pipelines composable and simpler to customize/extend
  • Decoupling of manifest generation and action event processing
  • Internally, the amount of macros was reduced which makes Bonny easier to understand and maintain