Skip to content

Releases: coryodaniel/bonny

v1.0.0-rc.2

15 Nov 13:12
Compare
Choose a tag to compare
v1.0.0-rc.2 Pre-release
Pre-release

Added

  • Bonny.Pluggable.AddManagedByLabelToDescendants - Adds the app.kubernetes.io/managed-by label to all descendants registered within the pipeline.
  • Allow nil and {controller :: module(), init_opts :: keyword()} in the operator's controllers/2 callback.

Fixed

  • K8sConn - Implement spec correctly.

Changed

  • Bonny.Axn.apply_descendants/N, Bonny.Axn.apply_status/N - Raise upon error.
  • fix: Some typos by @adriffaud in #168

New Contributors

Full Changelog: v1.0.0-rc.1...v1.0.0-rc.2

v1.0.0-rc.1

31 Oct 16:45
Compare
Choose a tag to compare
v1.0.0-rc.1 Pre-release
Pre-release

Added

  • Better logs in case of errors while applying status, descendants or events
  • Integration tests for these logs

v1.0.0-rc.0

29 Oct 14:14
bc26912
Compare
Choose a tag to compare
v1.0.0-rc.0 Pre-release
Pre-release

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 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
  • Manifest generation and event processing were decoupled
  • Internally, the amount of macros was reduced which makes Bonny easier to maintain

Added

  • Bonny.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)
  • An integration test suite was added that runs tests against a "real" kubernetes cluster on the CI pipeline (#146, #84)
  • Mix task for initializing a new operator mix bonny.init (#160, #67)

Deprecated

  • Bonny.Controller was deprecated in favor of the new design with
    Bonny.Operator and Bonny.ControllerV2

v0.5.2

31 Aug 14:25
07fec64
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.5.1...v0.5.2

v0.5.1

25 May 12:59
23649d5
Compare
Choose a tag to compare

Fixed

  • Add missing priv folder to package

v0.5.0

23 Apr 12:11
e4584e5
Compare
Choose a tag to compare

Version 0.5.0 comes with some major changes. Please read through the migration guide before upgrading.

Added

  • Bonny.Server.AsyncStreamRunner to run streams in a separate process
  • Bonny.Sys.Telemetry defines telemetry spans and events

Updated

  • Bonny.Server.Watcher and Bonny.Server.Reconciler were rewritten completely. They now prepare streams which are to be run with Bonny.Server.AsyncStreamRunner
  • Dependency k8s was updated to version ~> 1.1 and code was refactored accordingly

Deprecated

  • Bonny.Sys.Event was deprecated in favor of Bonny.Sys.Telemetry

testo: Merge pull request #101 from victoriavilasb/api-version-v1

27 Apr 19:32
56da8e0
Compare
Choose a tag to compare
Support to apiextensions.k8s.io/v1