@bluedynamics/cdk8s-plone 0.1.27 → 0.1.29

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/API.md CHANGED
@@ -726,6 +726,7 @@ const ploneBaseOptions: PloneBaseOptions = { ... }
726
726
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneBaseOptions.property.replicas">replicas</a></code> | <code>number</code> | Number of pod replicas to run. |
727
727
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneBaseOptions.property.requestCpu">requestCpu</a></code> | <code>string</code> | CPU request for the container. |
728
728
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneBaseOptions.property.requestMemory">requestMemory</a></code> | <code>string</code> | Memory request for the container. |
729
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneBaseOptions.property.securityContext">securityContext</a></code> | <code><a href="#@bluedynamics/cdk8s-plone.PloneSecurityContext">PloneSecurityContext</a></code> | Security context for the container. |
729
730
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneBaseOptions.property.serviceAnnotations">serviceAnnotations</a></code> | <code>{[ key: string ]: string}</code> | Annotations to add to the Service metadata. |
730
731
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneBaseOptions.property.servicemonitor">servicemonitor</a></code> | <code>boolean</code> | Enable Prometheus ServiceMonitor for metrics collection. |
731
732
 
@@ -1159,6 +1160,28 @@ Memory request for the container.
1159
1160
  ```
1160
1161
 
1161
1162
 
1163
+ ##### `securityContext`<sup>Optional</sup> <a name="securityContext" id="@bluedynamics/cdk8s-plone.PloneBaseOptions.property.securityContext"></a>
1164
+
1165
+ ```typescript
1166
+ public readonly securityContext: PloneSecurityContext;
1167
+ ```
1168
+
1169
+ - *Type:* <a href="#@bluedynamics/cdk8s-plone.PloneSecurityContext">PloneSecurityContext</a>
1170
+ - *Default:* no security context
1171
+
1172
+ Security context for the container.
1173
+
1174
+ Use to set capabilities, run as non-root, read-only filesystem, etc.
1175
+
1176
+ ---
1177
+
1178
+ *Example*
1179
+
1180
+ ```typescript
1181
+ { capabilities: { add: ['SYS_PTRACE'] } }
1182
+ ```
1183
+
1184
+
1162
1185
  ##### `serviceAnnotations`<sup>Optional</sup> <a name="serviceAnnotations" id="@bluedynamics/cdk8s-plone.PloneBaseOptions.property.serviceAnnotations"></a>
1163
1186
 
1164
1187
  ```typescript
@@ -1197,6 +1220,53 @@ When enabled, a ServiceMonitor resource will be created to scrape metrics.
1197
1220
 
1198
1221
  ---
1199
1222
 
1223
+ ### PloneCapabilities <a name="PloneCapabilities" id="@bluedynamics/cdk8s-plone.PloneCapabilities"></a>
1224
+
1225
+ Linux capabilities to add or drop on a container.
1226
+
1227
+ #### Initializer <a name="Initializer" id="@bluedynamics/cdk8s-plone.PloneCapabilities.Initializer"></a>
1228
+
1229
+ ```typescript
1230
+ import { PloneCapabilities } from '@bluedynamics/cdk8s-plone'
1231
+
1232
+ const ploneCapabilities: PloneCapabilities = { ... }
1233
+ ```
1234
+
1235
+ #### Properties <a name="Properties" id="Properties"></a>
1236
+
1237
+ | **Name** | **Type** | **Description** |
1238
+ | --- | --- | --- |
1239
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneCapabilities.property.add">add</a></code> | <code>string[]</code> | Capabilities to add (e.g. 'SYS_PTRACE', 'NET_ADMIN'). |
1240
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneCapabilities.property.drop">drop</a></code> | <code>string[]</code> | Capabilities to drop (e.g. 'ALL', 'NET_RAW'). |
1241
+
1242
+ ---
1243
+
1244
+ ##### `add`<sup>Optional</sup> <a name="add" id="@bluedynamics/cdk8s-plone.PloneCapabilities.property.add"></a>
1245
+
1246
+ ```typescript
1247
+ public readonly add: string[];
1248
+ ```
1249
+
1250
+ - *Type:* string[]
1251
+ - *Default:* no capabilities added
1252
+
1253
+ Capabilities to add (e.g. 'SYS_PTRACE', 'NET_ADMIN').
1254
+
1255
+ ---
1256
+
1257
+ ##### `drop`<sup>Optional</sup> <a name="drop" id="@bluedynamics/cdk8s-plone.PloneCapabilities.property.drop"></a>
1258
+
1259
+ ```typescript
1260
+ public readonly drop: string[];
1261
+ ```
1262
+
1263
+ - *Type:* string[]
1264
+ - *Default:* no capabilities dropped
1265
+
1266
+ Capabilities to drop (e.g. 'ALL', 'NET_RAW').
1267
+
1268
+ ---
1269
+
1200
1270
  ### PloneHttpcacheOptions <a name="PloneHttpcacheOptions" id="@bluedynamics/cdk8s-plone.PloneHttpcacheOptions"></a>
