diff --git a/charts/ghost/Chart.yaml b/charts/ghost/Chart.yaml
index 548a49016c156992a17b45eb62afb60d38304c1d..8a370a8ceda37da18f0027e50f40d9ba9dc3f5a9 100644
--- a/charts/ghost/Chart.yaml
+++ b/charts/ghost/Chart.yaml
@@ -7,7 +7,7 @@ type: application
 maintainers:
   - name: groundhog2k
 
-version: "0.116.3"
+version: "0.116.4"
 
 appVersion: "5.75.2"
 
diff --git a/charts/ghost/README.md b/charts/ghost/README.md
index 2be8ddec40dc0db3bff10ef7ef7a75c1600020fe..9c499137968fb21641ef0125a0fdcbb43ae3f4cc 100644
--- a/charts/ghost/README.md
+++ b/charts/ghost/README.md
@@ -1,6 +1,6 @@
 # Ghost
 
-![Version: 0.116.3](https://img.shields.io/badge/Version-0.116.3-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 5.75.2](https://img.shields.io/badge/AppVersion-5.75.2-informational?style=flat-square)
+![Version: 0.116.4](https://img.shields.io/badge/Version-0.116.4-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 5.75.2](https://img.shields.io/badge/AppVersion-5.75.2-informational?style=flat-square)
 
 ## Changelog
 
@@ -106,10 +106,12 @@ helm uninstall my-release
 | Key | Type | Default | Description |
 |-----|------|---------|-------------|
 | ingress.enabled | bool | `false` | Enable ingress for Ghost service |
-| ingress.className | string | `nil` | Optional ingress class name |
-| ingress.annotations | string | `nil` | Additional annotations for ingress |
+| ingress.className | object | `{}` | Optional ingress class name |
+| ingress.annotations | object | `{}` | Additional annotations for ingress |
+| ingress.labels | string | `nil` | Additional ingress lables |
 | ingress.hosts[0].host | string | `""` | Hostname for the ingress endpoint |
-| ingress.hosts[0].host.paths[0] | string | `"/"` | Path of the Ghost UI |
+| ingress.hosts[0].host.paths[0].path | string | `"/"` | Path of the Ghost UI |
+| ingress.hosts[0].host.paths[0].pathType | string | `"ImplementationSpecific"` | Ingress path type (ImplementationSpecific, Prefix, Exact) |
 | ingress.tls | list | `[]` | Ingress TLS parameters |
 | ingress.maxBodySize | string | `"2m"` | Maximum body size for post requests |
 
diff --git a/charts/ghost/RELEASENOTES.md b/charts/ghost/RELEASENOTES.md
index 846b7ccec325ed98655f59cc53b193efcbf6973d..d4dfec077cbb95b28c1f6773cc9c139119d257c5 100644
--- a/charts/ghost/RELEASENOTES.md
+++ b/charts/ghost/RELEASENOTES.md
@@ -180,4 +180,5 @@
 | 0.116.1 | 5.75.1 | Upgraded to Ghost 5.75.1 |
 | 0.116.2 | 5.75.2 | Upgraded to Ghost 5.75.2 |
 | 0.116.3 | 5.75.2 | Added optional ingressClassName and removed deprecated api support |
+| 0.116.4 | 5.75.2 | Refactored ingress configuration and added optional labels and pathType |
 | | | |
diff --git a/charts/ghost/templates/ingress.yaml b/charts/ghost/templates/ingress.yaml
index c25382eda869e35d58017181062eba4125472e12..83b6fd9c080d86188fa63d9af4c33e57f2790b55 100644
--- a/charts/ghost/templates/ingress.yaml
+++ b/charts/ghost/templates/ingress.yaml
@@ -1,25 +1,31 @@
 {{- if .Values.ingress.enabled }}
 {{- $fullName := include "ghost.fullname" . -}}
+{{- $labels := include "ghost.labels" . -}}
 {{- $svcPort := .Values.service.port -}}
-{{- $maxSize := .Values.ingress.maxBodySize -}}
+{{- with .Values.ingress }}
 apiVersion: networking.k8s.io/v1
 kind: Ingress
 metadata:
   name: {{ $fullName }}
   labels:
-    {{- include "ghost.labels" . | nindent 4 }}
+    {{- $labels | nindent 4 }}
+  {{- with .labels }}
+    {{- toYaml . | nindent 4 }}
+  {{- end }}
   annotations:
-    nginx.ingress.kubernetes.io/proxy-body-size: {{ $maxSize }}
-  {{- with .Values.ingress.annotations }}
+    {{- if .maxBodySize }}
+    nginx.ingress.kubernetes.io/proxy-body-size: {{ .maxBodySize }}
+    {{- end }}
+  {{- with .annotations }}
     {{- toYaml . | nindent 4 }}
   {{- end }}
 spec:
-  {{- if .Values.ingress.className }}
-  ingressClassName: {{ .Values.ingress.className }}
+  {{- if .className }}
+  ingressClassName: {{ .className }}
   {{- end }}
-  {{- if .Values.ingress.tls }}
+  {{- if .tls }}
   tls:
-    {{- range .Values.ingress.tls }}
+    {{- range .tls }}
     - hosts:
         {{- range .hosts }}
         - {{ . | quote }}
@@ -28,13 +34,13 @@ spec:
     {{- end }}
   {{- end }}
   rules:
-    {{- range .Values.ingress.hosts }}
+    {{- range .hosts }}
     - host: {{ .host | quote }}
       http:
         paths:
           {{- range .paths }}
-          - path: {{ . }}
-            pathType: ImplementationSpecific
+          - path: {{ .path }}
+            pathType: {{ .pathType }}
             backend:
               service:
                 name: {{ $fullName }}
@@ -42,4 +48,5 @@ spec:
                   number: {{ $svcPort }}
           {{- end }}
     {{- end }}
-  {{- end }}
+{{- end }}
+{{- end }}
\ No newline at end of file
diff --git a/charts/ghost/values.yaml b/charts/ghost/values.yaml
index a3c32186cd2eac9cbe59e0ec7145daf888fb06b2..abd42aacc9054426ae17c1564072fd9c17d5031a 100644
--- a/charts/ghost/values.yaml
+++ b/charts/ghost/values.yaml
@@ -69,11 +69,15 @@ ingress:
    # kubernetes.io/ingress.class: nginx
    # kubernetes.io/tls-acme: "true"
 
+  ## Additional ingress labels
+  labels: {}
+
   ## Hosts
   hosts:
     - host:
       paths:
-        - /
+        - path: /
+          pathType: ImplementationSpecific
 
   ## TLS settings for hosts
   tls: []
diff --git a/charts/gitea/Chart.yaml b/charts/gitea/Chart.yaml
index 7f59fea3d4c285eb9527f2a464fb9d4462490461..5fd0ac771f936d25f7b1fc39d2e11836894606f8 100644
--- a/charts/gitea/Chart.yaml
+++ b/charts/gitea/Chart.yaml
@@ -8,7 +8,7 @@ maintainers:
   - name: groundhog2k
 
 # This is the chart version
-version: "0.10.4"
+version: "0.10.5"
 
 # This is the version number of the application being deployed.
 appVersion: "1.21.3"
diff --git a/charts/gitea/README.md b/charts/gitea/README.md
index 0dbdf38316262f024793a6bba8747ce57f73f00f..a47c70643ea2a14a3c43a17bd2f5e45334464f64 100644
--- a/charts/gitea/README.md
+++ b/charts/gitea/README.md
@@ -1,6 +1,6 @@
 # Gitea
 
-![Version: 0.10.4](https://img.shields.io/badge/Version-0.10.4-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.21.3](https://img.shields.io/badge/AppVersion-1.21.3-informational?style=flat-square)
+![Version: 0.10.5](https://img.shields.io/badge/Version-0.10.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.21.3](https://img.shields.io/badge/AppVersion-1.21.3-informational?style=flat-square)
 
 ## Changelog
 
@@ -114,7 +114,10 @@ helm uninstall my-release
 | ingress.enabled | bool | `false` | Enable ingress for Gitea service |
 | ingress.className | string | `nil` | Optional ingress class name |
 | ingress.annotations | string | `nil` | Additional annotations for ingress |
+| ingress.labels | string | `nil` | Additional ingress lables |
 | ingress.hosts[0].host | string | `""` | Hostname for the ingress endpoint |
+| ingress.hosts[0].host.paths[0].path | string | `"/"` | Path of the Gitea UI |
+| ingress.hosts[0].host.paths[0].pathType | string | `"ImplementationSpecific"` | Ingress path type (ImplementationSpecific, Prefix, Exact) |
 | ingress.tls | list | `[]` | Ingress TLS parameters |
 | ingress.maxBodySize | string | `"64m"` | Maximum body size for post requests |
 
diff --git a/charts/gitea/RELEASENOTES.md b/charts/gitea/RELEASENOTES.md
index 9f56027f93f1338031941fbc76335c1be592a6c7..7f8358a5868320b0c4cc878d7317edc44c0ccabd 100644
--- a/charts/gitea/RELEASENOTES.md
+++ b/charts/gitea/RELEASENOTES.md
@@ -65,4 +65,5 @@
 | 0.10.2 | 1.21.2 | Updated to Gitea 1.21.2 |
 | 0.10.3 | 1.21.3 | Updated to Gitea 1.21.3 |
 | 0.10.4 | 1.21.3 | Added optional ingressClassName and removed deprecated api support |
+| 0.10.5 | 1.21.3 | Refactored ingress configuration and added optional labels and pathType |
 | | | |
diff --git a/charts/gitea/templates/ingress.yaml b/charts/gitea/templates/ingress.yaml
index 6db6732117f714763ab473e48aa73aab88a0d361..2cfc609fa3adce531ab2151e59efc004ddf72f8e 100644
--- a/charts/gitea/templates/ingress.yaml
+++ b/charts/gitea/templates/ingress.yaml
@@ -1,25 +1,31 @@
 {{- if .Values.ingress.enabled }}
 {{- $fullName := include "gitea.fullname" . -}}
+{{- $labels := include "gitea.labels" . -}}
 {{- $svcPort := .Values.services.http.port -}}
-{{- $maxSize := .Values.ingress.maxBodySize -}}
+{{- with .Values.ingress }}
 apiVersion: networking.k8s.io/v1
 kind: Ingress
 metadata:
   name: {{ $fullName }}
   labels:
-    {{- include "gitea.labels" . | nindent 4 }}
+    {{- $labels | nindent 4 }}
+  {{- with .labels }}
+    {{- toYaml . | nindent 4 }}
+  {{- end }}
   annotations:
-    nginx.ingress.kubernetes.io/proxy-body-size: {{ $maxSize }}
-  {{- with .Values.ingress.annotations }}
+    {{- if .maxBodySize }}
+    nginx.ingress.kubernetes.io/proxy-body-size: {{ .maxBodySize }}
+    {{- end }}
+  {{- with .annotations }}
     {{- toYaml . | nindent 4 }}
   {{- end }}
 spec:
-  {{- if .Values.ingress.className }}
-  ingressClassName: {{ .Values.ingress.className }}
+  {{- if .className }}
+  ingressClassName: {{ .className }}
   {{- end }}
-  {{- if .Values.ingress.tls }}
+  {{- if .tls }}
   tls:
-    {{- range .Values.ingress.tls }}
+    {{- range .tls }}
     - hosts:
         {{- range .hosts }}
         - {{ . | quote }}
@@ -28,13 +34,13 @@ spec:
     {{- end }}
   {{- end }}
   rules:
-    {{- range .Values.ingress.hosts }}
+    {{- range .hosts }}
     - host: {{ .host | quote }}
       http:
         paths:
           {{- range .paths }}
-          - path: {{ . }}
-            pathType: ImplementationSpecific
+          - path: {{ .path }}
+            pathType: {{ .pathType }}
             backend:
               service:
                 name: {{ $fullName }}-http
@@ -42,4 +48,5 @@ spec:
                   number: {{ $svcPort }}
           {{- end }}
     {{- end }}
-  {{- end }}
+{{- end }}
+{{- end }}
diff --git a/charts/gitea/values.yaml b/charts/gitea/values.yaml
index 4b3752e30d4c49e2ec8b8e831898439152f7645c..8593c6e312d372001da11cc8d5085624c4bc6b17 100644
--- a/charts/gitea/values.yaml
+++ b/charts/gitea/values.yaml
@@ -83,10 +83,15 @@ ingress:
 #   kubernetes.io/ingress.class: nginx
 #   kubernetes.io/tls-acme: "true"
 
+  ## Additional ingress labels
+  labels: {}
+
   ## Hosts
   hosts:
-    - host: chart-example.local
-      paths: []
+    - host:
+      paths:
+        - path: /
+          pathType: ImplementationSpecific
 
   ## TLS settings for hosts
   tls: []
diff --git a/charts/graylog/Chart.yaml b/charts/graylog/Chart.yaml
index 2996e08f453e9a4e06d74073eaa8b1edebdb8c34..fd2933c68186d9f6db7f96719c0740dd680ee33b 100644
--- a/charts/graylog/Chart.yaml
+++ b/charts/graylog/Chart.yaml
@@ -7,7 +7,7 @@ type: application
 maintainers:
   - name: groundhog2k
 
-version: "0.7.4"
+version: "0.7.5"
 
 appVersion: "5.2.2"
 
diff --git a/charts/graylog/README.md b/charts/graylog/README.md
index 92e47557a8a40f39460b834af2d5e62124427839..a4d26bb680a357c76d52df08748e72b532b78f55 100644
--- a/charts/graylog/README.md
+++ b/charts/graylog/README.md
@@ -1,6 +1,6 @@
 # Graylog
 
-![Version: 0.7.4](https://img.shields.io/badge/Version-0.7.4-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 5.2.2](https://img.shields.io/badge/AppVersion-5.2.2-informational?style=flat-square)
+![Version: 0.7.5](https://img.shields.io/badge/Version-0.7.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 5.2.2](https://img.shields.io/badge/AppVersion-5.2.2-informational?style=flat-square)
 
 ## Changelog
 
diff --git a/charts/graylog/RELEASENOTES.md b/charts/graylog/RELEASENOTES.md
index 24fb3e0bf2c8d73776687139da5be545ad18488e..4ad66062c194e394874b0519ff2ff7e25fcafac3 100644
--- a/charts/graylog/RELEASENOTES.md
+++ b/charts/graylog/RELEASENOTES.md
@@ -61,4 +61,5 @@
 | 0.7.2 | 5.2.2 | Updated chart for Graylog 5.2.2 |
 | 0.7.3 | 5.2.2 | Added optional ingressClassName and removed deprecated api support |
 | 0.7.4 | 5.2.2 | Removed elasticsearch dependency and updated mongodb to 0.5.20 |
+| 0.7.5 | 5.2.2 | Refactored ingress configuration and added optional labels and pathType  |
 | | | |
diff --git a/charts/graylog/templates/ingress.yaml b/charts/graylog/templates/ingress.yaml
index 04a8f0a6f845160ffac63713c67c8ed6185cca86..0373375405d25767a09761c8199f9ff62b669b3d 100644
--- a/charts/graylog/templates/ingress.yaml
+++ b/charts/graylog/templates/ingress.yaml
@@ -1,23 +1,28 @@
 {{- if .Values.ingress.enabled }}
 {{- $fullName := include "graylog.fullname" . -}}
+{{- $labels := include "graylog.labels" . -}}
 {{- $svcPort := .Values.service.port -}}
+{{- with .Values.ingress }}
 apiVersion: networking.k8s.io/v1
 kind: Ingress
 metadata:
   name: {{ $fullName }}
   labels:
-    {{- include "graylog.labels" . | nindent 4 }}
-  {{- with .Values.ingress.annotations }}
+    {{- $labels | nindent 4 }}
+  {{- with .labels }}
+    {{- toYaml . | nindent 4 }}
+  {{- end }}
+  {{- with .annotations }}
   annotations:
     {{- toYaml . | nindent 4 }}
   {{- end }}
 spec:
-  {{- if .Values.ingress.className }}
-  ingressClassName: {{ .Values.ingress.className }}
+  {{- if .className }}
+  ingressClassName: {{ .className }}
   {{- end }}
-  {{- if .Values.ingress.tls }}
+  {{- if .tls }}
   tls:
-    {{- range .Values.ingress.tls }}
+    {{- range .tls }}
     - hosts:
         {{- range .hosts }}
         - {{ . | quote }}
@@ -26,13 +31,13 @@ spec:
     {{- end }}
   {{- end }}
   rules:
-    {{- range .Values.ingress.hosts }}
+    {{- range .hosts }}
     - host: {{ .host | quote }}
       http:
         paths:
           {{- range .paths }}
-          - path: {{ . }}
-            pathType: ImplementationSpecific
+          - path: {{ .path }}
+            pathType: {{ .pathType }}
             backend:
               service:
                 name: {{ $fullName }}
@@ -40,4 +45,5 @@ spec:
                   number: {{ $svcPort }}
           {{- end }}
     {{- end }}
-  {{- end }}
+{{- end }}
+{{- end }}
diff --git a/charts/graylog/values.yaml b/charts/graylog/values.yaml
index 4db1fb30141e6f214c3d2b59a4b0ec00a46f80e6..bae23a0ee588864abe3335f221e310359bbb0ae7 100644
--- a/charts/graylog/values.yaml
+++ b/charts/graylog/values.yaml
@@ -99,10 +99,15 @@ ingress:
     # kubernetes.io/ingress.class: nginx
     # kubernetes.io/tls-acme: "true"
 
+  ## Additional ingress labels
+  labels: {}
+
   ## Hosts
   hosts:
     - host:
-      paths: []
+      paths:
+        - path: /
+          pathType: ImplementationSpecific
 
   ## TLS settings for hosts
   tls: []
@@ -265,6 +270,10 @@ mongodb:
   ## Enable MongoDB helm chart for deployment (default: false)
   enabled: false
 
+  fullnameOverride:
+
+  nameOverride:
+
   ## Database settings
   settings:
     ## The root username (default: admin)
diff --git a/charts/nextcloud/Chart.yaml b/charts/nextcloud/Chart.yaml
index 785c904013147c163eb2ae64c4f4992f6f4841df..c19d12f09129ba0309f70d5d772f55ad72804c18 100644
--- a/charts/nextcloud/Chart.yaml
+++ b/charts/nextcloud/Chart.yaml
@@ -8,7 +8,7 @@ maintainers:
   - name: groundhog2k
 
 # This is the chart version.
-version: "0.16.2"
+version: "0.16.3"
 
 # This is the version number of the application being deployed.
 appVersion: "28.0.1-apache"
diff --git a/charts/nextcloud/README.md b/charts/nextcloud/README.md
index 0fe4efce1bc93cff22303dbacb13a0d213bff867..3a26984ea122ee98b69930b0791122a4d00526aa 100644
--- a/charts/nextcloud/README.md
+++ b/charts/nextcloud/README.md
@@ -1,6 +1,6 @@
 # Nextcloud
 
-![Version: 0.16.2](https://img.shields.io/badge/Version-0.16.2-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 28.0.1-apache](https://img.shields.io/badge/AppVersion-28.0.1-informational?style=flat-square)
+![Version: 0.16.3](https://img.shields.io/badge/Version-0.16.3-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 28.0.1-apache](https://img.shields.io/badge/AppVersion-28.0.1-informational?style=flat-square)
 
 ## Changelog
 
@@ -174,7 +174,7 @@ helm uninstall my-release
 | ingress.className | string | `nil` | Optional ingress class name |
 | ingress.annotations | string | `nil` | Additional annotations for ingress |
 | ingress.hosts[0].host | string | `""` | Hostname for the ingress endpoint |
-| ingress.tls | list | `[]` | Ingress TLS parameters |
+| ingress.labels | string | `nil` | Additional ingress lables |
 | ingress.maxBodySize | string | `"512m"` | Maximum body size for post requests |
 
 ## Redis session cache
diff --git a/charts/nextcloud/RELEASENOTES.md b/charts/nextcloud/RELEASENOTES.md
index b7e235301529723433805b815d1d9055a1ca2392..2105a6d3ae8ca00a0eb492a82b0fed31d66cbd0c 100644
--- a/charts/nextcloud/RELEASENOTES.md
+++ b/charts/nextcloud/RELEASENOTES.md
@@ -57,4 +57,5 @@
 | 0.16.0 | 28.0.0-apache | Upgraded to Nextcloud 28.0.0 |
 | 0.16.1 | 28.0.1-apache | Upgraded to Nextcloud 28.0.1 |
 | 0.16.2 | 28.0.1-apache | Added optional ingressClassName and removed deprecated api support |
+| 0.16.3 | 28.0.1-apache | Refactored ingress configuration and added optional labels and pathType |
 | | | |
diff --git a/charts/nextcloud/templates/ingress.yaml b/charts/nextcloud/templates/ingress.yaml
index 0d47a23b4e20b77d913c883ed769152f9050b735..163cd677f0103314577ec65938064ba0beb8dbf0 100644
--- a/charts/nextcloud/templates/ingress.yaml
+++ b/charts/nextcloud/templates/ingress.yaml
@@ -1,29 +1,35 @@
 {{- if .Values.ingress.enabled }}
 {{- $fullName := include "nextcloud.fullname" . -}}
+{{- $labels := include "nextcloud.labels" . -}}
 {{- $svcPort := .Values.service.port -}}
-{{- $maxSize := .Values.ingress.maxBodySize -}}
 {{- $webroot := .Values.settings.overwriteWebRoot -}}
+{{- with .Values.ingress }}
 apiVersion: networking.k8s.io/v1
 kind: Ingress
 metadata:
   name: {{ $fullName }}
   labels:
-    {{- include "nextcloud.labels" . | nindent 4 }}
+    {{- $labels | nindent 4 }}
+  {{- with .labels }}
+    {{- toYaml . | nindent 4 }}
+  {{- end }}
   annotations:
-    nginx.ingress.kubernetes.io/proxy-body-size: {{ $maxSize }}
+    {{- if .maxBodySize }}
+    nginx.ingress.kubernetes.io/proxy-body-size: {{ .maxBodySize }}
+    {{- end }}
     {{- if $webroot }}
     nginx.ingress.kubernetes.io/rewrite-target: /$2
     {{- end }}
-  {{- with .Values.ingress.annotations }}
+  {{- with .annotations }}
     {{- toYaml . | nindent 4 }}
   {{- end }}
 spec:
-  {{- if .Values.ingress.className }}
-  ingressClassName: {{ .Values.ingress.className }}
+  {{- if .className }}
+  ingressClassName: {{ .className }}
   {{- end }}
-  {{- if .Values.ingress.tls }}
+  {{- if .tls }}
   tls:
-    {{- range .Values.ingress.tls }}
+    {{- range .tls }}
     - hosts:
         {{- range .hosts }}
         - {{ . | quote }}
@@ -32,7 +38,7 @@ spec:
     {{- end }}
   {{- end }}
   rules:
-    {{- range .Values.ingress.hosts }}
+    {{- range .hosts }}
     - host: {{ .host | quote }}
       http:
         paths:
@@ -55,16 +61,19 @@ kind: Ingress
 metadata:
   name: {{ $fullName }}-dav
   labels:
-    {{- include "nextcloud.labels" . | nindent 4 }}
+    {{- $labels | nindent 4 }}
+  {{- with .labels }}
+    {{- toYaml . | nindent 4 }}
+  {{- end }}
   annotations:
     nginx.ingress.kubernetes.io/rewrite-target: /remote.php/dav/$2
 spec:
-  {{- if .Values.ingress.className }}
-  ingressClassName: {{ .Values.ingress.className }}
+  {{- if .className }}
+  ingressClassName: {{ .className }}
   {{- end }}
-  {{- if .Values.ingress.tls }}
+  {{- if .tls }}
   tls:
-    {{- range .Values.ingress.tls }}
+    {{- range .tls }}
     - hosts:
         {{- range .hosts }}
         - {{ . | quote }}
@@ -73,7 +82,7 @@ spec:
     {{- end }}
   {{- end }}
   rules:
-    {{- range .Values.ingress.hosts }}
+    {{- range .hosts }}
     - host: {{ .host | quote }}
       http:
         paths:
@@ -90,3 +99,4 @@ spec:
                   number: {{ $svcPort }}
     {{- end }}
 {{- end }}
+{{- end }}
diff --git a/charts/nextcloud/values.yaml b/charts/nextcloud/values.yaml
index 16ee11059080ceb917d6c69cbd00dcca5fb5d652..0799924a750267791c01ada7ef6fc30980fb4849 100644
--- a/charts/nextcloud/values.yaml
+++ b/charts/nextcloud/values.yaml
@@ -104,6 +104,9 @@ ingress:
 #   kubernetes.io/ingress.class: nginx
 #   kubernetes.io/tls-acme: "true"
 
+  ## Additional ingress labels
+  labels: {}
+
   ## Hosts
   hosts:
     - host:
@@ -264,12 +267,12 @@ settings:
   disableRewriteIP: false
 
   ## Overwrite web root URI (for creating nexcloud in a sub-url f.i.: /nextcloud)
-  # overwriteWebRoot: /nextcloud
+  overwriteWebRoot:
 
   ## Overwrite options for host (hostname and port), protocol (http or https) and CondAddr (Regex dependent on remote address)
-  # overwriteHost:
-  # overwriteProtocol:
-  # overwriteCondAddr:
+  overwriteHost:
+  overwriteProtocol:
+  overwriteCondAddr:
 
   ## SMTP configuration
   smtp:
diff --git a/charts/nfs-client-provisioner/.helmignore b/charts/nfs-client-provisioner/.helmignore
deleted file mode 100644
index f0c13194444163d1cba5c67d9e79231a62bc8f44..0000000000000000000000000000000000000000
--- a/charts/nfs-client-provisioner/.helmignore
+++ /dev/null
@@ -1,21 +0,0 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
diff --git a/charts/nfs-client-provisioner/Chart.yaml b/charts/nfs-client-provisioner/Chart.yaml
deleted file mode 100644
index 22fad32c362e46bf44a565d246f0e78f1d536d29..0000000000000000000000000000000000000000
--- a/charts/nfs-client-provisioner/Chart.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-## This chart is deprecated and will no longer be maintained
-## A new chart of the nfs-client-provisioner was release at https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner/tree/master/charts/nfs-subdir-external-provisioner
-
-apiVersion: v1
-appVersion: 4.0.0
-description: nfs-client is an automatic provisioner that used your *already configured* NFS server, automatically creating Persistent Volumes.
-name: nfs-client-provisioner
-version: 4.0.0
-keywords:
-  - nfs
-  - storage
-deprecated: true
diff --git a/charts/nfs-client-provisioner/README.md b/charts/nfs-client-provisioner/README.md
deleted file mode 100644
index 3132640a57d658f1eea7c055eadf4f73a2c1eebb..0000000000000000000000000000000000000000
--- a/charts/nfs-client-provisioner/README.md
+++ /dev/null
@@ -1,82 +0,0 @@
-# ⚠️ Deprecation and Archive Notice
-
-This chart version (v4.0.0) is the last update and the chart is deprecated and will no longer be maintained.
-
-A new chart of the nfs-client-provisioner was release at 
-[kubernetes-sigs/nfs-subdir-external-provisioner](https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner/tree/master/charts/nfs-subdir-external-provisioner)
-
-# nfs-client-provisioner
-
-![Version: 4.0.0](https://img.shields.io/badge/Version-4.0.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 4.0.0](https://img.shields.io/badge/AppVersion-4.0.0-informational?style=flat-square)
-
-The [NFS client provisioner](https://github.com/kubernetes-incubator/external-storage/tree/master/nfs-client) is an automatic provisioner for Kubernetes that uses your *already configured* NFS server, automatically creating Persistent Volumes.
-
-## TL;DR;
-
-```console
-$ helm install --set nfs.server=x.x.x.x --set nfs.path=/exported/path groundhog2k/nfs-client-provisioner
-```
-
-For **arm** deployments set `image.repository` to `--set image.repository=quay.io/external_storage/nfs-client-provisioner-arm`
-
-## Introduction
-
-This charts installs custom [storage class](https://kubernetes.io/docs/concepts/storage/storage-classes/) into a [Kubernetes](http://kubernetes.io) cluster using the [Helm](https://helm.sh) package manager. It also installs a [NFS client provisioner](https://github.com/kubernetes-incubator/external-storage/tree/master/nfs-client) into the cluster which dynamically creates persistent volumes from single NFS share.
-
-## Prerequisites
-
-- Kubernetes 1.9+
-- Existing NFS Share
-
-## Installing the Chart
-
-To install the chart with the release name `my-release`:
-
-```console
-$ helm install --name my-release --set nfs.server=x.x.x.x --set nfs.path=/exported/path stable/nfs-client-provisioner
-```
-
-The command deploys the given storage class in the default configuration. It can be used afterswards to provision persistent volumes. The [configuration](#configuration) section lists the parameters that can be configured during installation.
-
-> **Tip**: List all releases using `helm list`
-
-## Uninstalling the Chart
-
-To uninstall/delete the `my-release` deployment:
-
-```console
-$ helm delete my-release
-```
-
-The command removes all the Kubernetes components associated with the chart and deletes the release.
-
-## Configuration
-
-The following tables lists the configurable parameters of this chart and their default values.
-
-| Parameter                           | Description                                                 | Default                                           |
-| ----------------------------------- | ----------------------------------------------------------- | ------------------------------------------------- |
-| `replicaCount`                      | Number of provisioner instances to deployed                 | `1`                                               |
-| `strategyType`                      | Specifies the strategy used to replace old Pods by new ones | `Recreate`                                        |
-| `image.repository`                  | Provisioner image                                           | `quay.io/external_storage/nfs-client-provisioner` |
-| `image.tag`                         | Version of provisioner image                                | `v3.1.0-k8s1.11`                                  |
-| `image.pullPolicy`                  | Image pull policy                                           | `IfNotPresent`                                    |
-| `storageClass.name`                 | Name of the storageClass                                    | `nfs-client`                                      |
-| `storageClass.defaultClass`         | Set as the default StorageClass                             | `false`                                           |
-| `storageClass.allowVolumeExpansion` | Allow expanding the volume                                  | `true`                                            |
-| `storageClass.reclaimPolicy`        | Method used to reclaim an obsoleted volume                  | `Delete`                                          |
-| `storageClass.provisionerName`      | Name of the provisionerName                                 | null                                              |
-| `storageClass.archiveOnDelete`      | Archive pvc when deleting                                   | `true`                                            |
-| `storageClass.accessModes`          | Set access mode for PV                                      | `ReadWriteOnce`                                   |
-| `nfs.server`                        | Hostname of the NFS server                                  | null (ip or hostname)                             |
-| `nfs.path`                          | Basepath of the mount point to be used                      | `/ifs/kubernetes`                                 |
-| `nfs.mountOptions`                  | Mount options (e.g. 'nfsvers=3')                            | null                                              |
-| `resources`                         | Resources required (e.g. CPU, memory)                       | `{}`                                              |
-| `rbac.create`                       | Use Role-based Access Control                               | `true`                                            |
-| `podSecurityPolicy.enabled`         | Create & use Pod Security Policy resources                  | `false`                                           |
-| `priorityClassName`                 | Set pod priorityClassName                                   | null                                              |
-| `serviceAccount.create`             | Should we create a ServiceAccount                           | `true`                                            |
-| `serviceAccount.name`               | Name of the ServiceAccount to use                           | null                                              |
-| `nodeSelector`                      | Node labels for pod assignment                              | `{}`                                              |
-| `affinity`                          | Affinity settings                                           | `{}`                                              |
-| `tolerations`                       | List of node taints to tolerate                             | `[]`                                              |
diff --git a/charts/nfs-client-provisioner/ci/test-values.yaml b/charts/nfs-client-provisioner/ci/test-values.yaml
deleted file mode 100644
index 4237de5fc683e428cd182154f999e16a5694119d..0000000000000000000000000000000000000000
--- a/charts/nfs-client-provisioner/ci/test-values.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-nfs:
-  server: 127.0.0.1
-podSecurityPolicy:
-  enabled: true
-buildMode: true
diff --git a/charts/nfs-client-provisioner/templates/_helpers.tpl b/charts/nfs-client-provisioner/templates/_helpers.tpl
deleted file mode 100644
index d8d4e516ac4669f8eb75dcfee3f0227ca075236d..0000000000000000000000000000000000000000
--- a/charts/nfs-client-provisioner/templates/_helpers.tpl
+++ /dev/null
@@ -1,62 +0,0 @@
-{{/* vim: set filetype=mustache: */}}
-{{/*
-Expand the name of the chart.
-*/}}
-{{- define "nfs-client-provisioner.name" -}}
-{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
-{{/*
-Create a default fully qualified app name.
-We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
-If release name contains chart name it will be used as a full name.
-*/}}
-{{- define "nfs-client-provisioner.fullname" -}}
-{{- if .Values.fullnameOverride -}}
-{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
-{{- else -}}
-{{- $name := default .Chart.Name .Values.nameOverride -}}
-{{- if contains $name .Release.Name -}}
-{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
-{{- else -}}
-{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-{{- end -}}
-{{- end -}}
-
-{{/*
-Create chart name and version as used by the chart label.
-*/}}
-{{- define "nfs-client-provisioner.chart" -}}
-{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
-{{- define "nfs-client-provisioner.provisionerName" -}}
-{{- if .Values.storageClass.provisionerName -}}
-{{- printf .Values.storageClass.provisionerName -}}
-{{- else -}}
-cluster.local/{{ template "nfs-client-provisioner.fullname" . -}}
-{{- end -}}
-{{- end -}}
-
-{{/*
-Create the name of the service account to use
-*/}}
-{{- define "nfs-client-provisioner.serviceAccountName" -}}
-{{- if .Values.serviceAccount.create -}}
-    {{ default (include "nfs-client-provisioner.fullname" .) .Values.serviceAccount.name }}
-{{- else -}}
-    {{ default "default" .Values.serviceAccount.name }}
-{{- end -}}
-{{- end -}}
-
-{{/*
-Return the appropriate apiVersion for podSecurityPolicy.
-*/}}
-{{- define "podSecurityPolicy.apiVersion" -}}
-{{- if semverCompare ">=1.10-0" .Capabilities.KubeVersion.GitVersion -}}
-{{- print "policy/v1beta1" -}}
-{{- else -}}
-{{- print "extensions/v1beta1" -}}
-{{- end -}}
-{{- end -}}
\ No newline at end of file
diff --git a/charts/nfs-client-provisioner/templates/clusterrole.yaml b/charts/nfs-client-provisioner/templates/clusterrole.yaml
deleted file mode 100644
index fa43e0d42b6426cc58a00b8c78a62475622fc6b3..0000000000000000000000000000000000000000
--- a/charts/nfs-client-provisioner/templates/clusterrole.yaml
+++ /dev/null
@@ -1,30 +0,0 @@
-{{- if .Values.rbac.create }}
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
-  labels:
-    app: {{ template "nfs-client-provisioner.name" . }}
-    chart: {{ template "nfs-client-provisioner.chart" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-  name: {{ template "nfs-client-provisioner.fullname" . }}-runner
-rules:
-  - apiGroups: [""]
-    resources: ["persistentvolumes"]
-    verbs: ["get", "list", "watch", "create", "delete"]
-  - apiGroups: [""]
-    resources: ["persistentvolumeclaims"]
-    verbs: ["get", "list", "watch", "update"]
-  - apiGroups: ["storage.k8s.io"]
-    resources: ["storageclasses"]
-    verbs: ["get", "list", "watch"]
-  - apiGroups: [""]
-    resources: ["events"]
-    verbs: ["create", "update", "patch"]
-{{- if .Values.podSecurityPolicy.enabled }}
-  - apiGroups:      ['extensions']
-    resources:      ['podsecuritypolicies']
-    verbs:          ['use']
-    resourceNames:  [{{ template "nfs-client-provisioner.fullname" . }}]
-{{- end }}
-{{- end }}
diff --git a/charts/nfs-client-provisioner/templates/clusterrolebinding.yaml b/charts/nfs-client-provisioner/templates/clusterrolebinding.yaml
deleted file mode 100644
index e04c719364c1d1bdcdab0028b6849458e4b8d296..0000000000000000000000000000000000000000
--- a/charts/nfs-client-provisioner/templates/clusterrolebinding.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-{{- if .Values.rbac.create }}
-kind: ClusterRoleBinding
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
-  labels:
-    app: {{ template "nfs-client-provisioner.name" . }}
-    chart: {{ template "nfs-client-provisioner.chart" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-  name: run-{{ template "nfs-client-provisioner.fullname" . }}
-subjects:
-  - kind: ServiceAccount
-    name: {{ template "nfs-client-provisioner.serviceAccountName" . }}
-    namespace: {{ .Release.Namespace }}
-roleRef:
-  kind: ClusterRole
-  name: {{ template "nfs-client-provisioner.fullname" . }}-runner
-  apiGroup: rbac.authorization.k8s.io
-{{- end }}
diff --git a/charts/nfs-client-provisioner/templates/deployment.yaml b/charts/nfs-client-provisioner/templates/deployment.yaml
deleted file mode 100644
index 9c5a34d890c19628b40f3a66dfa60876f4d4d894..0000000000000000000000000000000000000000
--- a/charts/nfs-client-provisioner/templates/deployment.yaml
+++ /dev/null
@@ -1,77 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
-  name: {{ template "nfs-client-provisioner.fullname" . }}
-  labels:
-    app: {{ template "nfs-client-provisioner.name" . }}
-    chart: {{ template "nfs-client-provisioner.chart" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-spec:
-  replicas: {{ .Values.replicaCount }}
-  strategy:
-    type: {{ .Values.strategyType }}
-  selector:
-    matchLabels:
-      app: {{ template "nfs-client-provisioner.name" . }}
-      release: {{ .Release.Name }}
-  template:
-    metadata:
-      annotations:
-      {{- if and (.Values.tolerations) (semverCompare "<1.6-0" .Capabilities.KubeVersion.GitVersion) }}
-        scheduler.alpha.kubernetes.io/tolerations: '{{ toJson .Values.tolerations }}'
-      {{- end }}
-      labels:
-        app: {{ template "nfs-client-provisioner.name" . }}
-        release: {{ .Release.Name }}
-    spec:
-      serviceAccountName: {{ template "nfs-client-provisioner.serviceAccountName" . }}
-      {{- if .Values.nodeSelector }}
-      nodeSelector:
-{{ toYaml .Values.nodeSelector | indent 8 }}
-      {{- end }}
-      {{- if .Values.affinity }}
-      affinity:
-{{ toYaml .Values.affinity | indent 8 }}
-      {{- end }}
-      {{- if .Values.priorityClassName }}
-      priorityClassName: {{ .Values.priorityClassName | quote }}
-      {{- end }}
-      {{- if .Values.imagePullSecrets }}
-      imagePullSecrets:
-{{ toYaml .Values.imagePullSecrets | indent 8 }}
-      {{- end }}
-      containers:
-        - name: {{ .Chart.Name }}
-          image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
-          imagePullPolicy: {{ .Values.image.pullPolicy }}
-          volumeMounts:
-            - name: nfs-client-root
-              mountPath: /persistentvolumes
-          env:
-            - name: PROVISIONER_NAME
-              value: {{ template "nfs-client-provisioner.provisionerName" . }}
-            - name: NFS_SERVER
-              value: {{ .Values.nfs.server }}
-            - name: NFS_PATH
-              value: {{ .Values.nfs.path }}
-          {{- with .Values.resources }}
-          resources:
-{{ toYaml . | indent 12 }}
-          {{- end }}
-      volumes:
-        - name: nfs-client-root
-{{- if .Values.buildMode }}
-          emptyDir: {}
-{{- else if .Values.nfs.mountOptions }}
-          persistentVolumeClaim:
-            claimName: pvc-{{ template "nfs-client-provisioner.fullname" . }}
-{{- else }}
-          nfs:
-            server: {{ .Values.nfs.server }}
-            path: {{ .Values.nfs.path }}
-{{- end }}
-      {{- if and (.Values.tolerations) (semverCompare "^1.6-0" .Capabilities.KubeVersion.GitVersion) }}
-      tolerations:
-{{ toYaml .Values.tolerations | indent 6 }}
-      {{- end }}
diff --git a/charts/nfs-client-provisioner/templates/persistentvolume.yaml b/charts/nfs-client-provisioner/templates/persistentvolume.yaml
deleted file mode 100644
index d13ad0b2cae1d4e8505ce8042714c28334990df2..0000000000000000000000000000000000000000
--- a/charts/nfs-client-provisioner/templates/persistentvolume.yaml
+++ /dev/null
@@ -1,25 +0,0 @@
-{{ if .Values.nfs.mountOptions -}}
-apiVersion: v1
-kind: PersistentVolume
-metadata:
-  name: pv-{{ template "nfs-client-provisioner.fullname" . }}
-  labels: 
-    nfs-client-provisioner: {{ template "nfs-client-provisioner.fullname" . }}
-spec:
-  capacity:
-    storage: 10Mi
-  volumeMode: Filesystem
-  accessModes:
-    - {{ .Values.storageClass.accessModes }}
-  persistentVolumeReclaimPolicy: {{ .Values.storageClass.reclaimPolicy }}
-  storageClassName: ""
-  {{- if .Values.nfs.mountOptions }}
-  mountOptions:
-    {{- range .Values.nfs.mountOptions }}
-    - {{ . }}
-    {{- end }}
-  {{- end }}
-  nfs:
-    server: {{ .Values.nfs.server }}
-    path: {{ .Values.nfs.path }}
-{{ end -}}
diff --git a/charts/nfs-client-provisioner/templates/persistentvolumeclaim.yaml b/charts/nfs-client-provisioner/templates/persistentvolumeclaim.yaml
deleted file mode 100644
index 9bcf430992248577343083a90117616d968146a6..0000000000000000000000000000000000000000
--- a/charts/nfs-client-provisioner/templates/persistentvolumeclaim.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-{{ if .Values.nfs.mountOptions -}}
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
-  name: pvc-{{ template "nfs-client-provisioner.fullname" . }}
-spec:
-  accessModes:
-    - {{ .Values.storageClass.accessModes }}
-  volumeMode: Filesystem
-  storageClassName: ""
-  selector:
-    matchLabels:
-      nfs-client-provisioner: {{ template "nfs-client-provisioner.fullname" . }}
-  resources:
-    requests:
-      storage: 10Mi
-{{ end -}}
diff --git a/charts/nfs-client-provisioner/templates/podsecuritypolicy.yaml b/charts/nfs-client-provisioner/templates/podsecuritypolicy.yaml
deleted file mode 100644
index 830fad6ec82605297a98397427fca581bd897a7d..0000000000000000000000000000000000000000
--- a/charts/nfs-client-provisioner/templates/podsecuritypolicy.yaml
+++ /dev/null
@@ -1,31 +0,0 @@
-{{- if .Values.podSecurityPolicy.enabled }}
-apiVersion: {{ template "podSecurityPolicy.apiVersion" . }}
-kind: PodSecurityPolicy
-metadata:
-  name: {{ template "nfs-client-provisioner.fullname" . }}
-  labels:
-    app: {{ template "nfs-client-provisioner.name" . }}
-    chart: {{ .Chart.Name }}-{{ .Chart.Version }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-spec:
-  privileged: false
-  allowPrivilegeEscalation: false
-  requiredDropCapabilities:
-    - ALL
-  volumes:
-    - 'secret'
-    - 'nfs'
-  hostNetwork: false
-  hostIPC: false
-  hostPID: false
-  runAsUser:
-    rule: 'RunAsAny'
-  seLinux:
-    rule: 'RunAsAny'
-  supplementalGroups:
-    rule: 'RunAsAny'
-  fsGroup:
-    rule: 'RunAsAny'
-  readOnlyRootFilesystem: false
-{{- end }}
diff --git a/charts/nfs-client-provisioner/templates/role.yaml b/charts/nfs-client-provisioner/templates/role.yaml
deleted file mode 100644
index 0cccdcbd5edd19ab3930636191691cf76ce0422b..0000000000000000000000000000000000000000
--- a/charts/nfs-client-provisioner/templates/role.yaml
+++ /dev/null
@@ -1,21 +0,0 @@
-{{- if .Values.rbac.create }}
-kind: Role
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
-  labels:
-    app: {{ template "nfs-client-provisioner.name" . }}
-    chart: {{ template "nfs-client-provisioner.chart" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-  name: leader-locking-{{ template "nfs-client-provisioner.fullname" . }}
-rules:
-  - apiGroups: [""]
-    resources: ["endpoints"]
-    verbs: ["get", "list", "watch", "create", "update", "patch"]
-{{- if .Values.podSecurityPolicy.enabled }}
-  - apiGroups:      ['extensions']
-    resources:      ['podsecuritypolicies']
-    verbs:          ['use']
-    resourceNames:  [{{ template "nfs-client-provisioner.fullname" . }}]
-{{- end }}
-{{- end }}
diff --git a/charts/nfs-client-provisioner/templates/rolebinding.yaml b/charts/nfs-client-provisioner/templates/rolebinding.yaml
deleted file mode 100644
index 57c1c878a33ac01a710d8730ab65cc660451b714..0000000000000000000000000000000000000000
--- a/charts/nfs-client-provisioner/templates/rolebinding.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-{{- if .Values.rbac.create }}
-kind: RoleBinding
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
-  labels:
-    app: {{ template "nfs-client-provisioner.name" . }}
-    chart: {{ template "nfs-client-provisioner.chart" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-  name: leader-locking-{{ template "nfs-client-provisioner.fullname" . }}
-subjects:
-  - kind: ServiceAccount
-    name: {{ template "nfs-client-provisioner.serviceAccountName" . }}
-    namespace: {{ .Release.Namespace }}
-roleRef:
-  kind: Role
-  name: leader-locking-{{ template "nfs-client-provisioner.fullname" . }}
-  apiGroup: rbac.authorization.k8s.io
-{{- end }}
diff --git a/charts/nfs-client-provisioner/templates/serviceaccount.yaml b/charts/nfs-client-provisioner/templates/serviceaccount.yaml
deleted file mode 100644
index 294089676d0e994ef49d45dda155cb9ef639a819..0000000000000000000000000000000000000000
--- a/charts/nfs-client-provisioner/templates/serviceaccount.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-{{ if .Values.serviceAccount.create }}
-apiVersion: v1
-kind: ServiceAccount
-metadata:
-  labels:
-    app: {{ template "nfs-client-provisioner.name" . }}
-    chart: {{ template "nfs-client-provisioner.chart" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-  name: {{ template "nfs-client-provisioner.serviceAccountName" . }}
-{{- end -}}
diff --git a/charts/nfs-client-provisioner/templates/storageclass.yaml b/charts/nfs-client-provisioner/templates/storageclass.yaml
deleted file mode 100644
index 81953c0dde432a261f2692fb55d1a956fe20a736..0000000000000000000000000000000000000000
--- a/charts/nfs-client-provisioner/templates/storageclass.yaml
+++ /dev/null
@@ -1,26 +0,0 @@
-{{ if .Values.storageClass.create -}}
-apiVersion: storage.k8s.io/v1
-kind: StorageClass
-metadata:
-  labels:
-    app: {{ template "nfs-client-provisioner.name" . }}
-    chart: {{ template "nfs-client-provisioner.chart" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-  name: {{ .Values.storageClass.name }}
-{{- if .Values.storageClass.defaultClass }}
-  annotations:
-    storageclass.kubernetes.io/is-default-class: "true"
-{{- end }}
-provisioner: {{ template "nfs-client-provisioner.provisionerName" . }}
-allowVolumeExpansion: {{ .Values.storageClass.allowVolumeExpansion }}
-reclaimPolicy: {{ .Values.storageClass.reclaimPolicy }}
-parameters:
-  archiveOnDelete: "{{ .Values.storageClass.archiveOnDelete }}"
-{{- if .Values.nfs.mountOptions }}
-mountOptions:
-  {{- range .Values.nfs.mountOptions }}
-  - {{ . }}
-  {{- end }}
-{{- end }}
-{{ end -}}
diff --git a/charts/nfs-client-provisioner/values.yaml b/charts/nfs-client-provisioner/values.yaml
deleted file mode 100644
index 9b3bd051a984c529bee85b9549e1328a9c6e5542..0000000000000000000000000000000000000000
--- a/charts/nfs-client-provisioner/values.yaml
+++ /dev/null
@@ -1,78 +0,0 @@
-# Default values for nfs-client-provisioner.
-# This is a YAML-formatted file.
-# Declare variables to be passed into your templates.
-
-replicaCount: 1
-strategyType: Recreate
-
-image:
-  repository: gcr.io/k8s-staging-sig-storage/nfs-subdir-external-provisioner
-  tag: v4.0.0
-  pullPolicy: IfNotPresent
-
-nfs:
-  server:
-  path: /ifs/kubernetes
-  mountOptions:
-
-# For creating the StorageClass automatically:
-storageClass:
-  create: true
-
-  # Set a provisioner name. If unset, a name will be generated.
-  # provisionerName:
-
-  # Set StorageClass as the default StorageClass
-  # Ignored if storageClass.create is false
-  defaultClass: false
-
-  # Set a StorageClass name
-  # Ignored if storageClass.create is false
-  name: nfs-client
-
-  # Allow volume to be expanded dynamically
-  allowVolumeExpansion: true
-
-  # Method used to reclaim an obsoleted volume
-  reclaimPolicy: Delete
-
-  # When set to false your PVs will not be archived by the provisioner upon deletion of the PVC.
-  archiveOnDelete: true
-
-  # Set access mode - ReadWriteOnce, ReadOnlyMany or ReadWriteMany
-  accessModes: ReadWriteOnce
-
-## For RBAC support:
-rbac:
-  # Specifies whether RBAC resources should be created
-  create: true
-
-# If true, create & use Pod Security Policy resources
-# https://kubernetes.io/docs/concepts/policy/pod-security-policy/
-podSecurityPolicy:
-  enabled: false
-
-## Set pod priorityClassName
-# priorityClassName: ""
-
-serviceAccount:
-  # Specifies whether a ServiceAccount should be created
-  create: true
-
-  # The name of the ServiceAccount to use.
-  # If not set and create is true, a name is generated using the fullname template
-  name:
-
-resources: {}
-  # limits:
-  #  cpu: 100m
-  #  memory: 128Mi
-  # requests:
-  #  cpu: 100m
-  #  memory: 128Mi
-
-nodeSelector: {}
-
-tolerations: []
-
-affinity: {}
diff --git a/charts/rabbitmq/Chart.yaml b/charts/rabbitmq/Chart.yaml
index 2209194544106522d55a065be0cbd882ae127262..18980e42d15de4f4f412068d3ee8325381ba1881 100644
--- a/charts/rabbitmq/Chart.yaml
+++ b/charts/rabbitmq/Chart.yaml
@@ -7,6 +7,6 @@ type: application
 maintainers:
   - name: groundhog2k
 
-version: "0.7.15"
+version: "0.7.16"
 
 appVersion: "3.12.11"
diff --git a/charts/rabbitmq/README.md b/charts/rabbitmq/README.md
index 3e4b2983b802ea276583fff4323415af24ed8b00..73fed050830253d93394203d4f049cd223024ad1 100644
--- a/charts/rabbitmq/README.md
+++ b/charts/rabbitmq/README.md
@@ -1,6 +1,6 @@
 # RabbitMQ
 
-![Version: 0.7.15](https://img.shields.io/badge/Version-0.7.15-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 3.12.11](https://img.shields.io/badge/AppVersion-3.12.11-informational?style=flat-square)
+![Version: 0.7.16](https://img.shields.io/badge/Version-0.7.16-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 3.12.11](https://img.shields.io/badge/AppVersion-3.12.11-informational?style=flat-square)
 
 A Helm chart for a RabbitMQ HA-cluster on Kubernetes
 
@@ -162,8 +162,10 @@ Section to define custom services
 | ingress.enabled | bool | `false` | Enable ingress for the Management UI service |
 | ingress.className | string | `nil` | Optional ingress class name |
 | ingress.annotations | string | `nil` | Additional annotations for ingress |
-| ingress.hosts[0].host: | string | `""` | Hostname for the ingress endpoint |
-| ingress.hosts[0].host.paths[0] | string | `"/"` | Path for the RabbitMQ Management UI |
+| ingress.labels | string | `nil` | Additional ingress lables |
+| ingress.hosts[0].host | string | `""` | Hostname for the ingress endpoint |
+| ingress.hosts[0].host.paths[0].path | string | `"/"` | Path for the RabbitMQ Management UI |
+| ingress.hosts[0].host.paths[0].pathType | string | `"ImplementationSpecific"` | Ingress path type (ImplementationSpecific, Prefix, Exact) |
 | ingress.tls | list | `[]` | Ingress TLS parameters |
 
 ## Network policies
diff --git a/charts/rabbitmq/RELEASENOTES.md b/charts/rabbitmq/RELEASENOTES.md
index 1a38eda01b2434ab016289d30928e6ee70f706a2..a68c6f7d79274f0395d1ca7ca8617cc616bcc4fc 100644
--- a/charts/rabbitmq/RELEASENOTES.md
+++ b/charts/rabbitmq/RELEASENOTES.md
@@ -111,4 +111,5 @@
 | 0.7.13 | 3.12.11 | Added pod topology spread constraints |
 | 0.7.14 | 3.12.11 | Renamed property for topology spread constraints |
 | 0.7.15 | 3.12.11 | Added optional ingressClassName and removed deprecated api support |
+| 0.7.16 | 3.12.11 | Refactored ingress configuration and added optional labels and pathType |
 | | | |
diff --git a/charts/rabbitmq/templates/ingress.yaml b/charts/rabbitmq/templates/ingress.yaml
index ec019ea31524f3f8d201f380085b944038aee317..0d1451234628e00c0a9be7990717d4b7ae1f9f10 100644
--- a/charts/rabbitmq/templates/ingress.yaml
+++ b/charts/rabbitmq/templates/ingress.yaml
@@ -1,23 +1,28 @@
 {{- if .Values.ingress.enabled }}
 {{- $fullName := include "rabbitmq.fullname" . -}}
+{{- $labels := include "rabbitmq.labels" . -}}
 {{- $svcPort := .Values.service.mgmt.port -}}
+{{- with .Values.ingress }}
 apiVersion: networking.k8s.io/v1
 kind: Ingress
 metadata:
   name: {{ $fullName }}
   labels:
-    {{- include "rabbitmq.labels" . | nindent 4 }}
-  {{- with .Values.ingress.annotations }}
+    {{- $labels | nindent 4 }}
+  {{- with .labels }}
+    {{- toYaml . | nindent 4 }}
+  {{- end }}
+  {{- with .annotations }}
   annotations:
     {{- toYaml . | nindent 4 }}
   {{- end }}
 spec:
-  {{- if .Values.ingress.className }}
-  ingressClassName: {{ .Values.ingress.className }}
+  {{- if .className }}
+  ingressClassName: {{ .className }}
   {{- end }}
-  {{- if .Values.ingress.tls }}
+  {{- if .tls }}
   tls:
-    {{- range .Values.ingress.tls }}
+    {{- range .tls }}
     - hosts:
         {{- range .hosts }}
         - {{ . | quote }}
@@ -26,13 +31,13 @@ spec:
     {{- end }}
   {{- end }}
   rules:
-    {{- range .Values.ingress.hosts }}
+    {{- range .hosts }}
     - host: {{ .host | quote }}
       http:
         paths:
           {{- range .paths }}
-          - path: {{ . }}
-            pathType: ImplementationSpecific
+          - path: {{ .path }}
+            pathType: {{ .pathType }}
             backend:
               service:
                 name: {{ $fullName }}
@@ -41,3 +46,4 @@ spec:
           {{- end }}
     {{- end }}
 {{- end }}
+{{- end }}
diff --git a/charts/rabbitmq/values.yaml b/charts/rabbitmq/values.yaml
index e40a9d7392f50f1557538d8a0ca3f92edd14da24..2bb070f2ff1ed94111456d2b927d851ea446960a 100644
--- a/charts/rabbitmq/values.yaml
+++ b/charts/rabbitmq/values.yaml
@@ -140,11 +140,15 @@ ingress:
   # kubernetes.io/ingress.class: nginx
   # kubernetes.io/tls-acme: "true"
 
+  ## Additional ingress labels
+  labels: {}
+
   ## Hosts
   hosts:
     - host:
       paths:
-        - /
+        - path: /
+          pathType: ImplementationSpecific
 
   ## TLS settings for hosts
   tls: []
diff --git a/charts/remark42/Chart.yaml b/charts/remark42/Chart.yaml
index 938fdeb152aa98b6e6a4c69bbf567f0fd8b8dbec..e502cbaf2e20bfe2abf2ac642a9afa4b65e1afa5 100644
--- a/charts/remark42/Chart.yaml
+++ b/charts/remark42/Chart.yaml
@@ -7,7 +7,7 @@ type: application
 maintainers:
   - name: groundhog2k
 
-version: "0.6.2"
+version: "0.6.3"
 
 appVersion: "v1.12.1"
 
diff --git a/charts/remark42/README.md b/charts/remark42/README.md
index b58d74aa2facc38590d41a18fcf6463d84856f18..1de8676d490987f602cdf46401ad3a94d9b4449d 100644
--- a/charts/remark42/README.md
+++ b/charts/remark42/README.md
@@ -1,6 +1,6 @@
 # Remark42
 
-![Version: 0.6.2](https://img.shields.io/badge/Version-0.6.2-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v1.12.1](https://img.shields.io/badge/AppVersion-v1.12.1-informational?style=flat-square)
+![Version: 0.6.3](https://img.shields.io/badge/Version-0.6.3-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v1.12.1](https://img.shields.io/badge/AppVersion-v1.12.1-informational?style=flat-square)
 
 A Helm chart for Remark42 on Kubernetes
 
@@ -104,8 +104,14 @@ helm uninstall my-release
 | ingress.enabled | bool | `false` | Enable ingress for Remark42 service |
 | ingress.className | string | `nil` | Optional ingress class name |
 | ingress.annotations | string | `nil` | Additional annotations for ingress |
+| ingress.labels | string | `nil` | Additional ingress lables |
+| ingress.hosts[0].host | string | `""` | Hostname for the ingress endpoint |
+| ingress.hosts[0].host.paths[0].path | string | `"/"` | Path of the Ghost UI |
+| ingress.hosts[0].host.paths[0].pathType | string | `"ImplementationSpecific"` | Ingress path type (ImplementationSpecific, Prefix, Exact) |
+
 | ingress.host | string | `nil` | Hostname for the ingress endpoint |
 | ingress.path | string | `/` | Ingress endpoint path
+
 | ingress.tls | object | `{}` | Ingress TLS parameters |
 | ingress.tls.secretName | string | `nil` | Ingress TLS secret name |
 
diff --git a/charts/remark42/RELEASENOTES.md b/charts/remark42/RELEASENOTES.md
index 9c893e1d15546b544ebdf2a6455ed245f2ff3770..7bfd69f6389b82fce8104457b01c2f170d69964a 100644
--- a/charts/remark42/RELEASENOTES.md
+++ b/charts/remark42/RELEASENOTES.md
@@ -29,4 +29,5 @@
 | 0.6.0 | v1.12.0 | Upgraded to Remark42 v1.12.0 |
 | 0.6.1 | v1.12.1 | Upgraded to Remark42 v1.12.1 |
 | 0.6.2 | v1.12.1 | Added optional ingressClassName and removed deprecated api support |
+| 0.6.3 | v1.12.1 | Refactored ingress configuration and added optional labels and pathType |
 | | | |
diff --git a/charts/remark42/templates/ingress.yaml b/charts/remark42/templates/ingress.yaml
index 5e3e171c3cbc6deca52e6451e32ea25928170680..bf0cd377f042b2eb16b1b011940357268584e337 100644
--- a/charts/remark42/templates/ingress.yaml
+++ b/charts/remark42/templates/ingress.yaml
@@ -1,42 +1,49 @@
 {{- if .Values.ingress.enabled }}
 {{- $fullName := include "remark42.fullname" . -}}
+{{- $labels := include "remark42.labels" . -}}
 {{- $svcPort := .Values.service.port -}}
+{{- with .Values.ingress }}
 apiVersion: networking.k8s.io/v1
 kind: Ingress
 metadata:
   name: {{ $fullName }}
   labels:
-    {{- include "remark42.labels" . | nindent 4 }}
-  annotations:
-  {{- if ne .Values.ingress.path "/" }}
-    nginx.ingress.kubernetes.io/rewrite-target: /$2
+    {{- $labels | nindent 4 }}
+  {{- with .labels }}
+    {{- toYaml . | nindent 4 }}
   {{- end }}
-  {{- with .Values.ingress.annotations }}
+  annotations:
+  {{- with .annotations }}
     {{- toYaml . | nindent 4 }}
   {{- end }}
 spec:
-  {{- if .Values.ingress.className }}
-  ingressClassName: {{ .Values.ingress.className }}
+  {{- if .className }}
+  ingressClassName: {{ .className }}
   {{- end }}
-  {{- if .Values.ingress.tls }}
+  {{- if .tls }}
   tls:
+    {{- range .tls }}
     - hosts:
-        - {{ .Values.ingress.host | quote }}
-      secretName: {{ .Values.ingress.tls.secretName }}
+        {{- range .hosts }}
+        - {{ . | quote }}
+        {{- end }}
+      secretName: {{ .secretName }}
+    {{- end }}
   {{- end }}
   rules:
-    - host: {{ .Values.ingress.host | quote }}
+    {{- range .hosts }}
+    - host: {{ .host | quote }}
       http:
         paths:
-          {{- if ne .Values.ingress.path "/" }}
-          - path: {{ .Values.ingress.path }}(/|$)(.*)
-          {{- else }}
-          - path: {{ .Values.ingress.path }}
-          {{- end }}
-            pathType: ImplementationSpecific
+          {{- range .paths }}
+          - path: {{ .path }}
+            pathType: {{ .pathType }}
             backend:
               service:
                 name: {{ $fullName }}
                 port:
                   number: {{ $svcPort }}
-  {{- end }}
+          {{- end }}
+    {{- end }}
+{{- end }}
+{{- end }}
diff --git a/charts/remark42/values.yaml b/charts/remark42/values.yaml
index cadd71c3e3ed09b857dd06772773c1fd506d5ee8..47a7f4807965e9b6a1ff6dd4844ce58b539de23b 100644
--- a/charts/remark42/values.yaml
+++ b/charts/remark42/values.yaml
@@ -68,11 +68,21 @@ ingress:
   enabled: false
   ## Optional ingress class name
   className:
+
+  ## Additional ingress annotations
   annotations: {}
     # kubernetes.io/ingress.class: nginx
     # kubernetes.io/tls-acme: "true"
-  host:
-  path: /
+
+  ## Additional ingress labels
+  labels: {}
+
+  ## Hosts
+  hosts:
+    - host:
+      paths:
+        - path: /
+          pathType: ImplementationSpecific
 
   tls: {}
     # secretName: chart-example-tls
diff --git a/charts/wordpress/Chart.yaml b/charts/wordpress/Chart.yaml
index 06526f3a78eef94f2ce9502a1028f98f965c71b8..f675d0b40600a9975ebbd5c14551b81dcea9c0e2 100644
--- a/charts/wordpress/Chart.yaml
+++ b/charts/wordpress/Chart.yaml
@@ -8,7 +8,7 @@ maintainers:
 type: application
 
 # This is the chart version.
-version: "0.10.3"
+version: "0.10.4"
 
 # This is the version number of the application being deployed.
 appVersion: "6.4.2-apache"
diff --git a/charts/wordpress/README.md b/charts/wordpress/README.md
index 87bff7ef961a02b70be8ba4932d42eb6a3630b2c..dfe8b7a7d486e9cdc3a73d3c5f7181d7140c469b 100644
--- a/charts/wordpress/README.md
+++ b/charts/wordpress/README.md
@@ -1,6 +1,6 @@
 # Wordpress
 
-![Version: 0.10.3](https://img.shields.io/badge/Version-0.10.3-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 6.4.2-apache](https://img.shields.io/badge/AppVersion-6.4.2--apache-informational?style=flat-square)
+![Version: 0.10.4](https://img.shields.io/badge/Version-0.10.4-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 6.4.2-apache](https://img.shields.io/badge/AppVersion-6.4.2--apache-informational?style=flat-square)
 
 ## Changelog
 
@@ -111,6 +111,7 @@ helm uninstall my-release
 | ingress.enabled | bool | `false` | Enable ingress for Wordpress service |
 | ingress.className | string | `nil` | Optional ingress class name |
 | ingress.annotations | string | `nil` | Additional annotations for ingress |
+| ingress.labels | string | `nil` | Additional ingress lables |
 | ingress.hosts[0].host | string | `""` | Hostname for the ingress endpoint |
 | ingress.hosts[0].host.paths[0].path | string | `"/"` | Default root path |
 | ingress.hosts[0].host.paths[0].pathType | string | `ImplementationSpecific` | Ingress path type (ImplementationSpecific, Prefix, Exact) |
diff --git a/charts/wordpress/RELEASENOTES.md b/charts/wordpress/RELEASENOTES.md
index a58af9adae9f5f6ab6a1bbedea77ccde98282f6f..f4037dd9490b08f44958721a6876ae0a79dc8726 100644
--- a/charts/wordpress/RELEASENOTES.md
+++ b/charts/wordpress/RELEASENOTES.md
@@ -39,4 +39,5 @@
 | 0.10.1 | 6.4.1-apache | Upgraded to Wordpress 6.4.1 |
 | 0.10.2 | 6.4.2-apache | Upgraded to Wordpress 6.4.2 |
 | 0.10.3 | 6.4.2-apache | Added optional ingressClassName and removed deprecated api support |
+| 0.10.4 | 6.4.2-apache | Refactored ingress configuration and added optional labels |
 | | | |
diff --git a/charts/wordpress/templates/ingress.yaml b/charts/wordpress/templates/ingress.yaml
index 3e592c5ce45ffff55cc7a59dea1891fc6242fb6a..9967af237f4e223a68e96528a79c4a4910f79a59 100644
--- a/charts/wordpress/templates/ingress.yaml
+++ b/charts/wordpress/templates/ingress.yaml
@@ -1,25 +1,31 @@
 {{- if .Values.ingress.enabled }}
 {{- $fullName := include "wordpress.fullname" . -}}
+{{- $labels := include "wordpress.labels" . -}}
 {{- $svcPort := .Values.service.port -}}
-{{- $maxSize := .Values.ingress.maxBodySize -}}
+{{- with .Values.ingress }}
 apiVersion: networking.k8s.io/v1
 kind: Ingress
 metadata:
   name: {{ $fullName }}
   labels:
-    {{- include "wordpress.labels" . | nindent 4 }}
+    {{- $labels | nindent 4 }}
+  {{- with .labels }}
+    {{- toYaml . | nindent 4 }}
+  {{- end }}
   annotations:
-    nginx.ingress.kubernetes.io/proxy-body-size: {{ $maxSize }}  
-  {{- with .Values.ingress.annotations }}
+    {{- if .maxBodySize }}
+    nginx.ingress.kubernetes.io/proxy-body-size: {{ .maxBodySize }}  
+    {{- end }}
+  {{- with .annotations }}
     {{- toYaml . | nindent 4 }}
   {{- end }}
 spec:
-  {{- if .Values.ingress.className }}
-  ingressClassName: {{ .Values.ingress.className }}
+  {{- if .className }}
+  ingressClassName: {{ .className }}
   {{- end }}
-  {{- if .Values.ingress.tls }}
+  {{- if .tls }}
   tls:
-    {{- range .Values.ingress.tls }}
+    {{- range .tls }}
     - hosts:
         {{- range .hosts }}
         - {{ . | quote }}
@@ -28,7 +34,7 @@ spec:
     {{- end }}
   {{- end }}
   rules:
-    {{- range .Values.ingress.hosts }}
+    {{- range .hosts }}
     - host: {{ .host | quote }}
       http:
         paths:
@@ -42,4 +48,5 @@ spec:
                   number: {{ $svcPort }}
           {{- end }}
     {{- end }}
-  {{- end }}
+{{- end }}
+{{- end }}
diff --git a/charts/wordpress/values.yaml b/charts/wordpress/values.yaml
index c337a0befd005e306c907cc9c77a69f505f5bb11..41ffc0cdd011cd0175d1c7c4f593468c45da3b4f 100644
--- a/charts/wordpress/values.yaml
+++ b/charts/wordpress/values.yaml
@@ -75,6 +75,9 @@ ingress:
     # kubernetes.io/ingress.class: nginx
     # kubernetes.io/tls-acme: "true"
 
+  ## Additional ingress labels
+  labels: {}
+
   ## Hosts
   hosts:
     - host: