View Source Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

unreleased

Unreleased

1-0-0-rc-1-2022-10-31

[1.0.0-rc.1] - 2022-10-31

Added

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

1-0-0-rc-0-2022-10-29

[1.0.0-rc.0] - 2022-10-29

changed

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)

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

Added

deprecated

Deprecated

0-5-2-2022-08-31

[0.5.2] - 2022-08-31

updated

Updated

  • Use name of application in Deployments instead of service account name. (#142)

fixed

Fixed

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

0-5-1-2022-05-25

[0.5.1] - 2022-05-25

fixed-1

Fixed

  • Add missing priv folder to package

0-5-0-2022-04-23

[0.5.0] - 2022-04-23

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

added-1

Added

updated-1

Updated

deprecated-1

Deprecated

0-4-4-2021-08-09

[0.4.4] - 2021-08-09

added-2

Added

  • @impl to macros for clean compilation
  • error handling for mid-stream errors

0-4-3-2020-06-09

[0.4.3] - 2020-06-09

added-3

Added

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

0-4-1-2019-11-26

[0.4.1] - 2019-11-26

added-4

Added

  • Support for reconciling/watching core resources

0-4-0-2019-10-23

[0.4.0] - 2019-10-23

added-5

Added

  • Basic integration w/ Notion for telemetry
  • Bonny.Server.Reconciler continually process a list operation
  • Bonny.Server.Scheduler write custom kubernetes schedulers
  • Added Bonny.PeriodicTask for scheduling periodically executed functions

changed-1

Changed

  • Dockerfile gen uses OTP releases

removed

Removed

  • Removed reconcile_batch_size

0-3-3-2019-06-25

[0.3.3] - 2019-06-25

added-6

Added

  • Add additional printer columns
  • Bonny.Naming module
  • .credo.exs

0-3-2-2019-04-15

[0.3.2] - 2019-04-15

added-7

Added

  • Bonny.Watcher and Bonny.Reconciler telemetry events

0-3-1-2019-04-11

[0.3.1] - 2019-04-11

added-8

Added

  • Support for a reconcile/1 callback
  • reconcile_every config option to schedule how often to run reconciliation
  • reconcile_batch_size to set the size of the HTTP GET limit when fetching batches of items to reconcile
  • Added {:error, binary} as a return value of Controller lifecycle methods
  • Implemented :telemetry library
  • Bonny.Sys.Event.events/0 exposes list of telemetry events
  • mix bonny.gen.manifest --local for building manifests w/o a Deployment for local testing
  • cluster_name: :default config options. Now uses k8s cluster registration configuration.

changed-2

Changed

fixed-2

Fixed

  • Receiving :DOWN messages no longer crashes Watcher #20
  • Issue with partially received events #43
  • Fix invalid singular name generation from module names "MyMod" -> my_mod; "MyMod" -> mymod

removed-1

Removed

  • Renamed group_version -> api_version
  • Renamed Bonny.CRD.plural/1 -> Bonny.CRD.kind/1
  • Bypass from test suite
  • Impl.parse_metadata/1
  • kubeconf_file and kubeconf_opts config options

0-3-0-2019-03-04

[0.3.0] - 2019-03-04

changed-3

Changed

  • Replaced k8s_conf library with k8s.

0-2-3-2019-01-13

[0.2.3] - 2019-01-13

added-9

Added

  • Initial public release.
  • Controller lifecycle implementation.
  • CRD Watcher.
  • mix task: controller generator
  • mix task: dockerfile generator
  • mix task: k8s manifest generator