1201
1271
 
1202
1272
  Configuration options for PloneHttpcache (Varnish caching layer).
@@ -1565,6 +1635,132 @@ This is used in Kubernetes labels and doesn't affect the actual image versions.
1565
1635
 
1566
1636
  ---
1567
1637
 
1638
+ ### PloneSecurityContext <a name="PloneSecurityContext" id="@bluedynamics/cdk8s-plone.PloneSecurityContext"></a>
1639
+
1640
+ Security context for a Plone container.
1641
+
1642
+ Controls privilege and access settings.
1643
+
1644
+ #### Initializer <a name="Initializer" id="@bluedynamics/cdk8s-plone.PloneSecurityContext.Initializer"></a>
1645
+
1646
+ ```typescript
1647
+ import { PloneSecurityContext } from '@bluedynamics/cdk8s-plone'
1648
+
1649
+ const ploneSecurityContext: PloneSecurityContext = { ... }
1650
+ ```
1651
+
1652
+ #### Properties <a name="Properties" id="Properties"></a>
1653
+
1654
+ | **Name** | **Type** | **Description** |
1655
+ | --- | --- | --- |
1656
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneSecurityContext.property.allowPrivilegeEscalation">allowPrivilegeEscalation</a></code> | <code>boolean</code> | Allow privilege escalation for the container process. |
1657
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneSecurityContext.property.capabilities">capabilities</a></code> | <code><a href="#@bluedynamics/cdk8s-plone.PloneCapabilities">PloneCapabilities</a></code> | Linux capabilities to add or drop. |
1658
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneSecurityContext.property.privileged">privileged</a></code> | <code>boolean</code> | Run the container in privileged mode. |
1659
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneSecurityContext.property.readOnlyRootFilesystem">readOnlyRootFilesystem</a></code> | <code>boolean</code> | Mount the root filesystem as read-only. |
1660
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneSecurityContext.property.runAsGroup">runAsGroup</a></code> | <code>number</code> | Run the container as a specific group ID. |
1661
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneSecurityContext.property.runAsNonRoot">runAsNonRoot</a></code> | <code>boolean</code> | Require the container to run as non-root. |
1662
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneSecurityContext.property.runAsUser">runAsUser</a></code> | <code>number</code> | Run the container as a specific user ID. |
1663
+
1664
+ ---
1665
+
1666
+ ##### `allowPrivilegeEscalation`<sup>Optional</sup> <a name="allowPrivilegeEscalation" id="@bluedynamics/cdk8s-plone.PloneSecurityContext.property.allowPrivilegeEscalation"></a>
1667
+
1668
+ ```typescript
1669
+ public readonly allowPrivilegeEscalation: boolean;
1670
+ ```
1671
+
1672
+ - *Type:* boolean
1673
+ - *Default:* undefined
1674
+
1675
+ Allow privilege escalation for the container process.
1676
+
1677
+ ---
1678
+
1679
+ ##### `capabilities`<sup>Optional</sup> <a name="capabilities" id="@bluedynamics/cdk8s-plone.PloneSecurityContext.property.capabilities"></a>
1680
+
1681
+ ```typescript
1682
+ public readonly capabilities: PloneCapabilities;
1683
+ ```
1684
+
1685
+ - *Type:* <a href="#@bluedynamics/cdk8s-plone.PloneCapabilities">PloneCapabilities</a>
1686
+ - *Default:* no capability changes
1687
+
1688
+ Linux capabilities to add or drop.
1689
+
1690
+ ---
1691
+
1692
+ *Example*
1693
+
1694
+ ```typescript
1695
+ { add: ['SYS_PTRACE'] }
1696
+ ```
1697
+
1698
+
1699
+ ##### `privileged`<sup>Optional</sup> <a name="privileged" id="@bluedynamics/cdk8s-plone.PloneSecurityContext.property.privileged"></a>
1700
+
1701
+ ```typescript
1702
+ public readonly privileged: boolean;
1703
+ ```
1704
+
1705
+ - *Type:* boolean
1706
+ - *Default:* undefined
1707
+
1708
+ Run the container in privileged mode.
1709
+
1710
+ ---
1711
+
1712
+ ##### `readOnlyRootFilesystem`<sup>Optional</sup> <a name="readOnlyRootFilesystem" id="@bluedynamics/cdk8s-plone.PloneSecurityContext.property.readOnlyRootFilesystem"></a>
1713
+
1714
+ ```typescript
1715
+ public readonly readOnlyRootFilesystem: boolean;
1716
+ ```
1717
+
1718
+ - *Type:* boolean
1719
+ - *Default:* undefined
1720
+
1721
+ Mount the root filesystem as read-only.
1722
+
1723
+ ---
1724
+
1725
+ ##### `runAsGroup`<sup>Optional</sup> <a name="runAsGroup" id="@bluedynamics/cdk8s-plone.PloneSecurityContext.property.runAsGroup"></a>
1726
+
1727
+ ```typescript
1728
+ public readonly runAsGroup: number;
1729
+ ```
1730
+
1731
+ - *Type:* number
1732
+ - *Default:* container default
1733
+
1734
+ Run the container as a specific group ID.
1735
+
1736
+ ---
1737
+
1738
+ ##### `runAsNonRoot`<sup>Optional</sup> <a name="runAsNonRoot" id="@bluedynamics/cdk8s-plone.PloneSecurityContext.property.runAsNonRoot"></a>
1739
+
1740
+ ```typescript
1741
+ public readonly runAsNonRoot: boolean;
1742
+ ```
1743
+
1744
+ - *Type:* boolean
1745
+ - *Default:* undefined
1746
+
1747
+ Require the container to run as non-root.
1748
+
1749
+ ---
1750
+
1751
+ ##### `runAsUser`<sup>Optional</sup> <a name="runAsUser" id="@bluedynamics/cdk8s-plone.PloneSecurityContext.property.runAsUser"></a>
1752
+
1753
+ ```typescript
1754
+ public readonly runAsUser: number;
1755
+ ```
1756
+
1757
+ - *Type:* number
1758
+ - *Default:* container default
1759
+
1760
+ Run the container as a specific user ID.
1761
+
1762
+ ---
1763
+
1568
1764
  ### PloneVinylCacheOptions <a name="PloneVinylCacheOptions" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions"></a>
