Currently, all CRDs are defined only in the management cluster. As part
of splitting shipper into a management and app components, we are
instead defining the InstallationTarget CRD in the application clusters.
This is where the actual split of Shipper’s functionality starts. This
only splits InstallationTargets because of the massive diff that's being
generated, so I hope this will be easier to review.
As a general warning, you'll see a lof of weird scaffolding code for the
moment, like passing both management clients and clusterclientstore
clients alongside each other, installing shipper-app in both clusters,
and others. That should all go away once we move the other target
objects as well. Review those gently :)
This also completely obliterates the janitor controller. It just won't
work in this setup anymore, and needs a complete rewrite. That will come
as a follow up to this commit (again, to make diffs smaller).
Currently, all CRDs are defined only in the management cluster. As part of splitting shipper into a management and app components, we are instead defining the InstallationTarget CRD in the application clusters. This is where the actual split of Shipper’s functionality starts. This only splits InstallationTargets because of the massive diff that's being generated, so I hope this will be easier to review.
As a general warning, you'll see a lof of weird scaffolding code for the moment, like passing both management clients and clusterclientstore clients alongside each other, installing shipper-app in both clusters, and others. That should all go away once we move the other target objects as well. Review those gently :)
This also completely obliterates the janitor controller. It just won't work in this setup anymore, and needs a complete rewrite. That will come as a follow up to this commit (again, to make diffs smaller).