Skip to content

Latest commit

 

History

History
247 lines (151 loc) · 8.17 KB

CHANGELOG.md

File metadata and controls

247 lines (151 loc) · 8.17 KB

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.

  • Bug fix, removing deprecated cluster setting kv.snapshot_recovery.max_rate from being checked during decommission.
  • Bug fix to return correct error message if value passed for whenUnsatisfiable under topologySpreadConstraints field is invalid.
  • Add openshift release process for cockroach operator

Added

  • Upgrade the underlying k8s dependencies from 1.20 to 1.21 to support operator installation on k8s 1.25+.

Fixed

  • Install init container certs with 600 permissions
  • Ensure operator can connect to DBs in all namespaces

Added

  • AutomountServiceAccountToken field for cluster spec to allow mounting the default service account token.

Fixed

  • Delete the CancelLoop function, fixing a cluster status update bug
  • Correctly detect failed version checker Pods
  • retry cluster status updates, reducing test flakes

Changed

  • Update validation webhook to reject changes to cluster spec's AdditionalLabels field

Fixed

  • Grant operator deletecollection permissions to fix fullcluster restart flow
  • Grant operator list and update permissions on pvcs to fix pvc resize flow
  • Bump TerminationGracePeriodSeconds from 1m to 5m
  • Prefer user added --join flags over default when explicitly passed

Added

  • Custom logging configuration can be used through the configmap when spec.logConfigMap is provided.

Fixed

  • Fix nil-pointer errors when spec.Image is not provided.
  • Update gogo/protobuf to address CVE-2021-3121

Fixed

  • #863 - Add flag for leader-election-id to enable leader election support

Changed

  • Image digests now calculated when generating templates, rather than when creating bundles
  • Use bazelisk for CI workflows

Fixed

  • Bundle generation for updated OpenShift marketplace requirements
  • Related images added to manager env for supporting cockroachDBVersion in the spec
  • Fixed operator crash loop when cockroachDBVersion is used.
  • Fix add custom annotations to the pod created by the job
  • Fix issue when sidecar container is injected to job pod
  • Add support for pod TopologySpreadConstraint and associated feature gate

Changed

  • Now validates if pvc.Volumemode set correctly to Filesystem

Fixed

  • Mark nodes as decommissioned after draining the node

Added

  • Support for UI and SQL Ingress

Added

  • Fixed resource requirements for vcheck container
  • Ability to run the operator as a cluster scoped operator or a namespace scoped one

Changed

  • Deprecated legacy OpenShift packaging format in favor of new bundle format
  • Removed unused beta channel
  • Dynamically create instance specific service account, role, and role binding
  • OpenShift deployment now allows the operator to run for all namespaces

Fixed

  • Boilerplate test after updating to Go 1.17
  • Permissions for sts/scale subresource

Deleted

  • Versioned Dockerfiles for OpenShift

Added

  • Support for nodeSelectors

Changed

  • Cleanup of initialization and structure of Actor and Director

Fixed

  • Error on startup in OpenShift related to webhook configuration
  • Finalizer permissions to address cannot set blockOwnerDeletion if an ownerReference refers to a resource you can’t set finalizers on issue

Changed

  • Webhook CA certificate is stored in cockroach-operator-webhook-ca (autogenerated if missing)
  • Webhook server certificates are now ephemeral and created at manager pod startup

Deleted

  • References to certificates/v1beta1 preventing the operator from working on K8s 1.22

Added

  • Added CHANGELOG.md to track changes across releases
  • More information to operator logs (e.g. reconcilerID)
  • Support for taints and tolerations
  • Support for custom annotations
  • Mutating and validating webhooks and associated TLS configuration
  • Several enhancements for local development (e.g. make dev/up)

Changed

  • Refactor templates to leverage kustomize bases/overlays in //config
  • Updated validation markers for the CRD (required, minimum, etc.)
  • Introduced Director to consolidate the handles logic from the actors
  • Standardized on cockroachdb/errors for wrapping errors
  • Made enormous-sized tests run for less long

Fixed

  • Propagate affinity and tolerations for version checker job
  • Ensure the controller watches owned job objects
  • CertificateGenerated conditional correctly set during deploys
  • No longer requeueing permanent errors
  • PVCs no longer missing AdditionalLabels
  • Some flakiness in e2e tests
  • Version checker jobs no longer pile up when pods take >2m to come up

Added

  • More information to operator logs (e.g. reconcilerID)

Changed

  • Refactor templates to leverage kustomize bases/overlays in //config

Fixed

  • Propagate affinity and tolerations for version checker job
  • Ensure the controller watches owned job objects
  • CertificateGenerated conditional correctly set during deploys

Added

  • Support for taints and tolerations
  • Support for custom annotations
  • Mutating and validating webhooks and associated TLS configuration
  • Several enhancements for local development (e.g. make dev/up)

Changed

  • Updated validation markers for the CRD (required, minimum, etc.)
  • Introduced Director to consolidate the handles logic from the actors
  • Standardized on cockroachdb/errors for wrapping errors

Fixed

  • No longer requeueing permanent errors
  • PVCs no longer missing AdditionalLabels
  • Some flakiness in e2e tests
  • Version checker jobs no longer pile up when pods take >2m to come up

Added

  • AdditionalLabels which are added to all managed resources
  • Examples for new features (addition labels, affinity rules, etc)
  • e2e tests for EKS, OpenShift, and downgrading

Changed

  • Skip the initContainer when running an insecure cluster
  • Can now pass additional parameters to OpenShift
  • Updating of crdbversions.yaml now automated via GitHub actions

Deleted

  • Dead code from multiple packages
  • Dependency on ginko and gomega