1569
1765
 
1570
1766
  Configuration options for PloneVinylCache (cloud-vinyl operator).
@@ -1588,17 +1784,31 @@ const ploneVinylCacheOptions: PloneVinylCacheOptions = { ... }
1588
1784
  | --- | --- | --- |
1589
1785
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.plone">plone</a></code> | <code><a href="#@bluedynamics/cdk8s-plone.Plone">Plone</a></code> | The Plone construct to attach the cache to. |
1590
1786
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.director">director</a></code> | <code>string</code> | Director type for load distribution. |
1787
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.extraBackends">extraBackends</a></code> | <code><a href="#@bluedynamics/cdk8s-plone.VinylCacheBackend">VinylCacheBackend</a>[]</code> | Additional backends to add after the auto-generated Plone backends. |
1591
1788
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.image">image</a></code> | <code>string</code> | Container image for the Varnish pods. |
1592
1789
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.invalidation">invalidation</a></code> | <code>boolean</code> | Enable cache invalidation (PURGE, BAN, xkey). |
1593
1790
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.limitCpu">limitCpu</a></code> | <code>string</code> | CPU limit for Varnish pods. |
1594
1791
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.limitMemory">limitMemory</a></code> | <code>string</code> | Memory limit for Varnish pods. |
1595
1792
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.monitoring">monitoring</a></code> | <code>boolean</code> | Enable Prometheus monitoring (metrics + ServiceMonitor). |
1793
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.nodeSelector">nodeSelector</a></code> | <code>{[ key: string ]: string}</code> | Node selector labels for the Varnish pods. |
1596
1794
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.replicas">replicas</a></code> | <code>number</code> | Number of Varnish pod replicas. |
1597
1795
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.requestCpu">requestCpu</a></code> | <code>string</code> | CPU request for Varnish pods. |
1598
1796
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.requestMemory">requestMemory</a></code> | <code>string</code> | Memory request for Varnish pods. |
1599
1797
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.tolerations">tolerations</a></code> | <code><a href="#@bluedynamics/cdk8s-plone.VinylCacheToleration">VinylCacheToleration</a>[]</code> | Tolerations for the Varnish pods. |
1798
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclBackendErrorSnippet">vclBackendErrorSnippet</a></code> | <code>string</code> | Custom VCL snippet for vcl_backend_error subroutine. |
1799
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclBackendFetchSnippet">vclBackendFetchSnippet</a></code> | <code>string</code> | Custom VCL snippet for vcl_backend_fetch subroutine. |
1600
1800
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclBackendResponseSnippet">vclBackendResponseSnippet</a></code> | <code>string</code> | Custom VCL snippet for vcl_backend_response subroutine. |
1801
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclDeliverSnippet">vclDeliverSnippet</a></code> | <code>string</code> | Custom VCL snippet for vcl_deliver subroutine. |
1802
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclFiniSnippet">vclFiniSnippet</a></code> | <code>string</code> | Custom VCL snippet for vcl_fini subroutine. |
1803
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclHashSnippet">vclHashSnippet</a></code> | <code>string</code> | Custom VCL snippet for vcl_hash subroutine. |
1804
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclHitSnippet">vclHitSnippet</a></code> | <code>string</code> | Custom VCL snippet for vcl_hit subroutine. |
1805
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclInitSnippet">vclInitSnippet</a></code> | <code>string</code> | Custom VCL snippet for vcl_init subroutine. |
1806
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclMissSnippet">vclMissSnippet</a></code> | <code>string</code> | Custom VCL snippet for vcl_miss subroutine. |
1807
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclPassSnippet">vclPassSnippet</a></code> | <code>string</code> | Custom VCL snippet for vcl_pass subroutine. |
1808
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclPipeSnippet">vclPipeSnippet</a></code> | <code>string</code> | Custom VCL snippet for vcl_pipe subroutine. |
1809
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclPurgeSnippet">vclPurgeSnippet</a></code> | <code>string</code> | Custom VCL snippet for vcl_purge subroutine. |
1601
1810
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclRecvSnippet">vclRecvSnippet</a></code> | <code>string</code> | Custom VCL snippet for vcl_recv subroutine. |
1811
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclSynthSnippet">vclSynthSnippet</a></code> | <code>string</code> | Custom VCL snippet for vcl_synth subroutine. |
1602
1812
 
