All Versions
17
Latest Version
Avg Release Cycle
88 days
Latest Release
64 days ago

Changelog History
Page 1

  • v1.0.0 Changes

    November 28, 2022

    ๐Ÿ”จ With Version 1.0.0, Bonny got a thorough refactoring. Besides this changelog, you might consider the several guides (e.g. the [migration guide](./guides/migration.mid))

    • 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
  • v1.0.0-rc.3 Changes

    November 19, 2022

    ๐Ÿ›  Fixed

    • ๐Ÿšš Bonny.Mix.Operator - fix manifest generation: remove version from apiGroup in ClusterRole.
  • v1.0.0-rc.2 Changes

    November 15, 2022

    โž• 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.
  • v1.0.0-rc.1

    October 31, 2022
  • v1.0.0-rc.0 Changes

    October 29, 2022

    ๐Ÿ”„ Changed

    ๐Ÿ”จ With Version 1.0.0, Bonny got a thorough refactoring. Besides this changelog, you might consider the several guides (e.g. the [migration guide](./guides/migration.mid))

    • 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 Changes

    August 31, 2022

    โšก๏ธ Updated

    • ๐Ÿš€ Use name of application in Deployments instead of service account name. (#142)

    ๐Ÿ›  Fixed

    • CRD manifest generation for apiextensions.k8s.io/v1 (#143, #117, #101)
  • v0.5.1 Changes

    May 25, 2022

    ๐Ÿ›  Fixed

    • โž• Add missing priv folder to package
  • v0.5.0 Changes

    April 23, 2022

    ๐Ÿ”– Version 0.5.0 comes with some major changes. Please read through the [migration guide](./guides/migrations.md) before upgrading.

  • v0.4.4 Changes

    August 09, 2021

    โž• Added

    • @impl to macros for clean compilation
    • error handling for mid-stream errors
  • v0.4.3 Changes

    June 09, 2020

    โž• Added

    • Configure watched namespace via config.exs or BONNY_POD_NAMESPACE
    • BONNY_POD_NAMESPACE supports "magic" value "ALL"