Skip to content

Commit 42a51af

Browse files
authored
feat: enable project mode (#431)
* feat: enable project mode Signed-off-by: Engin Diri <engin.diri@ediri.de> * feat: enable project mode Signed-off-by: Engin Diri <engin.diri@ediri.de> * feat: enable project mode Signed-off-by: Engin Diri <engin.diri@ediri.de> * feat: enable project mode Signed-off-by: Engin Diri <engin.diri@ediri.de> * feat: enable project mode Signed-off-by: Engin Diri <engin.diri@ediri.de> * feat: enable project mode Signed-off-by: Engin Diri <engin.diri@ediri.de> --------- Signed-off-by: Engin Diri <engin.diri@ediri.de>
1 parent f311ce3 commit 42a51af

5 files changed

Lines changed: 19 additions & 6 deletions

File tree

.github/workflows/lint-and-test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ jobs:
6060
6161
- name: Run Artifact Hub lint
6262
run: |
63-
curl -s https://api.github.com/repos/artifacthub/hub/releases/latest | grep -E 'browser_download_url' | grep linux_amd64.tar.gz\" | grep -Eo 'https://[^\"]*' | xargs wget -O - | tar -xz
63+
curl -s https://api.github.com/repos/artifacthub/hub/releases/latest | grep -E 'browser_download_url.*linux_amd64\.tar\.gz' | grep -Eo 'https://[^"]*' | xargs wget -O - | tar -xz
6464
./ah lint -p charts/node-red || exit 1
6565
rm -f ./ah
6666

.trivyignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# readOnlyRootFilesystem: false # Node-RED needs write access for project mode and normal operation
2+
AVD-KSV-0014

charts/node-red/Chart.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ icon: https://nodered.org/about/resources/media/node-red-icon-2.png
99

1010
type: application
1111

12-
version: 0.34.2
12+
version: 0.35.0
1313
appVersion: 4.0.9
1414

1515
keywords:

charts/node-red/templates/deployment.yaml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,14 +115,18 @@ spec:
115115
{{- end }}
116116
image: "{{ .Values.image.registry }}/{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
117117
imagePullPolicy: {{ .Values.image.pullPolicy }}
118-
{{- if or .Values.metrics.enabled .Values.env }}
118+
{{- if or .Values.metrics.enabled .Values.projectMode.enabled .Values.env }}
119119
env:
120120
{{- if .Values.metrics.enabled}}
121121
- name: PROMETHEUS_COLLECT_DEFAULT_METRICS
122122
value: "true"
123123
- name: PROMETHEUS_METRICS_PATH
124124
value: {{ .Values.metrics.path | default "/metrics" }}
125125
{{- end }}
126+
{{- if .Values.projectMode.enabled }}
127+
- name: NODE_RED_ENABLE_PROJECTS
128+
value: "true"
129+
{{- end }}
126130
{{- with .Values.env }}
127131
{{- tpl (toYaml .) $ | nindent 10 }}
128132
{{- end }}

charts/node-red/values.yaml

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,13 @@ env: []
5151
# env:
5252
# - name: "NODE_RED_ENABLE_SAFE_MODE"
5353
# value: ""
54+
55+
# -- Enable Node-RED project mode for Git integration and project management
56+
# Note: Project mode requires write access to the /data directory and may need
57+
# additional security context adjustments depending on your cluster's security policies
58+
projectMode:
59+
enabled: false
60+
5461
envFrom: []
5562
# Possible values:
5663
# - secretRef:
@@ -86,9 +93,9 @@ securityContext:
8693
privileged: false
8794
runAsNonRoot: true
8895
allowPrivilegeEscalation: false
89-
readOnlyRootFilesystem: true
90-
runAsGroup: 10003
91-
runAsUser: 10003
96+
readOnlyRootFilesystem: false # Node-RED needs write access for project mode and normal operation
97+
runAsGroup: 1000 # Match Node-RED's expected group
98+
runAsUser: 1000 # Match Node-RED's expected user
9299
seccompProfile:
93100
type: RuntimeDefault
94101
capabilities:

0 commit comments

Comments
 (0)