1603
1813
  ---
1604
1814
 
@@ -1629,6 +1839,21 @@ Director type for load distribution.
1629
1839
 
1630
1840
  ---
1631
1841
 
1842
+ ##### `extraBackends`<sup>Optional</sup> <a name="extraBackends" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.extraBackends"></a>
1843
+
1844
+ ```typescript
1845
+ public readonly extraBackends: VinylCacheBackend[];
1846
+ ```
1847
+
1848
+ - *Type:* <a href="#@bluedynamics/cdk8s-plone.VinylCacheBackend">VinylCacheBackend</a>[]
1849
+ - *Default:* no extra backends
1850
+
1851
+ Additional backends to add after the auto-generated Plone backends.
1852
+
1853
+ Uses the same backend type structure as the VinylCache CRD.
1854
+
1855
+ ---
1856
+
1632
1857
  ##### `image`<sup>Optional</sup> <a name="image" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.image"></a>
1633
1858
 
1634
1859
  ```typescript
@@ -1694,6 +1919,21 @@ Enable Prometheus monitoring (metrics + ServiceMonitor).
1694
1919
 
1695
1920
  ---
1696
1921
 
1922
+ ##### `nodeSelector`<sup>Optional</sup> <a name="nodeSelector" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.nodeSelector"></a>
1923
+
1924
+ ```typescript
1925
+ public readonly nodeSelector: {[ key: string ]: string};
1926
+ ```
1927
+
1928
+ - *Type:* {[ key: string ]: string}
1929
+ - *Default:* no node selector
1930
+
1931
+ Node selector labels for the Varnish pods.
1932
+
1933
+ Constrains pods to nodes matching all specified labels.
1934
+
1935
+ ---
1936
+
1697
1937
  ##### `replicas`<sup>Optional</sup> <a name="replicas" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.replicas"></a>
1698
1938
 
1699
1939
  ```typescript
