Skip to content

Use controller-runtime controllerutil package  #255

@troy0820

Description

@troy0820

What design is being proposed?

We have a lot of functionality that is already done in the controllerutil package of controller-runtime. We can leverage this to remove
the complexity of writing our own and reduce cognitive load around functionality that already exists.

Since upgrading controller-runtime we can also use interceptors in our unit tests which act like a prependReactor from client-go to assert on the failures of certain client calls.

Additional Context

This will help provide a means to help maintainability around the operator going forward.

Risks/Concerns

Benefits include utilizing a lib that already does what we need to replace the shared logic we are trying to consume and decouple the things we have rolled out to better create the operator going forward.

What other approaches were considered?

If we don't do it, we suffer the implementation that was used from over a year ago to maintain what could be utilized with a lib we already import.

Implementation details

Swapping out functions, deleting old code and updating the use cases we wish to implement.

Checklist

  • This proposal has remained open for at least one week, to allow time for community feedback.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions