An operator to manage node labels, annotations, and taints.

Overview

NodeConfig Operator

An operator to manage node labels, annotations and taints based on NodeConfig Custom Resource.

Comparison to alternatives:

  1. https://github.com/barpilot/node-labeler-operator: this one does support node taints and labels, but can only select nodes based on labels, not node name pattern (regex). Also it is not an actively maintained project and has no activity since 2018.

  2. https://github.com/openshift-kni/node-label-operator: this one does support node pattern, but does not support node taints and annotations. Also this operator is deprectated and not maintained anymore. see this issue.

This operator supports features of both aforementioned operators.

Behavior of the operator

  • If a node matches multiple NodeConfig, and the same label ro spec.taint is defined in both, one randomly will be applied (last one in listing).
  • No such concept as owned labels. It only adds/modify labels, no label removal. Also only adds/modifies taints based on keys, no removal. (it will be supported in future)

Instructions

Development

  • make generate update the generated code for that resource type.
  • make manifests Generating CRD manifests.
  • make test Run tests.

Build

Export your image name:

export IMG=ghcr.io/your-repo-path/image-name:latest
  • make build builds golang app locally.
  • make docker-build build docker image locally.
  • make docker-push push container image to registry.

Run, Deploy

  • make run run app locally
  • make deploy deploy to k8s.

Clean up

  • make undeploy delete resouces in k8s.

Configuration

Flags:

  -health-probe-bind-address string
        The address the probe endpoint binds to. (default ":8081")
  -kubeconfig string
        Paths to a kubeconfig. Only required if out-of-cluster.
  -leader-elect
        Enable leader election for controller manager. Enabling this will ensure there is only one active controller manager.
  -metrics-bind-address string
        The address the metric endpoint binds to. (default ":8080")
  -zap-devel
        Development Mode defaults(encoder=consoleEncoder,logLevel=Debug,stackTraceLevel=Warn). Production Mode defaults(encoder=jsonEncoder,logLevel=Info,stackTraceLevel=Error) (default true)
  -zap-encoder value
        Zap log encoding (one of 'json' or 'console')
  -zap-log-level value
        Zap Level to configure the verbosity of logging. Can be one of 'debug', 'info', 'error', or any integer value > 0 which corresponds to custom debug levels of increasing verbosity
  -zap-stacktrace-level value
        Zap Level at and above which stacktraces are captured (one of 'info', 'error', 'panic').

For sample NodeConfig objects, see config/samples directory.

Roadmap

  • OwnedLabels
  • Selecting Nodes based on label

Metrics

Metric Notes
controller_runtime_active_workers Number of currently used workers per controller
controller_runtime_max_concurrent_reconciles Maximum number of concurrent reconciles per controller
controller_runtime_reconcile_errors_total Total number of reconciliation errors per controller
controller_runtime_reconcile_time_seconds Length of time per reconciliation per controller
controller_runtime_reconcile_total Total number of reconciliations per controller
rest_client_request_latency_seconds Request latency in seconds. Broken down by verb and URL.
rest_client_requests_total Number of HTTP requests, partitioned by status code, method, and host.
workqueue_adds_total Total number of adds handled by workqueue
workqueue_depth Current depth of workqueue
workqueue_longest_running_processor_seconds How many seconds has the longest running processor for workqueue been running.
workqueue_queue_duration_seconds How long in seconds an item stays in workqueue before being requested
workqueue_retries_total Total number of retries handled by workqueue
workqueue_unfinished_work_seconds How many seconds of work has been done that is in progress and hasn't been observed by work_duration. Large values indicate stuck threads. One can deduce the number of stuck threads by observing the rate at which this increases.
workqueue_work_duration_seconds How long in seconds processing an item from workqueue takes.

Security

Reporting security vulnerabilities

If you find a security vulnerability or any security related issues, please DO NOT file a public issue, instead send your report privately to [email protected]. Security reports are greatly appreciated and we will publicly thank you for it.

License

Apache-2.0 License, see LICENSE.