@@ -1746,6 +1986,32 @@ Tolerations for the Varnish pods.
1746
1986
 
1747
1987
  ---
1748
1988
 
1989
+ ##### `vclBackendErrorSnippet`<sup>Optional</sup> <a name="vclBackendErrorSnippet" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclBackendErrorSnippet"></a>
1990
+
1991
+ ```typescript
1992
+ public readonly vclBackendErrorSnippet: string;
1993
+ ```
1994
+
1995
+ - *Type:* string
1996
+ - *Default:* no snippet
1997
+
1998
+ Custom VCL snippet for vcl_backend_error subroutine.
1999
+
2000
+ ---
2001
+
2002
+ ##### `vclBackendFetchSnippet`<sup>Optional</sup> <a name="vclBackendFetchSnippet" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclBackendFetchSnippet"></a>
2003
+
2004
+ ```typescript
2005
+ public readonly vclBackendFetchSnippet: string;
2006
+ ```
2007
+
2008
+ - *Type:* string
2009
+ - *Default:* no snippet
2010
+
2011
+ Custom VCL snippet for vcl_backend_fetch subroutine.
2012
+
2013
+ ---
2014
+
1749
2015
  ##### `vclBackendResponseSnippet`<sup>Optional</sup> <a name="vclBackendResponseSnippet" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclBackendResponseSnippet"></a>
1750
2016
 
1751
2017
  ```typescript
@@ -1761,6 +2027,123 @@ Replaces the default Plone backend_response snippet.
1761
2027
 
1762
2028
  ---
1763
2029
 
2030
+ ##### `vclDeliverSnippet`<sup>Optional</sup> <a name="vclDeliverSnippet" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclDeliverSnippet"></a>
2031
+
2032
+ ```typescript
2033
+ public readonly vclDeliverSnippet: string;
2034
+ ```
2035
+
2036
+ - *Type:* string
2037
+ - *Default:* no snippet
2038
+
2039
+ Custom VCL snippet for vcl_deliver subroutine.
2040
+
2041
+ ---
2042
+
2043
+ ##### `vclFiniSnippet`<sup>Optional</sup> <a name="vclFiniSnippet" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclFiniSnippet"></a>
2044
+
2045
+ ```typescript
2046
+ public readonly vclFiniSnippet: string;
2047
+ ```
2048
+
2049
+ - *Type:* string
2050
+ - *Default:* no snippet
2051
+
2052
+ Custom VCL snippet for vcl_fini subroutine.
2053
+
2054
+ ---
2055
+
2056
+ ##### `vclHashSnippet`<sup>Optional</sup> <a name="vclHashSnippet" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclHashSnippet"></a>
2057
+
2058
+ ```typescript
2059
+ public readonly vclHashSnippet: string;
2060
+ ```
2061
+
2062
+ - *Type:* string
2063
+ - *Default:* no snippet
2064
+
2065
+ Custom VCL snippet for vcl_hash subroutine.
2066
+
2067
+ ---
2068
+
2069
+ ##### `vclHitSnippet`<sup>Optional</sup> <a name="vclHitSnippet" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclHitSnippet"></a>
2070
+
2071
+ ```typescript
2072
+ public readonly vclHitSnippet: string;
2073
+ ```
2074
+
2075
+ - *Type:* string
2076
+ - *Default:* no snippet
2077
+
2078
+ Custom VCL snippet for vcl_hit subroutine.
2079
+
2080
+ ---
2081
+
2082
+ ##### `vclInitSnippet`<sup>Optional</sup> <a name="vclInitSnippet" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclInitSnippet"></a>
2083
+
2084
+ ```typescript
2085
+ public readonly vclInitSnippet: string;
2086
+ ```
2087
+
2088
+ - *Type:* string
2089
+ - *Default:* no snippet
2090
+
2091
+ Custom VCL snippet for vcl_init subroutine.
2092
+
2093
+ ---
2094
+
2095
+ ##### `vclMissSnippet`<sup>Optional</sup> <a name="vclMissSnippet" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclMissSnippet"></a>
2096
+
2097
+ ```typescript
2098
+ public readonly vclMissSnippet: string;
2099
+ ```
2100
+
2101
+ - *Type:* string
2102
+ - *Default:* no snippet
2103
+
2104
+ Custom VCL snippet for vcl_miss subroutine.
2105
+
2106
+ ---
2107
+
2108
+ ##### `vclPassSnippet`<sup>Optional</sup> <a name="vclPassSnippet" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclPassSnippet"></a>
2109
+
2110
+ ```typescript
2111
+ public readonly vclPassSnippet: string;
2112
+ ```
2113
+
2114
+ - *Type:* string
2115
+ - *Default:* no snippet
2116
+
2117
+ Custom VCL snippet for vcl_pass subroutine.
2118
+
2119
+ ---
2120
+
2121
+ ##### `vclPipeSnippet`<sup>Optional</sup> <a name="vclPipeSnippet" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclPipeSnippet"></a>
2122
+
2123
+ ```typescript
2124
+ public readonly vclPipeSnippet: string;
2125
+ ```
2126
+
2127
+ - *Type:* string
2128
+ - *Default:* no snippet
2129
+
2130
+ Custom VCL snippet for vcl_pipe subroutine.
2131
+
2132
+ ---
2133
+
2134
+ ##### `vclPurgeSnippet`<sup>Optional</sup> <a name="vclPurgeSnippet" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclPurgeSnippet"></a>
2135
+
2136
+ ```typescript
2137
+ public readonly vclPurgeSnippet: string;
2138
+ ```
2139
+
2140
+ - *Type:* string
2141
+ - *Default:* no snippet
2142
+
2143
+ Custom VCL snippet for vcl_purge subroutine.
2144
+
2145
+ ---
2146
+
1764
2147
  ##### `vclRecvSnippet`<sup>Optional</sup> <a name="vclRecvSnippet" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclRecvSnippet"></a>
1765
2148
 
1766
2149
  ```typescript
