You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
safe-start works best with namespaced managed resources. Update your resources
154
-
to support both cluster and namespaced scopes:
153
+
safe-start providers need extra permissions to manage CRDs dynamically. Crossplane's RBAC manager automatically provides these permissions when you install safe-start providers.
155
154
156
-
```go
157
-
// Update resource definitions to support namespacing
158
-
typeDatabasestruct {
159
-
metav1.TypeMeta`json:",inline"`
160
-
metav1.ObjectMeta`json:"metadata,omitempty"`
161
-
162
-
SpecDatabaseSpec`json:"spec"`
163
-
StatusDatabaseStatus`json:"status,omitempty"`
164
-
}
165
-
166
-
// Update your CRD generation
167
-
//+kubebuilder:resource:scope=Namespaced
168
-
//+kubebuilder:object:root=true
169
-
//+kubebuilder:subresource:status
170
-
typeDatabasestruct {
171
-
// ... resource definition
172
-
}
155
+
{{< hint "note" >}}
156
+
Manual RBAC configuration is only required if you disable Crossplane's RBAC manager (with `--args=--disable-rbac-manager`).
157
+
{{< /hint >}}
173
158
174
-
// Optionally create cluster-scoped variants
175
-
//+kubebuilder:resource:scope=Cluster
176
-
//+kubebuilder:object:root=true
177
-
//+kubebuilder:subresource:status
178
-
typeClusterDatabasestruct {
179
-
// ... same spec but cluster scoped
180
-
}
159
+
**Automatically provided permissions:**
160
+
```yaml
161
+
# Crossplane RBAC manager grants these permissions automatically
0 commit comments