Issues
  • chore(deps): bump k8s.io/apimachinery from 0.23.0 to 0.23.4

    chore(deps): bump k8s.io/apimachinery from 0.23.0 to 0.23.4

    Bumps k8s.io/apimachinery from 0.23.0 to 0.23.4.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    opened by dependabot[bot] 3
  • chore(deps): bump golang from 1.17.5 to 1.17.6

    chore(deps): bump golang from 1.17.5 to 1.17.6

    Bumps golang from 1.17.5 to 1.17.6.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    opened by dependabot[bot] 3
  • chore(deps): bump sigs.k8s.io/controller-runtime from 0.10.2 to 0.10.3

    chore(deps): bump sigs.k8s.io/controller-runtime from 0.10.2 to 0.10.3

    Bumps sigs.k8s.io/controller-runtime from 0.10.2 to 0.10.3.

    Release notes

    Sourced from sigs.k8s.io/controller-runtime's releases.

    v0.10.3

    Changes since v0.10.2

    :bug: Bug Fixes

    • Start web hooks first (#1690)

    :seedling: Others

    • Improve startup logs (#1692)
    • fake-client: extend builder with an option to set a RESTMapper (#1686)

    Thanks to all our contributors! 😊

    Commits
    • f8472ce Merge pull request #1690 from fabriziopandini/start-webhooks-first
    • 708d539 start healhprobes sync
    • b6a5752 Start web hooks first
    • 43ea648 Merge pull request #1692 from k8s-infra-cherrypick-robot/cherry-pick-1687-to-...
    • 88a57ab Improve startup logs
    • 307b8e1 Merge pull request #1686 from k8s-infra-cherrypick-robot/cherry-pick-1683-to-...
    • 5767de5 fake-client: extend builder with an option to set a RESTMapper
    • See full diff in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    opened by dependabot[bot] 3
  • chore(deps): bump k8s.io/apimachinery from 0.22.2 to 0.22.3

    chore(deps): bump k8s.io/apimachinery from 0.22.2 to 0.22.3

    Bumps k8s.io/apimachinery from 0.22.2 to 0.22.3.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    opened by dependabot[bot] 3
  • chore(deps): bump k8s.io/client-go from 0.22.2 to 0.22.3

    chore(deps): bump k8s.io/client-go from 0.22.2 to 0.22.3

    Bumps k8s.io/client-go from 0.22.2 to 0.22.3.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    opened by dependabot[bot] 3
  • chore(deps): bump k8s.io/api from 0.22.2 to 0.22.3

    chore(deps): bump k8s.io/api from 0.22.2 to 0.22.3

    Bumps k8s.io/api from 0.22.2 to 0.22.3.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    opened by dependabot[bot] 3
  • chore(deps): bump github.com/onsi/ginkgo from 1.16.4 to 1.16.5

    chore(deps): bump github.com/onsi/ginkgo from 1.16.4 to 1.16.5

    Bumps github.com/onsi/ginkgo from 1.16.4 to 1.16.5.

    Release notes

    Sourced from github.com/onsi/ginkgo's releases.

    v1.16.5

    1.16.5

    Ginkgo 2.0 now has a Release Candidate. 1.16.5 advertises the existence of the RC. 1.16.5 deprecates GinkgoParallelNode in favor of GinkgoParallelProcess

    You can silence the RC advertisement by setting an ACK_GINKG_RC=true environment variable or creating a file in your home directory called .ack-ginkgo-rc

    Changelog

    Sourced from github.com/onsi/ginkgo's changelog.

    1.16.5

    Ginkgo 2.0 now has a Release Candidate. 1.16.5 advertises the existence of the RC. 1.16.5 deprecates GinkgoParallelNode in favor of GinkgoParallelProcess

    You can silence the RC advertisement by setting an ACK_GINKG_RC=true environment variable or creating a file in your home directory called .ack-ginkgo-rc

    Commits
    • d38b9d9 v1.16.5
    • b55f80d Mention release candidate and deprecate GinkgoParallelNode in favor of Ginkgo...
    • d8e9d10 Move v2 to ver2 to play better with the go toolchain
    • 8a172cc Advertise GInkgo 2.0 beta
    • a12d699 Add no-op Setenv to GinkgoT
    • 81705fc chore: Go 1.17 released
    • f250977 remove travis-ci
    • afce52e drop 1.15 in github test workflow
    • See full diff in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    opened by dependabot[bot] 3
  • chore(deps): bump k8s.io/api from 0.23.5 to 0.24.2

    chore(deps): bump k8s.io/api from 0.23.5 to 0.24.2

    Bumps k8s.io/api from 0.23.5 to 0.24.2.

    Commits
    • 7e99a1e Update dependencies to v0.24.2 tag
    • 0bf1867 Revert "Introduce APIs to support multiple ClusterCIDRs (#108290)"
    • 2de6996 Merge pull request #109241 from ravisantoshgudimetla/sts-ar-optional
    • 7734d26 [sts] api: Make available replicas optional
    • 38ec09a [sts] Generated: Make available replicas optional
    • ec84bcb Merge pull request #109178 from liggitt/openapi-master
    • e3797f2 Drop enum tag from certificate request condition
    • 02c2207 Merge pull request #109151 from Argh4k/r-101566
    • 1eb735b Revert "Field status.hostIPs added for Pod (#101566)"
    • 290a349 Introduce APIs to support multiple ClusterCIDRs (#108290)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    opened by dependabot[bot] 2
  • chore(deps): bump k8s.io/client-go from 0.23.5 to 0.24.2

    chore(deps): bump k8s.io/client-go from 0.23.5 to 0.24.2

    Bumps k8s.io/client-go from 0.23.5 to 0.24.2.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    opened by dependabot[bot] 2
  • chore(deps): bump k8s.io/apimachinery from 0.23.5 to 0.24.2

    chore(deps): bump k8s.io/apimachinery from 0.23.5 to 0.24.2

    Bumps k8s.io/apimachinery from 0.23.5 to 0.24.2.

    Commits
    • 97e5df2 fix remove implicit copy of a lock
    • 6550efd Merge pull request #109102 from liggitt/darwin-tls
    • 00f0711 Merge pull request #109031 from Jefftree/openapiv3beta
    • 53a85ef Tolerate additional error messages in TLS unit tests
    • 9b5b68c generated: Update kube-openapi and vendor
    • 31e52c9 Merge pull request #108126 from sanposhiho/doc/generatedname
    • 3b8fb46 Merge pull request #108713 from jiahuif-forks/feature/openapi/intstr-any-of
    • dd2f21c fix the doc about generateName conflict
    • 2866f23 oneOf types for IntOrString
    • 7b6c37e oneOf types for Quantity
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    opened by dependabot[bot] 2
  • chore(deps): bump sigs.k8s.io/controller-runtime from 0.11.2 to 0.12.2

    chore(deps): bump sigs.k8s.io/controller-runtime from 0.11.2 to 0.12.2

    Bumps sigs.k8s.io/controller-runtime from 0.11.2 to 0.12.2.

    Release notes

    Sourced from sigs.k8s.io/controller-runtime's releases.

    v0.12.2

    changes since v0.12.1

    :sparkles: New Features

    • Allow TLS to be entirely configured on webhook server (#1914)

    :bug: Bug Fixes

    • Fix webhook write response error for broken HTTP connection (#1931)
    • Fix issue with starting multiple test envs (#1913)
    • don't override global log in builder (#1911)

    Thanks to all our contributors!

    v0.12.1

    changes since v0.12.0

    :bug: Bug Fixes

    • fix loading CRDs from multiple directories in envtests (#1905)

    Thanks to all our contributors!

    v0.12.0

    changes since v0.11.2

    :warning: Breaking Changes

    • make fake client delete operations honor dry run opt (#1873)
    • logging: align to Kubernetes structured logging, add reconcileID (#1827)
    • leaderelection: use 'leases' as default resource lock object (#1773)

    :sparkles: New Features

    • certwatcher: add metrics to monitor certificate reads (#1877)
    • Bump to k8s.io v1.24.0 (#1885)
    • Bump to k8s.io v1.24.0-rc.1 (#1879)
    • return a bool from AddFinalizer and RemoveFinalizer (#1636)
    • update client-go to 1.24-beta (#1864)
    • Add BaseContext to manager Options for use with Runnables (#1846)
    • Upgrade k8s dependencies from 1.23.0 to 1.23.5 (#1843)
    • Add Kubernetes Gomega extension with to make testing controllers easier (#1767)
    • manager.go: Fix a few Options fields' go-docs (#1818)
    • Bump go in setup-envtest (#1777)

    :bug: Bug Fixes

    • Fix panic for lazy dynamicRESTMapper (#1891)
    • pkg: envtest: komega: fix UpdateStatus & typos in godoc (#1862)

    ... (truncated)

    Commits
    • f561596 ✨ Bump k8s.io packages to v1.24.2 (#1940)
    • 697e66d Merge pull request #1931 from k8s-infra-cherrypick-robot/cherry-pick-1930-to-...
    • 0d4500b Fix webhook write response error for broken HTTP connection
    • d15de97 Merge pull request #1914 from k8s-infra-cherrypick-robot/cherry-pick-1897-to-...
    • 54d6a15 Allow TLS config to be entirely configured on webhook server
    • 160efcb Merge pull request #1913 from k8s-infra-cherrypick-robot/cherry-pick-1910-to-...
    • 6c84577 Fix issue with starting multiple test envs
    • 1efdbd7 Merge pull request #1911 from k8s-infra-cherrypick-robot/cherry-pick-1907-to-...
    • 19f8d99 bug: don't override global log in builder
    • 3966c67 :bug: fix loading CRDs from multiple directories in envtests (#1905)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    opened by dependabot[bot] 2
  • chore(deps): bump k8s.io/api from 0.23.5 to 0.24.3

    chore(deps): bump k8s.io/api from 0.23.5 to 0.24.3

    Bumps k8s.io/api from 0.23.5 to 0.24.3.

    Commits
    • 2325aaa Update dependencies to v0.24.3 tag
    • 0bf1867 Revert "Introduce APIs to support multiple ClusterCIDRs (#108290)"
    • 2de6996 Merge pull request #109241 from ravisantoshgudimetla/sts-ar-optional
    • 7734d26 [sts] api: Make available replicas optional
    • 38ec09a [sts] Generated: Make available replicas optional
    • ec84bcb Merge pull request #109178 from liggitt/openapi-master
    • e3797f2 Drop enum tag from certificate request condition
    • 02c2207 Merge pull request #109151 from Argh4k/r-101566
    • 1eb735b Revert "Field status.hostIPs added for Pod (#101566)"
    • 290a349 Introduce APIs to support multiple ClusterCIDRs (#108290)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    opened by dependabot[bot] 1
  • chore(deps): bump k8s.io/apimachinery from 0.23.5 to 0.24.3

    chore(deps): bump k8s.io/apimachinery from 0.23.5 to 0.24.3

    Bumps k8s.io/apimachinery from 0.23.5 to 0.24.3.

    Commits
    • 97e5df2 fix remove implicit copy of a lock
    • 6550efd Merge pull request #109102 from liggitt/darwin-tls
    • 00f0711 Merge pull request #109031 from Jefftree/openapiv3beta
    • 53a85ef Tolerate additional error messages in TLS unit tests
    • 9b5b68c generated: Update kube-openapi and vendor
    • 31e52c9 Merge pull request #108126 from sanposhiho/doc/generatedname
    • 3b8fb46 Merge pull request #108713 from jiahuif-forks/feature/openapi/intstr-any-of
    • dd2f21c fix the doc about generateName conflict
    • 2866f23 oneOf types for IntOrString
    • 7b6c37e oneOf types for Quantity
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    opened by dependabot[bot] 1
  • chore(deps): bump sigs.k8s.io/controller-runtime from 0.11.2 to 0.12.3

    chore(deps): bump sigs.k8s.io/controller-runtime from 0.11.2 to 0.12.3

    Bumps sigs.k8s.io/controller-runtime from 0.11.2 to 0.12.3.

    Release notes

    Sourced from sigs.k8s.io/controller-runtime's releases.

    v0.12.3

    What's Changed

    Full Changelog: https://github.com/kubernetes-sigs/controller-runtime/compare/v0.12.2...v0.12.3

    v0.12.2

    changes since v0.12.1

    :sparkles: New Features

    • Allow TLS to be entirely configured on webhook server (#1914)

    :bug: Bug Fixes

    • Fix webhook write response error for broken HTTP connection (#1931)
    • Fix issue with starting multiple test envs (#1913)
    • don't override global log in builder (#1911)

    Thanks to all our contributors!

    v0.12.1

    changes since v0.12.0

    :bug: Bug Fixes

    • fix loading CRDs from multiple directories in envtests (#1905)

    Thanks to all our contributors!

    v0.12.0

    changes since v0.11.2

    :warning: Breaking Changes

    • make fake client delete operations honor dry run opt (#1873)
    • logging: align to Kubernetes structured logging, add reconcileID (#1827)
    • leaderelection: use 'leases' as default resource lock object (#1773)

    :sparkles: New Features

    • certwatcher: add metrics to monitor certificate reads (#1877)
    • Bump to k8s.io v1.24.0 (#1885)
    • Bump to k8s.io v1.24.0-rc.1 (#1879)
    • return a bool from AddFinalizer and RemoveFinalizer (#1636)
    • update client-go to 1.24-beta (#1864)
    • Add BaseContext to manager Options for use with Runnables (#1846)
    • Upgrade k8s dependencies from 1.23.0 to 1.23.5 (#1843)
    • Add Kubernetes Gomega extension with to make testing controllers easier (#1767)

    ... (truncated)

    Commits
    • cd0058a Merge pull request #1952 from k8s-infra-cherrypick-robot/cherry-pick-1950-to-...
    • b698f2b Provide access to admission.Request in custom validator/defaulter
    • f561596 ✨ Bump k8s.io packages to v1.24.2 (#1940)
    • 697e66d Merge pull request #1931 from k8s-infra-cherrypick-robot/cherry-pick-1930-to-...
    • 0d4500b Fix webhook write response error for broken HTTP connection
    • d15de97 Merge pull request #1914 from k8s-infra-cherrypick-robot/cherry-pick-1897-to-...
    • 54d6a15 Allow TLS config to be entirely configured on webhook server
    • 160efcb Merge pull request #1913 from k8s-infra-cherrypick-robot/cherry-pick-1910-to-...
    • 6c84577 Fix issue with starting multiple test envs
    • 1efdbd7 Merge pull request #1911 from k8s-infra-cherrypick-robot/cherry-pick-1907-to-...
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    opened by dependabot[bot] 1
  • chore(deps): bump k8s.io/client-go from 0.23.5 to 0.24.3

    chore(deps): bump k8s.io/client-go from 0.23.5 to 0.24.3

    Bumps k8s.io/client-go from 0.23.5 to 0.24.3.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    opened by dependabot[bot] 1
  • chore(deps): bump github.com/onsi/gomega from 1.18.1 to 1.20.0

    chore(deps): bump github.com/onsi/gomega from 1.18.1 to 1.20.0

    Bumps github.com/onsi/gomega from 1.18.1 to 1.20.0.

    Release notes

    Sourced from github.com/onsi/gomega's releases.

    v1.20.0

    Features

    • New gleak experimental goroutine leak detection package! (#538) [85ba7bc]
    • New BeComparableTo matcher(#546) that uses gocmp to make comparisons [e77ea75]
    • New HaveExistingField matcher (#553) [fd130e1]
    • Document how to wrap Gomega (#539) [56714a4]

    Fixes

    • Support pointer receivers in HaveField; fixes #543 (#544) [8dab36e]

    Maintenance

    • Bump various dependencies:
      • Upgrade to yaml.v3 (#556) [f5a83b1]
      • Bump github/codeql-action from 1 to 2 (#549) [52f5adf]
      • Bump github.com/google/go-cmp from 0.5.7 to 0.5.8 (#551) [5f3942d]
      • Bump nokogiri from 1.13.4 to 1.13.6 in /docs (#554) [eb4b4c2]
      • Use latest ginkgo (#535) [1c29028]
      • Bump nokogiri from 1.13.3 to 1.13.4 in /docs (#541) [1ce84d5]
      • Bump actions/setup-go from 2 to 3 (#540) [755485e]
      • Bump nokogiri from 1.12.5 to 1.13.3 in /docs (#522) [4fbb0dc]
      • Bump actions/checkout from 2 to 3 (#526) [ac49202]

    1.19.0

    Features

    • New HaveEach matcher to ensure that each and every element in an array, slice, or map satisfies the passed in matcher. (#523) [9fc2ae2] (#524) [c8ba582]
    • Users can now wrap the Gomega interface to implement custom behavior on each assertion. (#521) [1f2e714]
    • ContainElement now accepts an additional pointer argument. Elements that satisfy the matcher are stored in the pointer enabling developers to easily add subsequent, more detailed, assertions against the matching element. (#527) [1a4e27f]

    Fixes

    • update RELEASING instructions to match ginkgo [0917cde]
    • Bump github.com/onsi/ginkgo/v2 from 2.0.0 to 2.1.3 (#519) [49ab4b0]
    • Fix CVE-2021-38561 (#534) [f1b4456]
    • Fix max number of samples in experiments on non-64-bit systems. (#528) [1c84497]
    • Remove dependency on ginkgo v1.16.4 (#530) [4dea8d5]
    • Fix for Go 1.18 (#532) [56d2a29]
    • Document precendence of timeouts (#533) [b607941]

    v1.19.0

    Features

    • New HaveEach matcher to ensure that each and every element in an array, slice, or map satisfies the passed in matcher. (#523) [9fc2ae2] (#524) [c8ba582]
    • Users can now wrap the Gomega interface to implement custom behavior on each assertion. (#521) [1f2e714]
    • ContainElement now accepts an additional pointer argument. Elements that satisfy the matcher are stored in the pointer enabling developers to easily add subsequent, more detailed, assertions against the matching element. (#527) [1a4e27f]

    Fixes

    • update RELEASING instructions to match ginkgo [0917cde]
    • Bump github.com/onsi/ginkgo/v2 from 2.0.0 to 2.1.3 (#519) [49ab4b0]
    • Fix CVE-2021-38561 (#534) [f1b4456]
    • Fix max number of samples in experiments on non-64-bit systems. (#528) [1c84497]
    • Remove dependency on ginkgo v1.16.4 (#530) [4dea8d5]

    ... (truncated)

    Changelog

    Sourced from github.com/onsi/gomega's changelog.

    1.20.0

    Features

    • New gleak experimental goroutine leak detection package! (#538) [85ba7bc]
    • New BeComparableTo matcher(#546) that uses gocmp to make comparisons [e77ea75]
    • New HaveExistingField matcher (#553) [fd130e1]
    • Document how to wrap Gomega (#539) [56714a4]

    Fixes

    • Support pointer receivers in HaveField; fixes #543 (#544) [8dab36e]

    Maintenance

    • Bump various dependencies:
      • Upgrade to yaml.v3 (#556) [f5a83b1]
      • Bump github/codeql-action from 1 to 2 (#549) [52f5adf]
      • Bump github.com/google/go-cmp from 0.5.7 to 0.5.8 (#551) [5f3942d]
      • Bump nokogiri from 1.13.4 to 1.13.6 in /docs (#554) [eb4b4c2]
      • Use latest ginkgo (#535) [1c29028]
      • Bump nokogiri from 1.13.3 to 1.13.4 in /docs (#541) [1ce84d5]
      • Bump actions/setup-go from 2 to 3 (#540) [755485e]
      • Bump nokogiri from 1.12.5 to 1.13.3 in /docs (#522) [4fbb0dc]
      • Bump actions/checkout from 2 to 3 (#526) [ac49202]

    1.19.0

    Features

    • New HaveEach matcher to ensure that each and every element in an array, slice, or map satisfies the passed in matcher. (#523) [9fc2ae2] (#524) [c8ba582]
    • Users can now wrap the Gomega interface to implement custom behavior on each assertion. (#521) [1f2e714]
    • ContainElement now accepts an additional pointer argument. Elements that satisfy the matcher are stored in the pointer enabling developers to easily add subsequent, more detailed, assertions against the matching element. (#527) [1a4e27f]

    Fixes

    • update RELEASING instructions to match ginkgo [0917cde]
    • Bump github.com/onsi/ginkgo/v2 from 2.0.0 to 2.1.3 (#519) [49ab4b0]
    • Fix CVE-2021-38561 (#534) [f1b4456]
    • Fix max number of samples in experiments on non-64-bit systems. (#528) [1c84497]
    • Remove dependency on ginkgo v1.16.4 (#530) [4dea8d5]
    • Fix for Go 1.18 (#532) [56d2a29]
    • Document precendence of timeouts (#533) [b607941]
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    opened by dependabot[bot] 1
  • chore(deps): bump golang from 1.17.7 to 1.18.4

    chore(deps): bump golang from 1.17.7 to 1.18.4

    Bumps golang from 1.17.7 to 1.18.4.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    opened by dependabot[bot] 1
Releases(v0.1.0-alpha)
Owner
Snapp Cab Incubators
Growing snapp-cab open source projects
Snapp Cab Incubators
An operator which complements grafana-operator for custom features which are not feasible to be merged into core operator

Grafana Complementary Operator A grafana which complements grafana-operator for custom features which are not feasible to be merged into core operator

Snapp Cab Incubators 6 Jul 18, 2022
github-actions-merger is github actions that merges pull request with commit message including pull request labels.

github-actions-merger github-actions-merger is github actions that merges pull request with commit message including pull request labels. Usage Write

ABEMA 6 Jun 14, 2022
Operator Permissions Advisor is a CLI tool that will take a catalog image and statically parse it to determine what permissions an Operator will request of OLM during an install

Operator Permissions Advisor is a CLI tool that will take a catalog image and statically parse it to determine what permissions an Operator will request of OLM during an install. The permissions are aggregated from the following sources:

International Business Machines 2 Apr 22, 2022
Kubernetes Operator Samples using Go, the Operator SDK and OLM

Kubernetes Operator Patterns and Best Practises This project contains Kubernetes operator samples that demonstrate best practices how to develop opera

International Business Machines 19 Jul 28, 2022
network-node-manager is a kubernetes controller that controls the network configuration of a node to resolve network issues of kubernetes.

Network Node Manager network-node-manager is a kubernetes controller that controls the network configuration of a node to resolve network issues of ku

kakao 97 Aug 6, 2022
Golang-for-node-devs - Golang for Node.js developers

Golang for Node.js developers Who is this video for? Familiar with Node.js and i

TomDoesTech 3 Jul 9, 2022
Kubegres is a Kubernetes operator allowing to create a cluster of PostgreSql instances and manage databases replication, failover and backup.

Kubegres is a Kubernetes operator allowing to deploy a cluster of PostgreSql pods with data replication enabled out-of-the box. It brings simplicity w

Reactive Tech Ltd 1k Aug 11, 2022
The Elastalert Operator is an implementation of a Kubernetes Operator, to easily integrate elastalert with gitops.

Elastalert Operator for Kubernetes The Elastalert Operator is an implementation of a Kubernetes Operator. Getting started Firstly, learn How to use el

null 20 Jun 28, 2022
Test Operator using operator-sdk 1.15

test-operator Test Operator using operator-sdk 1.15 operator-sdk init --domain rbt.com --repo github.com/ravitri/test-operator Writing kustomize manif

Ravi Trivedi 0 Dec 28, 2021
Minecraft-operator - A Kubernetes operator for Minecraft Java Edition servers

Minecraft Operator A Kubernetes operator for dedicated servers of the video game

James Laverack 7 Jul 20, 2022
K8s-network-config-operator - Kubernetes network config operator to push network config to switches

Kubernetes Network operator Will add more to the readme later :D Operations The

Daniel Hertzberg 6 May 16, 2022
a k8s operator 、operator-sdk

helloworld-operator a k8s operator 、operator-sdk Operator 参考 https://jicki.cn/kubernetes-operator/ https://learnku.com/articles/60683 https://opensour

Mark YiL 0 Jan 27, 2022
kube-champ 39 Aug 6, 2022
Pulumi-k8s-operator-example - OpenGitOps Compliant Pulumi Kubernetes Operator Example

Pulumi GitOps Example OpenGitOps Compliant Pulumi Kubernetes Operator Example Pr

Christian Hernandez 3 May 6, 2022
The OCI Service Operator for Kubernetes (OSOK) makes it easy to connect and manage OCI services from a cloud native application running in a Kubernetes environment.

OCI Service Operator for Kubernetes Introduction The OCI Service Operator for Kubernetes (OSOK) makes it easy to create, manage, and connect to Oracle

Oracle 22 Jun 17, 2022
PolarDB-X Operator is a Kubernetes extension that aims to create and manage PolarDB-X cluster on Kubernetes.

GalaxyKube -- PolarDB-X Operator PolarDB-X Operator is a Kubernetes extension that aims to create and manage PolarDB-X cluster on Kubernetes. It follo

null 63 Jul 27, 2022
Modular Kubernetes operator to manage the lifecycle of databases

Ensemble Ensemble is a simple and modular Kubernetes Operator to manage the lifecycle of a wide range of databases. Infrastructure as code with Kubern

Tesera 42 Mar 1, 2022
The cortex-operator is a project to manage the lifecycle of Cortex in Kubernetes.

cortex-operator The cortex-operator is a project to manage the lifecycle of Cortex in Kubernetes. Project status: alpha Not all planned features are c

Opstrace inc. 34 Apr 13, 2022
A Kubernetes operator to manage ThousandEyes tests

ThousandEyes Kubernetes Operator ThousandEyes Kubernetes Operator is a Kubernetes operator used to manage ThousandEyes Tests deployed via Kubernetes c

Cisco DevNet 29 Jul 18, 2022