@flowfuse/driver-kubernetes 2.27.2-d731c64-202603091159.0 → 2.28.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.
@@ -9,7 +9,7 @@ jobs:
9
9
  runs-on: ubuntu-latest
10
10
  steps:
11
11
  - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
12
- - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0
12
+ - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
13
13
  with:
14
14
  node-version: 18
15
15
  - run: npm ci
package/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ #### 2.28.0: Release
2
+
3
+ - Bump actions/setup-node from 6.2.0 to 6.3.0 (#314)
4
+ - Bump flowfuse/github-actions-workflows/.github/workflows/publish_node_package.yml (#316)
5
+ - Bump flowfuse/github-actions-workflows/.github/workflows/build_node_package.yml (#313)
6
+ - Bump flowfuse/github-actions-workflows/.github/workflows/sast_scan.yaml (#315)
7
+ - Bump benc-uk/workflow-dispatch from 1.2.4 to 1.3.1 (#305)
8
+ - Bump flowfuse/github-actions-workflows/.github/workflows/sast_scan.yaml (#308)
9
+ - Bump flowfuse/github-actions-workflows/.github/workflows/publish_node_package.yml (#309)
10
+ - Bump flowfuse/github-actions-workflows/.github/workflows/build_node_package.yml (#310)
11
+ - feat: Add possibility to define custom PVC access mode (#317) @ppawlowski
12
+ - Bump fast-xml-parser and @aws-sdk/xml-builder (#312) @app/dependabot
13
+ - Bump minimatch (#307) @app/dependabot
14
+
1
15
  #### 2.27.1: Release
2
16
 
3
17
  - Bump flowfuse/github-actions-workflows/.github/workflows/sast_scan.yaml (#303)
package/README.md CHANGED
@@ -32,6 +32,7 @@ driver:
32
32
  storage:
33
33
  enabled: true
34
34
  storageClass: nfs-storage
35
+ accessMode: ReadWriteMany
35
36
  size: 5Gi
36
37
  podSecurityContext:
37
38
  runAsUser: 1000
@@ -63,6 +64,7 @@ AWS EKS specific annotation for ALB Ingress. or `openshift` to allow running on
63
64
  - `storage.enabled` Mounts a persistent volume on `/data/storage` (default false)
64
65
  - `storage.storageClass` Name of StorageClass to use to allocate the volume (default not set)
65
66
  - `storage.storageClassEFSTag` Used instead of `storage.storageClass` when needing to shard across multiple EFS file systems (default not set)
67
+ - `storage.accessMode` PersistentVolumeClaim access mode. Allowed values: `ReadWriteOnce`, `ReadWriteMany`, `ReadWriteOncePod` (default `ReadWriteMany`). Important note: selecting different access mode affects the High Availability capabilities of Hosted Instances (projects). Change this parameter with caution and refer to Kubernetes documentation for details on access modes and their implications.
66
68
  - `storage.size` Size of the volume to request (default not set)
67
69
  - `podSecurityContext` Settings linked to the [security context of the pod](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/)
68
70
  - `containerSecurityContext` Settings linked to the [security context of the container](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/)
package/kubernetes.js CHANGED
@@ -422,6 +422,15 @@ const createPersistentVolumeClaim = async (project, options) => {
422
422
  const pvc = JSON.parse(JSON.stringify(persistentVolumeClaimTemplate))
423
423
 
424
424
  const drvOptions = this._app.config.driver.options
425
+ const allowedAccessModes = new Set(['ReadWriteOnce', 'ReadWriteMany', 'ReadWriteOncePod'])
426
+ const configuredAccessMode = drvOptions?.storage?.accessMode
427
+
428
+ if (configuredAccessMode !== undefined) {
429
+ if (!allowedAccessModes.has(configuredAccessMode)) {
430
+ throw new Error(`Unsupported storage.accessMode '${configuredAccessMode}'. Allowed values: ${Array.from(allowedAccessModes).join(', ')}`)
431
+ }
432
+ pvc.spec.accessModes = [configuredAccessMode]
433
+ }
425
434
 
426
435
  if (drvOptions?.storage?.storageClass) {
427
436
  pvc.spec.storageClassName = drvOptions.storage.storageClass
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flowfuse/driver-kubernetes",
3
- "version": "2.27.2-d731c64-202603091159.0",
3
+ "version": "2.28.0",
4
4
  "description": "Kubernetes driver for FlowFuse",
5
5
  "main": "kubernetes.js",
6
6
  "scripts": {