@@ -1776,6 +2159,212 @@ Replaces the default Plone recv snippet.
1776
2159
 
1777
2160
  ---
1778
2161
 
2162
+ ##### `vclSynthSnippet`<sup>Optional</sup> <a name="vclSynthSnippet" id="@bluedynamics/cdk8s-plone.PloneVinylCacheOptions.property.vclSynthSnippet"></a>
2163
+
2164
+ ```typescript
2165
+ public readonly vclSynthSnippet: string;
2166
+ ```
2167
+
2168
+ - *Type:* string
2169
+ - *Default:* no snippet
2170
+
2171
+ Custom VCL snippet for vcl_synth subroutine.
2172
+
2173
+ ---
2174
+
2175
+ ### VinylCacheBackend <a name="VinylCacheBackend" id="@bluedynamics/cdk8s-plone.VinylCacheBackend"></a>
2176
+
2177
+ An additional backend for the VinylCache.
2178
+
2179
+ #### Initializer <a name="Initializer" id="@bluedynamics/cdk8s-plone.VinylCacheBackend.Initializer"></a>
2180
+
2181
+ ```typescript
2182
+ import { VinylCacheBackend } from '@bluedynamics/cdk8s-plone'
2183
+
2184
+ const vinylCacheBackend: VinylCacheBackend = { ... }
2185
+ ```
2186
+
2187
+ #### Properties <a name="Properties" id="Properties"></a>
2188
+
2189
+ | **Name** | **Type** | **Description** |
2190
+ | --- | --- | --- |
2191
+ | <code><a href="#@bluedynamics/cdk8s-plone.VinylCacheBackend.property.name">name</a></code> | <code>string</code> | VCL identifier for this backend. |
2192
+ | <code><a href="#@bluedynamics/cdk8s-plone.VinylCacheBackend.property.port">port</a></code> | <code>number</code> | Port to use for this backend. |
2193
+ | <code><a href="#@bluedynamics/cdk8s-plone.VinylCacheBackend.property.serviceName">serviceName</a></code> | <code>string</code> | Kubernetes Service name to use as backend. |
2194
+ | <code><a href="#@bluedynamics/cdk8s-plone.VinylCacheBackend.property.probe">probe</a></code> | <code><a href="#@bluedynamics/cdk8s-plone.VinylCacheBackendProbe">VinylCacheBackendProbe</a></code> | Health probe configuration. |
2195
+ | <code><a href="#@bluedynamics/cdk8s-plone.VinylCacheBackend.property.weight">weight</a></code> | <code>number</code> | Relative weight for the director. |
2196
+
2197
+ ---
2198
+
2199
+ ##### `name`<sup>Required</sup> <a name="name" id="@bluedynamics/cdk8s-plone.VinylCacheBackend.property.name"></a>
2200
+
2201
+ ```typescript
2202
+ public readonly name: string;
2203
+ ```
2204
+
2205
+ - *Type:* string
2206
+
2207
+ VCL identifier for this backend.
2208
+
2209
+ Must match ^[a-zA-Z][a-zA-Z0-9_]*$.
2210
+
2211
+ ---
2212
+
2213
+ ##### `port`<sup>Required</sup> <a name="port" id="@bluedynamics/cdk8s-plone.VinylCacheBackend.property.port"></a>
2214
+
2215
+ ```typescript
2216
+ public readonly port: number;
2217
+ ```
2218
+
2219
+ - *Type:* number
2220
+
2221
+ Port to use for this backend.
2222
+
2223
+ ---
2224
+
2225
+ ##### `serviceName`<sup>Required</sup> <a name="serviceName" id="@bluedynamics/cdk8s-plone.VinylCacheBackend.property.serviceName"></a>
2226
+
2227
+ ```typescript
2228
+ public readonly serviceName: string;
2229
+ ```
2230
+
2231
+ - *Type:* string
2232
+
2233
+ Kubernetes Service name to use as backend.
2234
+
2235
+ ---
2236
+
2237
+ ##### `probe`<sup>Optional</sup> <a name="probe" id="@bluedynamics/cdk8s-plone.VinylCacheBackend.property.probe"></a>
2238
+
2239
+ ```typescript
2240
+ public readonly probe: VinylCacheBackendProbe;
2241
+ ```
2242
+
2243
+ - *Type:* <a href="#@bluedynamics/cdk8s-plone.VinylCacheBackendProbe">VinylCacheBackendProbe</a>
2244
+ - *Default:* no probe
2245
+
2246
+ Health probe configuration.
2247
+
2248
+ ---
2249
+
2250
+ ##### `weight`<sup>Optional</sup> <a name="weight" id="@bluedynamics/cdk8s-plone.VinylCacheBackend.property.weight"></a>
2251
+
2252
+ ```typescript
2253
+ public readonly weight: number;
2254
+ ```
2255
+
2256
+ - *Type:* number
2257
+ - *Default:* operator default
2258
+
2259
+ Relative weight for the director.
2260
+
2261
+ 0 means standby.
2262
+
2263
+ ---
2264
+
2265
+ ### VinylCacheBackendProbe <a name="VinylCacheBackendProbe" id="@bluedynamics/cdk8s-plone.VinylCacheBackendProbe"></a>
2266
+
2267
+ Health probe configuration for a VinylCache backend.
2268
+
2269
+ #### Initializer <a name="Initializer" id="@bluedynamics/cdk8s-plone.VinylCacheBackendProbe.Initializer"></a>
2270
+
2271
+ ```typescript
2272
+ import { VinylCacheBackendProbe } from '@bluedynamics/cdk8s-plone'
2273
+
2274
+ const vinylCacheBackendProbe: VinylCacheBackendProbe = { ... }
2275
+ ```
2276
+
2277
+ #### Properties <a name="Properties" id="Properties"></a>
2278
+
2279
+ | **Name** | **Type** | **Description** |
2280
+ | --- | --- | --- |
2281
+ | <code><a href="#@bluedynamics/cdk8s-plone.VinylCacheBackendProbe.property.expectedResponse">expectedResponse</a></code> | <code>number</code> | Expected HTTP response status code. |
2282
+ | <code><a href="#@bluedynamics/cdk8s-plone.VinylCacheBackendProbe.property.interval">interval</a></code> | <code>string</code> | How often to probe the backend. |
2283
+ | <code><a href="#@bluedynamics/cdk8s-plone.VinylCacheBackendProbe.property.threshold">threshold</a></code> | <code>number</code> | Minimum successful probes within window for healthy status. |
2284
+ | <code><a href="#@bluedynamics/cdk8s-plone.VinylCacheBackendProbe.property.timeout">timeout</a></code> | <code>string</code> | Maximum time to wait for a probe response. |
2285
+ | <code><a href="#@bluedynamics/cdk8s-plone.VinylCacheBackendProbe.property.url">url</a></code> | <code>string</code> | URL to probe. |
2286
+ | <code><a href="#@bluedynamics/cdk8s-plone.VinylCacheBackendProbe.property.window">window</a></code> | <code>number</code> | Number of most recent probes to consider. |
2287
+
2288
+ ---
2289
+
2290
+ ##### `expectedResponse`<sup>Optional</sup> <a name="expectedResponse" id="@bluedynamics/cdk8s-plone.VinylCacheBackendProbe.property.expectedResponse"></a>
2291
+
2292
+ ```typescript
2293
+ public readonly expectedResponse: number;
2294
+ ```
2295
+
2296
+ - *Type:* number
2297
+ - *Default:* 200
2298
+
2299
+ Expected HTTP response status code.
2300
+
2301
+ ---
2302
+
2303
+ ##### `interval`<sup>Optional</sup> <a name="interval" id="@bluedynamics/cdk8s-plone.VinylCacheBackendProbe.property.interval"></a>
2304
+
2305
+ ```typescript
2306
+ public readonly interval: string;
2307
+ ```
2308
+
2309
+ - *Type:* string
2310
+ - *Default:* '5s'
2311
+
2312
+ How often to probe the backend.
2313
+
2314
+ ---
2315
+
2316
+ ##### `threshold`<sup>Optional</sup> <a name="threshold" id="@bluedynamics/cdk8s-plone.VinylCacheBackendProbe.property.threshold"></a>
2317
+
2318
+ ```typescript
2319
+ public readonly threshold: number;
2320
+ ```
2321
+
2322
+ - *Type:* number
2323
+ - *Default:* 8
2324
+
2325
+ Minimum successful probes within window for healthy status.
2326
+
2327
+ ---
2328
+
2329
+ ##### `timeout`<sup>Optional</sup> <a name="timeout" id="@bluedynamics/cdk8s-plone.VinylCacheBackendProbe.property.timeout"></a>
2330
+
2331
+ ```typescript
2332
+ public readonly timeout: string;
2333
+ ```
2334
+
2335
+ - *Type:* string
2336
+ - *Default:* '2s'
2337
+
2338
+ Maximum time to wait for a probe response.
2339
+
2340
+ ---
2341
+
2342
+ ##### `url`<sup>Optional</sup> <a name="url" id="@bluedynamics/cdk8s-plone.VinylCacheBackendProbe.property.url"></a>
2343
+
2344
+ ```typescript
2345
+ public readonly url: string;
2346
+ ```
2347
+
2348
+ - *Type:* string
2349
+ - *Default:* '/'
2350
+
2351
+ URL to probe.
2352
+
2353
+ ---
2354
+
2355
+ ##### `window`<sup>Optional</sup> <a name="window" id="@bluedynamics/cdk8s-plone.VinylCacheBackendProbe.property.window"></a>
2356
+
2357
+ ```typescript
2358
+ public readonly window: number;
2359
+ ```
2360
+
2361
+ - *Type:* number
2362
+ - *Default:* 10
2363
+
2364
+ Number of most recent probes to consider.
2365
+
2366
+ ---
2367
+
1779
2368
  ### VinylCacheToleration <a name="VinylCacheToleration" id="@bluedynamics/cdk8s-plone.VinylCacheToleration"></a>
1780
2369
 
1781
2370
  A Kubernetes toleration for the Varnish pods.
@@ -118,6 +118,13 @@ export interface PloneDeploymentOptions {
118
118
  readonly nodeSelector?: {
119
119
  [key: string]: string;
120
120
  };
121
+ /**
122
+ * Security context for the container.
123
+ * Use to set capabilities, run as non-root, read-only filesystem, etc.
124
+ * @example { capabilities: { add: ['SYS_PTRACE'] } }
125
+ * @default - no security context
126
+ */
127
+ readonly securityContext?: k8s.SecurityContext;
121
128
  /**
122
129
  * Liveness probe configuration for the container.
123
130
  * @default - undefined (no liveness probe)