@@ -20,7 +20,7 @@ safe-start transforms how your provider handles resource installation:
20
20
21
21
** Without safe-start:**
22
22
- All resources become MRDs that are automatically active and create CRDs
23
- - Users get all ~ 200 AWS resources even if they need only 5
23
+ - Users get all ~ 100 resources even if they need only 5
24
24
- Higher memory usage and slower API server responses
25
25
26
26
** With safe-start:**
@@ -32,7 +32,7 @@ safe-start transforms how your provider handles resource installation:
32
32
33
33
Before implementing safe-start, ensure you have:
34
34
35
- * Provider built with Crossplane v2.0+ runtime
35
+ * Provider built with ` crossplane-runtime ` v2.0+
36
36
* Understanding of [ MRDs and activation policies] ({{< ref "mrd-activation-policies" >}})
37
37
* Test environment with Crossplane v2.0+
38
38
* CI/CD pipeline that can build and test provider changes
@@ -210,71 +210,6 @@ spec:
210
210
- "*.aws.example.io" # Activate all resources (legacy behavior)
211
211
` ` `
212
212
213
- # # Documentation requirements
214
-
215
- Update your provider documentation to include :
216
-
217
- <!-- vale Google.Headings = NO -->
218
- # ## README updates
219
- <!-- vale Google.Headings = YES -->
220
-
221
- ` ` ` markdown
222
- # Provider Example
223
-
224
- ## safe-start Support
225
-
226
- This provider supports safe-start capability, which provides:
227
- - Selective resource activation
228
- - Improved performance for large providers
229
- - Connection details documentation
230
-
231
- ### Quick Start with safe-start
232
-
233
- 1. Install the provider:
234
- ` ` ` yaml
235
- apiVersion : pkg.crossplane.io/v1
236
- kind : Provider
237
- metadata :
238
- name : provider-example
239
- spec :
240
- package : registry.example.com/provider-example:v2.0.0
241
- ` ` `
242
-
243
- 2. Create activation policy:
244
- ` ` ` yaml
245
- apiVersion : apiextensions.crossplane.io/v1alpha1
246
- kind : ManagedResourceActivationPolicy
247
- metadata :
248
- name : example-resources
249
- spec :
250
- activations :
251
- - " databases.rds.aws.example.io"
252
- - " *.s3.aws.example.io"
253
- ` ` `
254
-
255
- 3. Create resources - only activated resources work.
256
- ` ` `
257
-
258
- # ## Connection Details Documentation
259
-
260
- Document what connection details each resource provides :
261
-
262
- ` ` ` markdown
263
- ## Connection Details Reference
264
-
265
- ### Database (` databases.rds.aws.example.io`)
266
- - `endpoint` (string) : RDS instance connection endpoint
267
- - `port` (integer) : Database connection port
268
- - `username` (string) : Master database username
269
- - `password` (string) : Master database password
270
- - `ca_certificate` (string) : CA certificate for SSL connections
271
-
272
- # ## Storage Bucket (`buckets.s3.aws.example.io`)
273
- - `bucket_name` (string) : The S3 bucket name
274
- - `region` (string) : AWS region where bucket is located
275
- - `arn` (string) : Full ARN of the S3 bucket
276
- ` ` `
277
-
278
213
# # Troubleshooting
279
214
280
215
# ## Common Issues
@@ -327,7 +262,3 @@ kubectl describe my-resource my-instance
327
262
- Test both with and without safe-start in CI
328
263
- Verify activation/deactivation cycles work
329
264
- Test resource creation after activation
330
-
331
- safe-start provides significant value for large providers and improves the
332
- Crossplane user experience. Following this guide helps ensure your
333
- implementation is robust, well-documented, and user-friendly.
0 commit comments