@bluedynamics/cdk8s-plone 0.0.81 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +318 -118
- package/API.md +401 -68
- package/README.md +198 -147
- package/lib/deployment.d.ts +76 -40
- package/lib/deployment.js +13 -2
- package/lib/httpcache.d.ts +64 -9
- package/lib/httpcache.js +19 -3
- package/lib/pdb.d.ts +22 -7
- package/lib/pdb.js +8 -1
- package/lib/plone.d.ts +215 -2
- package/lib/plone.js +49 -6
- package/lib/service.d.ts +26 -0
- package/lib/service.js +10 -2
- package/package.json +10 -10
package/.jsii
CHANGED
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
]
|
|
8
8
|
},
|
|
9
9
|
"dependencies": {
|
|
10
|
-
"cdk8s": "^2.70.
|
|
11
|
-
"cdk8s-plus-30": "^2.4.
|
|
10
|
+
"cdk8s": "^2.70.20",
|
|
11
|
+
"cdk8s-plus-30": "^2.4.10",
|
|
12
12
|
"constructs": "^10.0.3"
|
|
13
13
|
},
|
|
14
14
|
"dependencyClosure": {
|
|
@@ -96,7 +96,7 @@
|
|
|
96
96
|
"stability": "stable"
|
|
97
97
|
},
|
|
98
98
|
"homepage": "https://github.com/bluedynamics/cdk8s-plone.git",
|
|
99
|
-
"jsiiVersion": "5.8.
|
|
99
|
+
"jsiiVersion": "5.8.21 (build 0b7c0ba)",
|
|
100
100
|
"license": "Apache-2.0",
|
|
101
101
|
"metadata": {
|
|
102
102
|
"jsii": {
|
|
@@ -108,7 +108,7 @@
|
|
|
108
108
|
},
|
|
109
109
|
"name": "@bluedynamics/cdk8s-plone",
|
|
110
110
|
"readme": {
|
|
111
|
-
"markdown": "#
|
|
111
|
+
"markdown": "# CDK8S Plone\n\nA CDK8S library for deploying Plone CMS to Kubernetes.\n\nThis library provides constructs to bootstrap a Plone deployment on a Kubernetes cluster using the [CDK8S](https://cdk8s.io) framework.\n\n## Features\n\n- **Backend**: Plone backend (API with `plone.volto` or Classic-UI)\n- **Frontend**: Plone Volto (modern React-based user interface)\n- **Varnish Caching**: Optional HTTP caching layer using [kube-httpcache](https://github.com/mittwald/kube-httpcache) with cluster-wide cache invalidation\n- **High Availability**: Configurable replicas with PodDisruptionBudgets\n- **Multi-language Support**: Published to npm (TypeScript/JavaScript) and PyPI (Python)\n\n\n## Installation\n\n### TypeScript/JavaScript\n\nCreate a new CDK8S project (or use an existing one):\n\n```bash\ncdk8s init typescript-app\n```\n\nInstall the library:\n\n```bash\nnpm install @bluedynamics/cdk8s-plone\n```\n\nPackage: [@bluedynamics/cdk8s-plone](https://www.npmjs.com/package/@bluedynamics/cdk8s-plone)\n\n### Python\n\nCreate a new CDK8S project:\n\n```bash\ncdk8s init python-app\n```\n\nInstall the library:\n\n```bash\npip install cdk8s-plone\n```\n\nPackage: [cdk8s-plone](https://pypi.org/project/cdk8s-plone/)\n\n\n## Quick Start\n\n### Basic Plone Deployment\n\n```typescript\nimport { App, Chart } from 'cdk8s';\nimport { Plone, PloneVariant } from '@bluedynamics/cdk8s-plone';\n\nconst app = new App();\nconst chart = new Chart(app, 'PloneDeployment');\n\nnew Plone(chart, 'my-plone', {\n variant: PloneVariant.VOLTO,\n backend: {\n image: 'plone/plone-backend:6.0.10',\n replicas: 3,\n },\n frontend: {\n image: 'plone/plone-frontend:16.0.0',\n replicas: 2,\n },\n});\n\napp.synth();\n```\n\n### With Varnish HTTP Cache\n\n```typescript\nimport { PloneHttpcache } from '@bluedynamics/cdk8s-plone';\n\nconst plone = new Plone(chart, 'my-plone', {\n variant: PloneVariant.VOLTO,\n backend: { image: 'plone/plone-backend:6.0.10' },\n frontend: { image: 'plone/plone-frontend:16.0.0' },\n});\n\nnew PloneHttpcache(chart, 'cache', {\n plone: plone,\n existingSecret: 'varnish-secret',\n replicas: 2,\n});\n```\n\n### Generate Kubernetes Manifests\n\n```bash\ncdk8s synth\n```\n\nThe manifests are stored in the `dist/` directory.\n\nFor a complete example, see the [example project](https://github.com/bluedynamics/cdk8s-plone-example).\n\n## Prerequisites\n\n- **kubectl** - Command-line tool for deploying Kubernetes manifests. [Install kubectl](https://kubernetes.io/docs/tasks/tools/#kubectl)\n- **Helm** (optional) - Only needed if generating Helm charts. [Install Helm](https://helm.sh/docs/intro/install/)\n- **Node.js** - For TypeScript/JavaScript development\n- **Python 3.8+** - For Python development\n\n\n## API Documentation\n\nFor complete API documentation, see [API.md](./API.md).\n\n### Key Constructs\n\n#### `Plone`\n\nMain construct for deploying Plone CMS. Supports two variants:\n- **VOLTO**: Modern React frontend with REST API backend (default)\n- **CLASSICUI**: Traditional server-side rendered Plone\n\nProperties:\n- `backendServiceName` - Name of the backend Kubernetes service\n- `frontendServiceName` - Name of the frontend service (VOLTO only)\n- `variant` - Deployment variant (VOLTO or CLASSICUI)\n- `siteId` - Plone site ID in ZODB (default: 'Plone')\n\n#### `PloneHttpcache`\n\nVarnish HTTP caching layer using the [kube-httpcache](https://github.com/mittwald/kube-httpcache) Helm chart.\n\nProperties:\n- `httpcacheServiceName` - Name of the Varnish service\n\n### Configuration Options\n\n#### `PloneOptions`\n\n- `version` - Version of your project\n- `siteId` - Plone site ID (default: 'Plone')\n- `variant` - PloneVariant.VOLTO or PloneVariant.CLASSICUI (default: VOLTO)\n- `backend` - Backend configuration (PloneBaseOptions)\n- `frontend` - Frontend configuration (PloneBaseOptions, required for VOLTO)\n- `imagePullSecrets` - Image pull secrets for private registries\n\n#### `PloneBaseOptions`\n\nConfiguration for backend or frontend:\n\n**Container:**\n- `image` - Container image (e.g., 'plone/plone-backend:6.0.10')\n- `imagePullPolicy` - Pull policy (default: 'IfNotPresent')\n- `replicas` - Number of replicas (default: 2)\n- `environment` - Environment variables (cdk8s-plus-30.Env)\n\n**Resources:**\n- `requestCpu` / `limitCpu` - CPU requests/limits\n- `requestMemory` / `limitMemory` - Memory requests/limits\n\n**High Availability:**\n- `minAvailable` - Min pods during updates (for PodDisruptionBudget)\n- `maxUnavailable` - Max unavailable pods during updates\n\n**Health Probes:**\n- `readinessEnabled` - Enable readiness probe (default: true)\n- `readinessInitialDelaySeconds` / `readinessTimeoutSeconds` / `readinessPeriodSeconds`\n- `readinessSuccessThreshold` / `readinessFailureThreshold`\n- `livenessEnabled` - Enable liveness probe (default: false, recommended true for frontend)\n- `livenessInitialDelaySeconds` / `livenessTimeoutSeconds` / `livenessPeriodSeconds`\n- `livenessSuccessThreshold` / `livenessFailureThreshold`\n\n**Annotations:**\n- `annotations` - Deployment metadata annotations\n- `podAnnotations` - Pod template annotations (e.g., for Prometheus)\n- `serviceAnnotations` - Service annotations (e.g., for external-dns)\n\n#### `PloneHttpcacheOptions`\n\n- `plone` - Plone construct to attach cache to (required)\n- `varnishVcl` - VCL configuration as string\n- `varnishVclFile` - Path to VCL configuration file\n- `existingSecret` - Kubernetes secret for Varnish admin credentials\n- `replicas` - Number of Varnish replicas (default: 2)\n- `requestCpu` / `limitCpu` - CPU resources\n- `requestMemory` / `limitMemory` - Memory resources\n- `servicemonitor` - Enable Prometheus ServiceMonitor (default: false)\n\n\n## Development\n\nThis project uses [Projen](https://projen.io/) to manage project configuration. **Do not edit generated files directly.**\n\n### Setup\n\nClone the repository and install dependencies:\n\n```bash\nnvm use lts/*\ncorepack enable\nnpx projen\n```\n\n### Common Commands\n\n```bash\n# Run tests\nnpx projen test\n\n# Run tests in watch mode\nnpx projen test:watch\n\n# Build (compile TypeScript + generate JSII bindings)\nnpx projen build\n\n# Lint\nnpx projen eslint\n\n# Generate API documentation\nnpx projen docgen\n\n# Package for distribution\nnpx projen package-all\n```\n\n### Making Changes\n\n1. Edit `.projenrc.ts` for project configuration changes\n2. Run `npx projen` to regenerate project files\n3. Make code changes in `src/`\n4. Run tests and update snapshots if needed: `npx projen test -- -u`\n\n## References\n\n- [CDK8S Documentation](https://cdk8s.io/)\n- [Kubernetes Probes Documentation](https://kubernetes.io/docs/concepts/configuration/liveness-readiness-startup-probes/)\n- [kube-httpcache Helm Chart](https://github.com/mittwald/kube-httpcache)\n- [Example Project](https://github.com/bluedynamics/cdk8s-plone-example)\n\n## License\n\nSee [LICENSE](./LICENSE) file."
|
|
112
112
|
},
|
|
113
113
|
"repository": {
|
|
114
114
|
"type": "git",
|
|
@@ -129,7 +129,10 @@
|
|
|
129
129
|
"assembly": "@bluedynamics/cdk8s-plone",
|
|
130
130
|
"base": "constructs.Construct",
|
|
131
131
|
"docs": {
|
|
132
|
-
"
|
|
132
|
+
"example": "new Plone(chart, 'my-plone', {\n variant: PloneVariant.VOLTO,\n backend: {\n image: 'plone/plone-backend:6.0.10',\n replicas: 3,\n },\n frontend: {\n image: 'plone/plone-frontend:16.0.0',\n },\n});",
|
|
133
|
+
"remarks": "This construct creates all necessary Kubernetes resources for running Plone:\n- Deployment(s) for backend (and optionally frontend)\n- Service(s) for network access\n- Optional PodDisruptionBudget for high availability\n\nSupports two deployment variants:\n- VOLTO: Modern React frontend with REST API backend (default)\n- CLASSICUI: Traditional server-side rendered Plone",
|
|
134
|
+
"stability": "stable",
|
|
135
|
+
"summary": "Plone construct for deploying Plone CMS to Kubernetes."
|
|
133
136
|
},
|
|
134
137
|
"fqn": "@bluedynamics/cdk8s-plone.Plone",
|
|
135
138
|
"initializer": {
|
|
@@ -138,7 +141,7 @@
|
|
|
138
141
|
},
|
|
139
142
|
"locationInModule": {
|
|
140
143
|
"filename": "src/plone.ts",
|
|
141
|
-
"line":
|
|
144
|
+
"line": 293
|
|
142
145
|
},
|
|
143
146
|
"parameters": [
|
|
144
147
|
{
|
|
@@ -165,18 +168,20 @@
|
|
|
165
168
|
"kind": "class",
|
|
166
169
|
"locationInModule": {
|
|
167
170
|
"filename": "src/plone.ts",
|
|
168
|
-
"line":
|
|
171
|
+
"line": 270
|
|
169
172
|
},
|
|
170
173
|
"name": "Plone",
|
|
171
174
|
"properties": [
|
|
172
175
|
{
|
|
173
176
|
"docs": {
|
|
174
|
-
"
|
|
177
|
+
"remarks": "Use this to reference the backend service from other constructs.",
|
|
178
|
+
"stability": "stable",
|
|
179
|
+
"summary": "Name of the backend Kubernetes service."
|
|
175
180
|
},
|
|
176
181
|
"immutable": true,
|
|
177
182
|
"locationInModule": {
|
|
178
183
|
"filename": "src/plone.ts",
|
|
179
|
-
"line":
|
|
184
|
+
"line": 275
|
|
180
185
|
},
|
|
181
186
|
"name": "backendServiceName",
|
|
182
187
|
"type": {
|
|
@@ -185,12 +190,13 @@
|
|
|
185
190
|
},
|
|
186
191
|
{
|
|
187
192
|
"docs": {
|
|
188
|
-
"stability": "stable"
|
|
193
|
+
"stability": "stable",
|
|
194
|
+
"summary": "The Plone site ID in ZODB."
|
|
189
195
|
},
|
|
190
196
|
"immutable": true,
|
|
191
197
|
"locationInModule": {
|
|
192
198
|
"filename": "src/plone.ts",
|
|
193
|
-
"line":
|
|
199
|
+
"line": 291
|
|
194
200
|
},
|
|
195
201
|
"name": "siteId",
|
|
196
202
|
"type": {
|
|
@@ -199,12 +205,13 @@
|
|
|
199
205
|
},
|
|
200
206
|
{
|
|
201
207
|
"docs": {
|
|
202
|
-
"stability": "stable"
|
|
208
|
+
"stability": "stable",
|
|
209
|
+
"summary": "The deployment variant being used (VOLTO or CLASSICUI)."
|
|
203
210
|
},
|
|
204
211
|
"immutable": true,
|
|
205
212
|
"locationInModule": {
|
|
206
213
|
"filename": "src/plone.ts",
|
|
207
|
-
"line":
|
|
214
|
+
"line": 286
|
|
208
215
|
},
|
|
209
216
|
"name": "variant",
|
|
210
217
|
"type": {
|
|
@@ -213,12 +220,14 @@
|
|
|
213
220
|
},
|
|
214
221
|
{
|
|
215
222
|
"docs": {
|
|
216
|
-
"
|
|
223
|
+
"remarks": "Only set when variant is VOLTO, otherwise undefined.",
|
|
224
|
+
"stability": "stable",
|
|
225
|
+
"summary": "Name of the frontend Kubernetes service."
|
|
217
226
|
},
|
|
218
227
|
"immutable": true,
|
|
219
228
|
"locationInModule": {
|
|
220
229
|
"filename": "src/plone.ts",
|
|
221
|
-
"line":
|
|
230
|
+
"line": 281
|
|
222
231
|
},
|
|
223
232
|
"name": "frontendServiceName",
|
|
224
233
|
"optional": true,
|
|
@@ -233,25 +242,54 @@
|
|
|
233
242
|
"assembly": "@bluedynamics/cdk8s-plone",
|
|
234
243
|
"datatype": true,
|
|
235
244
|
"docs": {
|
|
236
|
-
"
|
|
245
|
+
"remarks": "These options control container image, replica count, resource limits,\nenvironment variables, and health probes.",
|
|
246
|
+
"stability": "stable",
|
|
247
|
+
"summary": "Base options for Plone backend or frontend configuration."
|
|
237
248
|
},
|
|
238
249
|
"fqn": "@bluedynamics/cdk8s-plone.PloneBaseOptions",
|
|
239
250
|
"kind": "interface",
|
|
240
251
|
"locationInModule": {
|
|
241
252
|
"filename": "src/plone.ts",
|
|
242
|
-
"line":
|
|
253
|
+
"line": 14
|
|
243
254
|
},
|
|
244
255
|
"name": "PloneBaseOptions",
|
|
245
256
|
"properties": [
|
|
246
257
|
{
|
|
247
258
|
"abstract": true,
|
|
248
259
|
"docs": {
|
|
249
|
-
"
|
|
260
|
+
"default": "- no additional annotations",
|
|
261
|
+
"example": "{ 'deployment.kubernetes.io/revision': '1' }",
|
|
262
|
+
"stability": "stable",
|
|
263
|
+
"summary": "Annotations to add to the Deployment metadata."
|
|
250
264
|
},
|
|
251
265
|
"immutable": true,
|
|
252
266
|
"locationInModule": {
|
|
253
267
|
"filename": "src/plone.ts",
|
|
254
|
-
"line":
|
|
268
|
+
"line": 165
|
|
269
|
+
},
|
|
270
|
+
"name": "annotations",
|
|
271
|
+
"optional": true,
|
|
272
|
+
"type": {
|
|
273
|
+
"collection": {
|
|
274
|
+
"elementtype": {
|
|
275
|
+
"primitive": "string"
|
|
276
|
+
},
|
|
277
|
+
"kind": "map"
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
},
|
|
281
|
+
{
|
|
282
|
+
"abstract": true,
|
|
283
|
+
"docs": {
|
|
284
|
+
"default": "- undefined (no additional environment variables)",
|
|
285
|
+
"remarks": "Use cdk8s-plus-30 Env class to define variables and sources.",
|
|
286
|
+
"stability": "stable",
|
|
287
|
+
"summary": "Environment variables to set in the container."
|
|
288
|
+
},
|
|
289
|
+
"immutable": true,
|
|
290
|
+
"locationInModule": {
|
|
291
|
+
"filename": "src/plone.ts",
|
|
292
|
+
"line": 83
|
|
255
293
|
},
|
|
256
294
|
"name": "environment",
|
|
257
295
|
"optional": true,
|
|
@@ -262,12 +300,15 @@
|
|
|
262
300
|
{
|
|
263
301
|
"abstract": true,
|
|
264
302
|
"docs": {
|
|
265
|
-
"
|
|
303
|
+
"default": "- 'plone/plone-backend:latest' for backend, 'plone/plone-frontend:latest' for frontend",
|
|
304
|
+
"example": "'plone/plone-backend:6.0.10' or 'plone/plone-frontend:16.0.0'",
|
|
305
|
+
"stability": "stable",
|
|
306
|
+
"summary": "Container image to use for the deployment."
|
|
266
307
|
},
|
|
267
308
|
"immutable": true,
|
|
268
309
|
"locationInModule": {
|
|
269
310
|
"filename": "src/plone.ts",
|
|
270
|
-
"line":
|
|
311
|
+
"line": 20
|
|
271
312
|
},
|
|
272
313
|
"name": "image",
|
|
273
314
|
"optional": true,
|
|
@@ -278,12 +319,14 @@
|
|
|
278
319
|
{
|
|
279
320
|
"abstract": true,
|
|
280
321
|
"docs": {
|
|
281
|
-
"
|
|
322
|
+
"default": "'IfNotPresent'",
|
|
323
|
+
"stability": "stable",
|
|
324
|
+
"summary": "Image pull policy for the container."
|
|
282
325
|
},
|
|
283
326
|
"immutable": true,
|
|
284
327
|
"locationInModule": {
|
|
285
328
|
"filename": "src/plone.ts",
|
|
286
|
-
"line":
|
|
329
|
+
"line": 26
|
|
287
330
|
},
|
|
288
331
|
"name": "imagePullPolicy",
|
|
289
332
|
"optional": true,
|
|
@@ -294,12 +337,15 @@
|
|
|
294
337
|
{
|
|
295
338
|
"abstract": true,
|
|
296
339
|
"docs": {
|
|
297
|
-
"
|
|
340
|
+
"default": "'500m' for both backend and frontend",
|
|
341
|
+
"example": "'500m' or '1' or '2000m'",
|
|
342
|
+
"stability": "stable",
|
|
343
|
+
"summary": "CPU limit for the container."
|
|
298
344
|
},
|
|
299
345
|
"immutable": true,
|
|
300
346
|
"locationInModule": {
|
|
301
347
|
"filename": "src/plone.ts",
|
|
302
|
-
"line":
|
|
348
|
+
"line": 55
|
|
303
349
|
},
|
|
304
350
|
"name": "limitCpu",
|
|
305
351
|
"optional": true,
|
|
@@ -310,12 +356,15 @@
|
|
|
310
356
|
{
|
|
311
357
|
"abstract": true,
|
|
312
358
|
"docs": {
|
|
313
|
-
"
|
|
359
|
+
"default": "'512Mi' for backend, '1Gi' for frontend",
|
|
360
|
+
"example": "'512Mi' or '1Gi'",
|
|
361
|
+
"stability": "stable",
|
|
362
|
+
"summary": "Memory limit for the container."
|
|
314
363
|
},
|
|
315
364
|
"immutable": true,
|
|
316
365
|
"locationInModule": {
|
|
317
366
|
"filename": "src/plone.ts",
|
|
318
|
-
"line":
|
|
367
|
+
"line": 62
|
|
319
368
|
},
|
|
320
369
|
"name": "limitMemory",
|
|
321
370
|
"optional": true,
|
|
@@ -326,12 +375,15 @@
|
|
|
326
375
|
{
|
|
327
376
|
"abstract": true,
|
|
328
377
|
"docs": {
|
|
329
|
-
"
|
|
378
|
+
"default": "false",
|
|
379
|
+
"remarks": "Liveness probes determine when to restart a container.\nRecommended: true for frontend, false for backend (Zope has its own recovery).",
|
|
380
|
+
"stability": "stable",
|
|
381
|
+
"summary": "Enable liveness probe for the container."
|
|
330
382
|
},
|
|
331
383
|
"immutable": true,
|
|
332
384
|
"locationInModule": {
|
|
333
385
|
"filename": "src/plone.ts",
|
|
334
|
-
"line":
|
|
386
|
+
"line": 128
|
|
335
387
|
},
|
|
336
388
|
"name": "livenessEnabled",
|
|
337
389
|
"optional": true,
|
|
@@ -342,12 +394,14 @@
|
|
|
342
394
|
{
|
|
343
395
|
"abstract": true,
|
|
344
396
|
"docs": {
|
|
345
|
-
"
|
|
397
|
+
"default": "3",
|
|
398
|
+
"stability": "stable",
|
|
399
|
+
"summary": "Minimum consecutive failures for the liveness probe to be considered failed."
|
|
346
400
|
},
|
|
347
401
|
"immutable": true,
|
|
348
402
|
"locationInModule": {
|
|
349
403
|
"filename": "src/plone.ts",
|
|
350
|
-
"line":
|
|
404
|
+
"line": 158
|
|
351
405
|
},
|
|
352
406
|
"name": "livenessFailureThreshold",
|
|
353
407
|
"optional": true,
|
|
@@ -358,14 +412,16 @@
|
|
|
358
412
|
{
|
|
359
413
|
"abstract": true,
|
|
360
414
|
"docs": {
|
|
361
|
-
"
|
|
415
|
+
"default": "30",
|
|
416
|
+
"stability": "stable",
|
|
417
|
+
"summary": "Number of seconds after container start before liveness probe is initiated."
|
|
362
418
|
},
|
|
363
419
|
"immutable": true,
|
|
364
420
|
"locationInModule": {
|
|
365
421
|
"filename": "src/plone.ts",
|
|
366
|
-
"line":
|
|
422
|
+
"line": 134
|
|
367
423
|
},
|
|
368
|
-
"name": "
|
|
424
|
+
"name": "livenessInitialDelaySeconds",
|
|
369
425
|
"optional": true,
|
|
370
426
|
"type": {
|
|
371
427
|
"primitive": "number"
|
|
@@ -374,14 +430,16 @@
|
|
|
374
430
|
{
|
|
375
431
|
"abstract": true,
|
|
376
432
|
"docs": {
|
|
377
|
-
"
|
|
433
|
+
"default": "10",
|
|
434
|
+
"stability": "stable",
|
|
435
|
+
"summary": "How often (in seconds) to perform the liveness probe."
|
|
378
436
|
},
|
|
379
437
|
"immutable": true,
|
|
380
438
|
"locationInModule": {
|
|
381
439
|
"filename": "src/plone.ts",
|
|
382
|
-
"line":
|
|
440
|
+
"line": 146
|
|
383
441
|
},
|
|
384
|
-
"name": "
|
|
442
|
+
"name": "livenessPeriodSeconds",
|
|
385
443
|
"optional": true,
|
|
386
444
|
"type": {
|
|
387
445
|
"primitive": "number"
|
|
@@ -390,14 +448,16 @@
|
|
|
390
448
|
{
|
|
391
449
|
"abstract": true,
|
|
392
450
|
"docs": {
|
|
393
|
-
"
|
|
451
|
+
"default": "1",
|
|
452
|
+
"stability": "stable",
|
|
453
|
+
"summary": "Minimum consecutive successes for the liveness probe to be considered successful."
|
|
394
454
|
},
|
|
395
455
|
"immutable": true,
|
|
396
456
|
"locationInModule": {
|
|
397
457
|
"filename": "src/plone.ts",
|
|
398
|
-
"line":
|
|
458
|
+
"line": 152
|
|
399
459
|
},
|
|
400
|
-
"name": "
|
|
460
|
+
"name": "livenessSuccessThreshold",
|
|
401
461
|
"optional": true,
|
|
402
462
|
"type": {
|
|
403
463
|
"primitive": "number"
|
|
@@ -406,14 +466,16 @@
|
|
|
406
466
|
{
|
|
407
467
|
"abstract": true,
|
|
408
468
|
"docs": {
|
|
409
|
-
"
|
|
469
|
+
"default": "5",
|
|
470
|
+
"stability": "stable",
|
|
471
|
+
"summary": "Number of seconds after which the liveness probe times out."
|
|
410
472
|
},
|
|
411
473
|
"immutable": true,
|
|
412
474
|
"locationInModule": {
|
|
413
475
|
"filename": "src/plone.ts",
|
|
414
|
-
"line":
|
|
476
|
+
"line": 140
|
|
415
477
|
},
|
|
416
|
-
"name": "
|
|
478
|
+
"name": "livenessTimeoutSeconds",
|
|
417
479
|
"optional": true,
|
|
418
480
|
"type": {
|
|
419
481
|
"primitive": "number"
|
|
@@ -422,12 +484,15 @@
|
|
|
422
484
|
{
|
|
423
485
|
"abstract": true,
|
|
424
486
|
"docs": {
|
|
425
|
-
"
|
|
487
|
+
"default": "- undefined (not set)",
|
|
488
|
+
"remarks": "Can be an absolute number (e.g., 1) or a percentage (e.g., '50%').\nUsed in PodDisruptionBudget if specified.",
|
|
489
|
+
"stability": "stable",
|
|
490
|
+
"summary": "Maximum number of pods that can be unavailable during updates."
|
|
426
491
|
},
|
|
427
492
|
"immutable": true,
|
|
428
493
|
"locationInModule": {
|
|
429
494
|
"filename": "src/plone.ts",
|
|
430
|
-
"line":
|
|
495
|
+
"line": 40
|
|
431
496
|
},
|
|
432
497
|
"name": "maxUnavailable",
|
|
433
498
|
"optional": true,
|
|
@@ -447,12 +512,15 @@
|
|
|
447
512
|
{
|
|
448
513
|
"abstract": true,
|
|
449
514
|
"docs": {
|
|
450
|
-
"
|
|
515
|
+
"default": "- undefined (not set)",
|
|
516
|
+
"remarks": "Can be an absolute number (e.g., 1) or a percentage (e.g., '50%').\nUsed in PodDisruptionBudget if specified.",
|
|
517
|
+
"stability": "stable",
|
|
518
|
+
"summary": "Minimum number of pods that must be available during updates."
|
|
451
519
|
},
|
|
452
520
|
"immutable": true,
|
|
453
521
|
"locationInModule": {
|
|
454
522
|
"filename": "src/plone.ts",
|
|
455
|
-
"line":
|
|
523
|
+
"line": 48
|
|
456
524
|
},
|
|
457
525
|
"name": "minAvailable",
|
|
458
526
|
"optional": true,
|
|
@@ -472,12 +540,40 @@
|
|
|
472
540
|
{
|
|
473
541
|
"abstract": true,
|
|
474
542
|
"docs": {
|
|
475
|
-
"
|
|
543
|
+
"default": "- no additional annotations",
|
|
544
|
+
"example": "{ 'prometheus.io/scrape': 'true', 'prometheus.io/port': '8080' }",
|
|
545
|
+
"remarks": "Common for Prometheus, Istio, backup policies, etc.",
|
|
546
|
+
"stability": "stable",
|
|
547
|
+
"summary": "Annotations to add to the Pod template metadata."
|
|
548
|
+
},
|
|
549
|
+
"immutable": true,
|
|
550
|
+
"locationInModule": {
|
|
551
|
+
"filename": "src/plone.ts",
|
|
552
|
+
"line": 173
|
|
553
|
+
},
|
|
554
|
+
"name": "podAnnotations",
|
|
555
|
+
"optional": true,
|
|
556
|
+
"type": {
|
|
557
|
+
"collection": {
|
|
558
|
+
"elementtype": {
|
|
559
|
+
"primitive": "string"
|
|
560
|
+
},
|
|
561
|
+
"kind": "map"
|
|
562
|
+
}
|
|
563
|
+
}
|
|
564
|
+
},
|
|
565
|
+
{
|
|
566
|
+
"abstract": true,
|
|
567
|
+
"docs": {
|
|
568
|
+
"default": "true",
|
|
569
|
+
"remarks": "Readiness probes determine when a container is ready to accept traffic.",
|
|
570
|
+
"stability": "stable",
|
|
571
|
+
"summary": "Enable readiness probe for the container."
|
|
476
572
|
},
|
|
477
573
|
"immutable": true,
|
|
478
574
|
"locationInModule": {
|
|
479
575
|
"filename": "src/plone.ts",
|
|
480
|
-
"line":
|
|
576
|
+
"line": 90
|
|
481
577
|
},
|
|
482
578
|
"name": "readinessEnabled",
|
|
483
579
|
"optional": true,
|
|
@@ -488,12 +584,14 @@
|
|
|
488
584
|
{
|
|
489
585
|
"abstract": true,
|
|
490
586
|
"docs": {
|
|
491
|
-
"
|
|
587
|
+
"default": "3",
|
|
588
|
+
"stability": "stable",
|
|
589
|
+
"summary": "Minimum consecutive failures for the readiness probe to be considered failed."
|
|
492
590
|
},
|
|
493
591
|
"immutable": true,
|
|
494
592
|
"locationInModule": {
|
|
495
593
|
"filename": "src/plone.ts",
|
|
496
|
-
"line":
|
|
594
|
+
"line": 120
|
|
497
595
|
},
|
|
498
596
|
"name": "readinessFailureThreshold",
|
|
499
597
|
"optional": true,
|
|
@@ -504,14 +602,16 @@
|
|
|
504
602
|
{
|
|
505
603
|
"abstract": true,
|
|
506
604
|
"docs": {
|
|
507
|
-
"
|
|
605
|
+
"default": "10",
|
|
606
|
+
"stability": "stable",
|
|
607
|
+
"summary": "Number of seconds after container start before readiness probe is initiated."
|
|
508
608
|
},
|
|
509
609
|
"immutable": true,
|
|
510
610
|
"locationInModule": {
|
|
511
611
|
"filename": "src/plone.ts",
|
|
512
|
-
"line":
|
|
612
|
+
"line": 96
|
|
513
613
|
},
|
|
514
|
-
"name": "
|
|
614
|
+
"name": "readinessInitialDelaySeconds",
|
|
515
615
|
"optional": true,
|
|
516
616
|
"type": {
|
|
517
617
|
"primitive": "number"
|
|
@@ -520,14 +620,16 @@
|
|
|
520
620
|
{
|
|
521
621
|
"abstract": true,
|
|
522
622
|
"docs": {
|
|
523
|
-
"
|
|
623
|
+
"default": "10",
|
|
624
|
+
"stability": "stable",
|
|
625
|
+
"summary": "How often (in seconds) to perform the readiness probe."
|
|
524
626
|
},
|
|
525
627
|
"immutable": true,
|
|
526
628
|
"locationInModule": {
|
|
527
629
|
"filename": "src/plone.ts",
|
|
528
|
-
"line":
|
|
630
|
+
"line": 108
|
|
529
631
|
},
|
|
530
|
-
"name": "
|
|
632
|
+
"name": "readinessPeriodSeconds",
|
|
531
633
|
"optional": true,
|
|
532
634
|
"type": {
|
|
533
635
|
"primitive": "number"
|
|
@@ -536,14 +638,16 @@
|
|
|
536
638
|
{
|
|
537
639
|
"abstract": true,
|
|
538
640
|
"docs": {
|
|
539
|
-
"
|
|
641
|
+
"default": "1",
|
|
642
|
+
"stability": "stable",
|
|
643
|
+
"summary": "Minimum consecutive successes for the readiness probe to be considered successful."
|
|
540
644
|
},
|
|
541
645
|
"immutable": true,
|
|
542
646
|
"locationInModule": {
|
|
543
647
|
"filename": "src/plone.ts",
|
|
544
|
-
"line":
|
|
648
|
+
"line": 114
|
|
545
649
|
},
|
|
546
|
-
"name": "
|
|
650
|
+
"name": "readinessSuccessThreshold",
|
|
547
651
|
"optional": true,
|
|
548
652
|
"type": {
|
|
549
653
|
"primitive": "number"
|
|
@@ -552,14 +656,16 @@
|
|
|
552
656
|
{
|
|
553
657
|
"abstract": true,
|
|
554
658
|
"docs": {
|
|
555
|
-
"
|
|
659
|
+
"default": "15",
|
|
660
|
+
"stability": "stable",
|
|
661
|
+
"summary": "Number of seconds after which the readiness probe times out."
|
|
556
662
|
},
|
|
557
663
|
"immutable": true,
|
|
558
664
|
"locationInModule": {
|
|
559
665
|
"filename": "src/plone.ts",
|
|
560
|
-
"line":
|
|
666
|
+
"line": 102
|
|
561
667
|
},
|
|
562
|
-
"name": "
|
|
668
|
+
"name": "readinessTimeoutSeconds",
|
|
563
669
|
"optional": true,
|
|
564
670
|
"type": {
|
|
565
671
|
"primitive": "number"
|
|
@@ -568,12 +674,14 @@
|
|
|
568
674
|
{
|
|
569
675
|
"abstract": true,
|
|
570
676
|
"docs": {
|
|
571
|
-
"
|
|
677
|
+
"default": "2",
|
|
678
|
+
"stability": "stable",
|
|
679
|
+
"summary": "Number of pod replicas to run."
|
|
572
680
|
},
|
|
573
681
|
"immutable": true,
|
|
574
682
|
"locationInModule": {
|
|
575
683
|
"filename": "src/plone.ts",
|
|
576
|
-
"line":
|
|
684
|
+
"line": 32
|
|
577
685
|
},
|
|
578
686
|
"name": "replicas",
|
|
579
687
|
"optional": true,
|
|
@@ -584,12 +692,15 @@
|
|
|
584
692
|
{
|
|
585
693
|
"abstract": true,
|
|
586
694
|
"docs": {
|
|
587
|
-
"
|
|
695
|
+
"default": "'200m'",
|
|
696
|
+
"example": "'200m' or '0.5'",
|
|
697
|
+
"stability": "stable",
|
|
698
|
+
"summary": "CPU request for the container."
|
|
588
699
|
},
|
|
589
700
|
"immutable": true,
|
|
590
701
|
"locationInModule": {
|
|
591
702
|
"filename": "src/plone.ts",
|
|
592
|
-
"line":
|
|
703
|
+
"line": 69
|
|
593
704
|
},
|
|
594
705
|
"name": "requestCpu",
|
|
595
706
|
"optional": true,
|
|
@@ -600,18 +711,46 @@
|
|
|
600
711
|
{
|
|
601
712
|
"abstract": true,
|
|
602
713
|
"docs": {
|
|
603
|
-
"
|
|
714
|
+
"default": "'256Mi'",
|
|
715
|
+
"example": "'256Mi' or '512Mi'",
|
|
716
|
+
"stability": "stable",
|
|
717
|
+
"summary": "Memory request for the container."
|
|
604
718
|
},
|
|
605
719
|
"immutable": true,
|
|
606
720
|
"locationInModule": {
|
|
607
721
|
"filename": "src/plone.ts",
|
|
608
|
-
"line":
|
|
722
|
+
"line": 76
|
|
609
723
|
},
|
|
610
724
|
"name": "requestMemory",
|
|
611
725
|
"optional": true,
|
|
612
726
|
"type": {
|
|
613
727
|
"primitive": "string"
|
|
614
728
|
}
|
|
729
|
+
},
|
|
730
|
+
{
|
|
731
|
+
"abstract": true,
|
|
732
|
+
"docs": {
|
|
733
|
+
"default": "- no additional annotations",
|
|
734
|
+
"example": "{ 'external-dns.alpha.kubernetes.io/hostname': 'plone.example.com' }",
|
|
735
|
+
"remarks": "Common for external-dns, load balancers, service mesh, etc.",
|
|
736
|
+
"stability": "stable",
|
|
737
|
+
"summary": "Annotations to add to the Service metadata."
|
|
738
|
+
},
|
|
739
|
+
"immutable": true,
|
|
740
|
+
"locationInModule": {
|
|
741
|
+
"filename": "src/plone.ts",
|
|
742
|
+
"line": 181
|
|
743
|
+
},
|
|
744
|
+
"name": "serviceAnnotations",
|
|
745
|
+
"optional": true,
|
|
746
|
+
"type": {
|
|
747
|
+
"collection": {
|
|
748
|
+
"elementtype": {
|
|
749
|
+
"primitive": "string"
|
|
750
|
+
},
|
|
751
|
+
"kind": "map"
|
|
752
|
+
}
|
|
753
|
+
}
|
|
615
754
|
}
|
|
616
755
|
],
|
|
617
756
|
"symbolId": "src/plone:PloneBaseOptions"
|
|
@@ -620,7 +759,10 @@
|
|
|
620
759
|
"assembly": "@bluedynamics/cdk8s-plone",
|
|
621
760
|
"base": "constructs.Construct",
|
|
622
761
|
"docs": {
|
|
623
|
-
"
|
|
762
|
+
"example": "const plone = new Plone(chart, 'plone');\nconst cache = new PloneHttpcache(chart, 'cache', {\n plone: plone,\n existingSecret: 'varnish-secret',\n});",
|
|
763
|
+
"remarks": "Uses the mittwald/kube-httpcache Helm chart to deploy Varnish as a\ncaching proxy in front of Plone backend and/or frontend services.\n\nThe cache automatically connects to the Plone services and provides\nHTTP cache invalidation capabilities.",
|
|
764
|
+
"stability": "stable",
|
|
765
|
+
"summary": "PloneHttpcache construct for deploying Varnish HTTP caching layer."
|
|
624
766
|
},
|
|
625
767
|
"fqn": "@bluedynamics/cdk8s-plone.PloneHttpcache",
|
|
626
768
|
"initializer": {
|
|
@@ -629,7 +771,7 @@
|
|
|
629
771
|
},
|
|
630
772
|
"locationInModule": {
|
|
631
773
|
"filename": "src/httpcache.ts",
|
|
632
|
-
"line":
|
|
774
|
+
"line": 99
|
|
633
775
|
},
|
|
634
776
|
"parameters": [
|
|
635
777
|
{
|
|
@@ -655,18 +797,20 @@
|
|
|
655
797
|
"kind": "class",
|
|
656
798
|
"locationInModule": {
|
|
657
799
|
"filename": "src/httpcache.ts",
|
|
658
|
-
"line":
|
|
800
|
+
"line": 92
|
|
659
801
|
},
|
|
660
802
|
"name": "PloneHttpcache",
|
|
661
803
|
"properties": [
|
|
662
804
|
{
|
|
663
805
|
"docs": {
|
|
664
|
-
"
|
|
806
|
+
"remarks": "Use this to reference the cache service from ingress or other constructs.",
|
|
807
|
+
"stability": "stable",
|
|
808
|
+
"summary": "Name of the Varnish service created by the Helm chart."
|
|
665
809
|
},
|
|
666
810
|
"immutable": true,
|
|
667
811
|
"locationInModule": {
|
|
668
812
|
"filename": "src/httpcache.ts",
|
|
669
|
-
"line":
|
|
813
|
+
"line": 97
|
|
670
814
|
},
|
|
671
815
|
"name": "httpcacheServiceName",
|
|
672
816
|
"type": {
|
|
@@ -680,27 +824,28 @@
|
|
|
680
824
|
"assembly": "@bluedynamics/cdk8s-plone",
|
|
681
825
|
"datatype": true,
|
|
682
826
|
"docs": {
|
|
683
|
-
"stability": "stable"
|
|
827
|
+
"stability": "stable",
|
|
828
|
+
"summary": "Configuration options for PloneHttpcache (Varnish caching layer)."
|
|
684
829
|
},
|
|
685
830
|
"fqn": "@bluedynamics/cdk8s-plone.PloneHttpcacheOptions",
|
|
686
831
|
"kind": "interface",
|
|
687
832
|
"locationInModule": {
|
|
688
833
|
"filename": "src/httpcache.ts",
|
|
689
|
-
"line":
|
|
834
|
+
"line": 10
|
|
690
835
|
},
|
|
691
836
|
"name": "PloneHttpcacheOptions",
|
|
692
837
|
"properties": [
|
|
693
838
|
{
|
|
694
839
|
"abstract": true,
|
|
695
840
|
"docs": {
|
|
696
|
-
"
|
|
841
|
+
"remarks": "The cache will automatically connect to the backend and frontend services.",
|
|
697
842
|
"stability": "stable",
|
|
698
|
-
"summary": "
|
|
843
|
+
"summary": "The Plone construct to attach the HTTP cache to."
|
|
699
844
|
},
|
|
700
845
|
"immutable": true,
|
|
701
846
|
"locationInModule": {
|
|
702
847
|
"filename": "src/httpcache.ts",
|
|
703
|
-
"line":
|
|
848
|
+
"line": 15
|
|
704
849
|
},
|
|
705
850
|
"name": "plone",
|
|
706
851
|
"type": {
|
|
@@ -710,14 +855,15 @@
|
|
|
710
855
|
{
|
|
711
856
|
"abstract": true,
|
|
712
857
|
"docs": {
|
|
713
|
-
"default": "- undefined",
|
|
858
|
+
"default": "- undefined (no existing secret)",
|
|
859
|
+
"remarks": "The secret should be created separately in the same namespace.",
|
|
714
860
|
"stability": "stable",
|
|
715
|
-
"summary": "
|
|
861
|
+
"summary": "Name of an existing Kubernetes secret containing Varnish admin credentials."
|
|
716
862
|
},
|
|
717
863
|
"immutable": true,
|
|
718
864
|
"locationInModule": {
|
|
719
865
|
"filename": "src/httpcache.ts",
|
|
720
|
-
"line":
|
|
866
|
+
"line": 36
|
|
721
867
|
},
|
|
722
868
|
"name": "existingSecret",
|
|
723
869
|
"optional": true,
|
|
@@ -728,12 +874,14 @@
|
|
|
728
874
|
{
|
|
729
875
|
"abstract": true,
|
|
730
876
|
"docs": {
|
|
731
|
-
"
|
|
877
|
+
"default": "'500m'",
|
|
878
|
+
"stability": "stable",
|
|
879
|
+
"summary": "CPU limit for Varnish pods."
|
|
732
880
|
},
|
|
733
881
|
"immutable": true,
|
|
734
882
|
"locationInModule": {
|
|
735
883
|
"filename": "src/httpcache.ts",
|
|
736
|
-
"line":
|
|
884
|
+
"line": 42
|
|
737
885
|
},
|
|
738
886
|
"name": "limitCpu",
|
|
739
887
|
"optional": true,
|
|
@@ -744,12 +892,14 @@
|
|
|
744
892
|
{
|
|
745
893
|
"abstract": true,
|
|
746
894
|
"docs": {
|
|
747
|
-
"
|
|
895
|
+
"default": "'500Mi'",
|
|
896
|
+
"stability": "stable",
|
|
897
|
+
"summary": "Memory limit for Varnish pods."
|
|
748
898
|
},
|
|
749
899
|
"immutable": true,
|
|
750
900
|
"locationInModule": {
|
|
751
901
|
"filename": "src/httpcache.ts",
|
|
752
|
-
"line":
|
|
902
|
+
"line": 48
|
|
753
903
|
},
|
|
754
904
|
"name": "limitMemory",
|
|
755
905
|
"optional": true,
|
|
@@ -760,12 +910,32 @@
|
|
|
760
910
|
{
|
|
761
911
|
"abstract": true,
|
|
762
912
|
"docs": {
|
|
763
|
-
"
|
|
913
|
+
"default": "2",
|
|
914
|
+
"stability": "stable",
|
|
915
|
+
"summary": "Number of Varnish pod replicas to run."
|
|
764
916
|
},
|
|
765
917
|
"immutable": true,
|
|
766
918
|
"locationInModule": {
|
|
767
919
|
"filename": "src/httpcache.ts",
|
|
768
|
-
"line":
|
|
920
|
+
"line": 73
|
|
921
|
+
},
|
|
922
|
+
"name": "replicas",
|
|
923
|
+
"optional": true,
|
|
924
|
+
"type": {
|
|
925
|
+
"primitive": "number"
|
|
926
|
+
}
|
|
927
|
+
},
|
|
928
|
+
{
|
|
929
|
+
"abstract": true,
|
|
930
|
+
"docs": {
|
|
931
|
+
"default": "'100m'",
|
|
932
|
+
"stability": "stable",
|
|
933
|
+
"summary": "CPU request for Varnish pods."
|
|
934
|
+
},
|
|
935
|
+
"immutable": true,
|
|
936
|
+
"locationInModule": {
|
|
937
|
+
"filename": "src/httpcache.ts",
|
|
938
|
+
"line": 54
|
|
769
939
|
},
|
|
770
940
|
"name": "requestCpu",
|
|
771
941
|
"optional": true,
|
|
@@ -776,12 +946,14 @@
|
|
|
776
946
|
{
|
|
777
947
|
"abstract": true,
|
|
778
948
|
"docs": {
|
|
779
|
-
"
|
|
949
|
+
"default": "'100Mi'",
|
|
950
|
+
"stability": "stable",
|
|
951
|
+
"summary": "Memory request for Varnish pods."
|
|
780
952
|
},
|
|
781
953
|
"immutable": true,
|
|
782
954
|
"locationInModule": {
|
|
783
955
|
"filename": "src/httpcache.ts",
|
|
784
|
-
"line":
|
|
956
|
+
"line": 60
|
|
785
957
|
},
|
|
786
958
|
"name": "requestMemory",
|
|
787
959
|
"optional": true,
|
|
@@ -792,12 +964,15 @@
|
|
|
792
964
|
{
|
|
793
965
|
"abstract": true,
|
|
794
966
|
"docs": {
|
|
795
|
-
"
|
|
967
|
+
"default": "false",
|
|
968
|
+
"remarks": "Requires Prometheus Operator to be installed in the cluster.",
|
|
969
|
+
"stability": "stable",
|
|
970
|
+
"summary": "Enable Prometheus ServiceMonitor for metrics collection."
|
|
796
971
|
},
|
|
797
972
|
"immutable": true,
|
|
798
973
|
"locationInModule": {
|
|
799
974
|
"filename": "src/httpcache.ts",
|
|
800
|
-
"line":
|
|
975
|
+
"line": 67
|
|
801
976
|
},
|
|
802
977
|
"name": "servicemonitor",
|
|
803
978
|
"optional": true,
|
|
@@ -808,14 +983,15 @@
|
|
|
808
983
|
{
|
|
809
984
|
"abstract": true,
|
|
810
985
|
"docs": {
|
|
811
|
-
"default": "-
|
|
986
|
+
"default": "- loaded from varnishVclFile or default config file",
|
|
987
|
+
"remarks": "If provided, this takes precedence over varnishVclFile.",
|
|
812
988
|
"stability": "stable",
|
|
813
|
-
"summary": "
|
|
989
|
+
"summary": "Varnish VCL configuration as a string."
|
|
814
990
|
},
|
|
815
991
|
"immutable": true,
|
|
816
992
|
"locationInModule": {
|
|
817
993
|
"filename": "src/httpcache.ts",
|
|
818
|
-
"line":
|
|
994
|
+
"line": 22
|
|
819
995
|
},
|
|
820
996
|
"name": "varnishVcl",
|
|
821
997
|
"optional": true,
|
|
@@ -826,14 +1002,15 @@
|
|
|
826
1002
|
{
|
|
827
1003
|
"abstract": true,
|
|
828
1004
|
"docs": {
|
|
829
|
-
"default": "-
|
|
1005
|
+
"default": "- uses default config/varnish.tpl.vcl",
|
|
1006
|
+
"remarks": "If not provided, uses the default VCL file included in the library.",
|
|
830
1007
|
"stability": "stable",
|
|
831
|
-
"summary": "
|
|
1008
|
+
"summary": "Path to a Varnish VCL configuration file."
|
|
832
1009
|
},
|
|
833
1010
|
"immutable": true,
|
|
834
1011
|
"locationInModule": {
|
|
835
1012
|
"filename": "src/httpcache.ts",
|
|
836
|
-
"line":
|
|
1013
|
+
"line": 29
|
|
837
1014
|
},
|
|
838
1015
|
"name": "varnishVclFile",
|
|
839
1016
|
"optional": true,
|
|
@@ -848,25 +1025,28 @@
|
|
|
848
1025
|
"assembly": "@bluedynamics/cdk8s-plone",
|
|
849
1026
|
"datatype": true,
|
|
850
1027
|
"docs": {
|
|
851
|
-
"stability": "stable"
|
|
1028
|
+
"stability": "stable",
|
|
1029
|
+
"summary": "Main configuration options for Plone deployment."
|
|
852
1030
|
},
|
|
853
1031
|
"fqn": "@bluedynamics/cdk8s-plone.PloneOptions",
|
|
854
1032
|
"kind": "interface",
|
|
855
1033
|
"locationInModule": {
|
|
856
1034
|
"filename": "src/plone.ts",
|
|
857
|
-
"line":
|
|
1035
|
+
"line": 203
|
|
858
1036
|
},
|
|
859
1037
|
"name": "PloneOptions",
|
|
860
1038
|
"properties": [
|
|
861
1039
|
{
|
|
862
1040
|
"abstract": true,
|
|
863
1041
|
"docs": {
|
|
864
|
-
"
|
|
1042
|
+
"default": "{} (uses default values from PloneBaseOptions)",
|
|
1043
|
+
"stability": "stable",
|
|
1044
|
+
"summary": "Backend (Plone API) configuration."
|
|
865
1045
|
},
|
|
866
1046
|
"immutable": true,
|
|
867
1047
|
"locationInModule": {
|
|
868
1048
|
"filename": "src/plone.ts",
|
|
869
|
-
"line":
|
|
1049
|
+
"line": 228
|
|
870
1050
|
},
|
|
871
1051
|
"name": "backend",
|
|
872
1052
|
"optional": true,
|
|
@@ -877,12 +1057,15 @@
|
|
|
877
1057
|
{
|
|
878
1058
|
"abstract": true,
|
|
879
1059
|
"docs": {
|
|
880
|
-
"
|
|
1060
|
+
"default": "{} (uses default values from PloneBaseOptions)",
|
|
1061
|
+
"remarks": "Only used when variant is PloneVariant.VOLTO.",
|
|
1062
|
+
"stability": "stable",
|
|
1063
|
+
"summary": "Frontend (Volto) configuration."
|
|
881
1064
|
},
|
|
882
1065
|
"immutable": true,
|
|
883
1066
|
"locationInModule": {
|
|
884
1067
|
"filename": "src/plone.ts",
|
|
885
|
-
"line":
|
|
1068
|
+
"line": 235
|
|
886
1069
|
},
|
|
887
1070
|
"name": "frontend",
|
|
888
1071
|
"optional": true,
|
|
@@ -893,12 +1076,16 @@
|
|
|
893
1076
|
{
|
|
894
1077
|
"abstract": true,
|
|
895
1078
|
"docs": {
|
|
896
|
-
"
|
|
1079
|
+
"default": "[] (no image pull secrets)",
|
|
1080
|
+
"example": "['my-registry-secret']",
|
|
1081
|
+
"remarks": "These secrets must exist in the same namespace as the deployment.",
|
|
1082
|
+
"stability": "stable",
|
|
1083
|
+
"summary": "Names of Kubernetes secrets to use for pulling private container images."
|
|
897
1084
|
},
|
|
898
1085
|
"immutable": true,
|
|
899
1086
|
"locationInModule": {
|
|
900
1087
|
"filename": "src/plone.ts",
|
|
901
|
-
"line":
|
|
1088
|
+
"line": 243
|
|
902
1089
|
},
|
|
903
1090
|
"name": "imagePullSecrets",
|
|
904
1091
|
"optional": true,
|
|
@@ -914,12 +1101,15 @@
|
|
|
914
1101
|
{
|
|
915
1102
|
"abstract": true,
|
|
916
1103
|
"docs": {
|
|
917
|
-
"
|
|
1104
|
+
"default": "'Plone'",
|
|
1105
|
+
"remarks": "This is used to construct the internal API path for Volto frontend.",
|
|
1106
|
+
"stability": "stable",
|
|
1107
|
+
"summary": "Plone site ID in the ZODB."
|
|
918
1108
|
},
|
|
919
1109
|
"immutable": true,
|
|
920
1110
|
"locationInModule": {
|
|
921
1111
|
"filename": "src/plone.ts",
|
|
922
|
-
"line":
|
|
1112
|
+
"line": 216
|
|
923
1113
|
},
|
|
924
1114
|
"name": "siteId",
|
|
925
1115
|
"optional": true,
|
|
@@ -930,12 +1120,14 @@
|
|
|
930
1120
|
{
|
|
931
1121
|
"abstract": true,
|
|
932
1122
|
"docs": {
|
|
933
|
-
"
|
|
1123
|
+
"default": "PloneVariant.VOLTO",
|
|
1124
|
+
"stability": "stable",
|
|
1125
|
+
"summary": "Plone deployment variant to use."
|
|
934
1126
|
},
|
|
935
1127
|
"immutable": true,
|
|
936
1128
|
"locationInModule": {
|
|
937
1129
|
"filename": "src/plone.ts",
|
|
938
|
-
"line":
|
|
1130
|
+
"line": 222
|
|
939
1131
|
},
|
|
940
1132
|
"name": "variant",
|
|
941
1133
|
"optional": true,
|
|
@@ -946,12 +1138,15 @@
|
|
|
946
1138
|
{
|
|
947
1139
|
"abstract": true,
|
|
948
1140
|
"docs": {
|
|
949
|
-
"
|
|
1141
|
+
"default": "'undefined'",
|
|
1142
|
+
"remarks": "This is used in Kubernetes labels and doesn't affect the actual image versions.",
|
|
1143
|
+
"stability": "stable",
|
|
1144
|
+
"summary": "Version string for labeling the deployment."
|
|
950
1145
|
},
|
|
951
1146
|
"immutable": true,
|
|
952
1147
|
"locationInModule": {
|
|
953
1148
|
"filename": "src/plone.ts",
|
|
954
|
-
"line":
|
|
1149
|
+
"line": 209
|
|
955
1150
|
},
|
|
956
1151
|
"name": "version",
|
|
957
1152
|
"optional": true,
|
|
@@ -965,24 +1160,29 @@
|
|
|
965
1160
|
"@bluedynamics/cdk8s-plone.PloneVariant": {
|
|
966
1161
|
"assembly": "@bluedynamics/cdk8s-plone",
|
|
967
1162
|
"docs": {
|
|
968
|
-
"stability": "stable"
|
|
1163
|
+
"stability": "stable",
|
|
1164
|
+
"summary": "Plone deployment variants."
|
|
969
1165
|
},
|
|
970
1166
|
"fqn": "@bluedynamics/cdk8s-plone.PloneVariant",
|
|
971
1167
|
"kind": "enum",
|
|
972
1168
|
"locationInModule": {
|
|
973
1169
|
"filename": "src/plone.ts",
|
|
974
|
-
"line":
|
|
1170
|
+
"line": 186
|
|
975
1171
|
},
|
|
976
1172
|
"members": [
|
|
977
1173
|
{
|
|
978
1174
|
"docs": {
|
|
979
|
-
"
|
|
1175
|
+
"remarks": "Deploys both frontend and backend services.",
|
|
1176
|
+
"stability": "stable",
|
|
1177
|
+
"summary": "Volto variant: ReactJS frontend (Volto) with REST API backend."
|
|
980
1178
|
},
|
|
981
1179
|
"name": "VOLTO"
|
|
982
1180
|
},
|
|
983
1181
|
{
|
|
984
1182
|
"docs": {
|
|
985
|
-
"
|
|
1183
|
+
"remarks": "Deploys only the backend service.",
|
|
1184
|
+
"stability": "stable",
|
|
1185
|
+
"summary": "Classic UI variant: Traditional Plone with server-side rendering."
|
|
986
1186
|
},
|
|
987
1187
|
"name": "CLASSICUI"
|
|
988
1188
|
}
|
|
@@ -991,6 +1191,6 @@
|
|
|
991
1191
|
"symbolId": "src/plone:PloneVariant"
|
|
992
1192
|
}
|
|
993
1193
|
},
|
|
994
|
-
"version": "0.0
|
|
995
|
-
"fingerprint": "
|
|
1194
|
+
"version": "0.1.0",
|
|
1195
|
+
"fingerprint": "ObcEWIyyMxbUwjQu4nAHh/HAHbKOKwctDZrOkMNlV8w="
|
|
996
1196
|
}
|