-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Automatic CRD registration #139
Comments
seems like a good idea; we have the crd registration inside etcd-operator as well |
The sdk should probably support creating the CRDs as an option, but OLM will create the CRDs on behalf of an operator, and the sdk at some point should generate manifests for OLM as well. The advantage of doing that is that operators can run with reduced permissions - since CRD-creation is currently a cluster-level operation. |
I also believe one should always decouple the crd registration from the operator deployment. |
I wonder if this is a good time to bring up the idea of CRD's that are namespace(/tenant), not cluster specific? CRD's that an end user in a multitenant environment could create/consume. IE, if the operator is being deployed for all tenants, then it probably should have permissions to look at all tenants anyway. While a user might want to deploy it themselves but would need CRD's that match and they probably should be able to create those too for themselves. |
Issues go stale after 90d of inactivity. Mark the issue as fresh by commenting If this issue is safe to close now please do so with /lifecycle stale |
Stale issues rot after 30d of inactivity. Mark the issue as fresh by commenting If this issue is safe to close now please do so with /lifecycle rotten |
Rotten issues close after 30d of inactivity. Reopen the issue by commenting /close |
@openshift-bot: Closing this issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
CRD registration can be easily performed in the SDK by generating a few extra fields in register.go in the api folder, creating the CRD in the codebase, and then pushing it to Kubernetes when the operator starts up. This is a nice usability feature because people deploying the operator no longer need to worry about pushing the CRD into Kubernetes before starting the operator.
Ideally this would be a separate API so that users who prefer manually pushing the CRD to Kubernetes are still able to get that behavior.
The text was updated successfully, but these errors were encountered: