Skip to content
This repository has been archived by the owner on Jul 28, 2023. It is now read-only.

Latest commit

 

History

History
135 lines (87 loc) · 8.94 KB

CHANGELOG.md

File metadata and controls

135 lines (87 loc) · 8.94 KB

Changelog

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

Added

  • Added support for embedding service bindings into a custom resource (#267, #111)
  • Added support for affinity settings such as nodeAffinity, podAffinity and podAntiAffinity (#267, #116)

Changed

  • Breaking change: In order for the operator to detect Service Binding custom resources automatically ("auto-detect" functionality), the name of the binding resource must follow the <CR_NAME>-binding format (e.g. my-app-binding) (#267, #111)

Fixed

  • Some monitoring configurations such as bearerTokenSecret are not propagated to the created ServiceMonitor (#267, #157, #116)

Fixed

  • Operator crash when Ingress is created without defining spec.route field (#261)
  • Unnecessary pod restarts due to adding kubectl.kubernetes.io/last-applied-configuration to resources created by the operator (#261)

Added

  • Added Ingress (vanilla) support (#259, #79)
  • Added support for external service bindings (#259, #76)
  • Added additional service ports support (#259, #80)
  • Added support to specify NodePort on service (#259, #60)

Fixed

  • Auto-scaling (HPA) not working as expected (#72)
  • Operator crashes on some cluster due to optional CRDs (Knative Service, ServiceMonitor) not being present (#254)
  • Update the predicates for watching StatefulSet and Deployment sub-resource to check for generation to minimize number of reconciles (#254)

Added

  • Added support for integration with OpenShift's Certificate Management. (#214)
  • Added support for referencing images in image streams. (#218)
  • Added support to specify application name to group related resources. (#237)
  • Added support for sidecar containers. (#237)
  • Added optional targetPort field to CRD (#181)
  • Added support for naming service port. (#237)
  • Added must-gather scripts for troubleshooting. (#209)
  • Added the shortnames app and apps to the AppsodyApplication CRD. (#198)
  • Added OpenShift specific annotations (#54)
  • Set port name for Knative service if specified (#55)

Changed

  • Changed the match label of the ServiceMonitor created by operator from app.appsody.dev/monitor to monitor.appsody.dev/enabled
  • Breaking change: When service.consumes[].namespace is not specified, injected name of environment variable follows <SERVICE-NAME>_<KEY> format and binding information are mounted at <mountPath>/<service_name>. (#27 and #46)

Added

  • Added support for basic service binding. (#187)
  • Added support for init containers array. (#188)

Changed

  • Changed the default labels and annotations to more closely align with the generic operator and OpenShift guidelines (#233)
  • Changed the label corresponding to metadata.name to app.kubernetes.io/instance and made former label app.kubernetes.io/name user configurable. (#179)

Added

  • Allow users to add new annotations or override default annotations for resources created by the operator via setting annotations on AppsodyApplication CRs. (#177)

Added

  • Added documentation on how to do canary testing with the standard Route resource. (#143)

Changed

  • Changed the label corresponding to the Appsody Stack information from app.appsody.dev/stack to stack.appsody.dev/id. (#169)

Added

  • Support for watching multiple namespaces by setting WATCH_NAMESPACE to a comma-separated list of namespaces. (#114)
  • Allow users to add new labels or override default labels for resources created by the operator via setting labels on AppsodyApplication CRs. (#118)
  • Support for automatically creating and configuring ServiceMonitor resource for integration with Prometheus Operator. (#125)
  • Automatically configure the AppsodyApplication's Kubernetes resources to allow automatic creation of an application definition by kAppNav, Kubernetes Application Navigator. (#128 and #135)

Changed

  • Removed default values for all stacks from appsody-operator-defaults ConfigMap since Appsody Stacks would already have defaults. (#104)
  • Made the stack field not required to specify in AppsodyApplication. (#125)

Fixed

  • Breaking change: When deploying to Knative, Knative route is only accessible if expose is set to true. This is to make expose behaviour consistent with non-Knative deployment so users need to explicitly declare to make their application accessible externally. (#122)
  • Fixed an issue for basic storage scenario (i.e. specifying storage.mountPath and storage.size) that if storage.size is not specified or is not valid, handle it gracefully. (#130)

The initial release of the Appsody Operator 🎉🥳