controller-tools VS kubebuilder-declarative-pattern

Compare controller-tools vs kubebuilder-declarative-pattern and see what are their differences.

controller-tools

Tools to use with the controller-runtime libraries (by kubernetes-sigs)

kubebuilder-declarative-pattern

A toolkit for building declarative operators with kubebuilder (by kubernetes-sigs)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
controller-tools kubebuilder-declarative-pattern
1 1
681 249
3.2% 2.8%
8.4 7.1
5 days ago about 7 hours ago
Go Go
Apache License 2.0 Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

controller-tools

Posts with mentions or reviews of controller-tools. We have used some of these posts to build our list of alternatives and similar projects.

kubebuilder-declarative-pattern

Posts with mentions or reviews of kubebuilder-declarative-pattern. We have used some of these posts to build our list of alternatives and similar projects.
  • Thoughts on kubebuilder-declarative-pattern?
    1 project | /r/kubernetes | 23 Jul 2023
    Hi, first time raising a post here. What are your thoughts on kubebuilder-declarative-pattern? My team and I has been working on our first k8s operator with operator-sdk for a while now, though it's only at the level of installation atm. Despite that, we found writing the simpliest Reconcilation logic of applying YAML idempotently to be complex enough and quite error-prone. (e.g. exposing a property to override `Service` resources name requires additional controller-logic to check if there's a service account of different name created previously and prune it to prevent dangling) . This is where I stumble across kubebuilder-declarative-pattern plugin, which has many nice features (e.g. apply --prune --applyset to address issue above), declarative-YAML and Reconcile logic out of the box.

What are some alternatives?

When comparing controller-tools and kubebuilder-declarative-pattern you can also consider the following projects:

controller-runtime - Repo for the controller-runtime subproject of kubebuilder (sig-apimachinery)

client-python - Official Python client library for kubernetes [Moved to: https://github.com/kubernetes-client/python]

kubebuilder - Kubebuilder - SDK for building Kubernetes APIs using CRDs

yaml - A better way to marshal and unmarshal YAML in Golang

cluster-api-provider-oci - Kubernetes Cluster API Provider for Oracle Cloud Infrastructure

javascript - Javascript client

python - Official Python client library for kubernetes