From 6bfbed6150fa482a9d69b4567e55c3f401c6f8ad Mon Sep 17 00:00:00 2001 From: jessebot Date: Mon, 29 Jul 2024 11:20:12 +0200 Subject: [PATCH] Add missing supported S3 values Signed-off-by: jessebot --- charts/nextcloud/Chart.yaml | 2 +- .../files/defaultConfigs/s3.config.php.tpl | 9 ++++++++- charts/nextcloud/templates/_helpers.tpl | 18 +++++++++++++++++- charts/nextcloud/values.yaml | 10 ++++++++++ 4 files changed, 36 insertions(+), 3 deletions(-) diff --git a/charts/nextcloud/Chart.yaml b/charts/nextcloud/Chart.yaml index ec72c02c..a40cd088 100644 --- a/charts/nextcloud/Chart.yaml +++ b/charts/nextcloud/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v2 name: nextcloud -version: 5.4.0 +version: 5.5.0 appVersion: 29.0.4 description: A file sharing server that puts the control and security of your own data back into your hands. keywords: diff --git a/charts/nextcloud/files/defaultConfigs/s3.config.php.tpl b/charts/nextcloud/files/defaultConfigs/s3.config.php.tpl index 9941c562..20f4d8dd 100644 --- a/charts/nextcloud/files/defaultConfigs/s3.config.php.tpl +++ b/charts/nextcloud/files/defaultConfigs/s3.config.php.tpl @@ -19,7 +19,14 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) { // required for some non Amazon S3 implementations 'use_path_style' => $use_path == true && strtolower($use_path) !== 'false', // required for older protocol versions - 'legacy_auth' => $use_legacyauth == true && strtolower($use_legacyauth) !== 'false' + 'legacy_auth' => $use_legacyauth == true && strtolower($use_legacyauth) !== 'false', + 'concurrency' => getenv('OBJECTSTORE_S3_CONCURRENCY') ?: 5, + 'proxy' => getenv('OBJECTSTORE_S3_PROXY') ?: false, + 'timeout' => getenv('OBJECTSTORE_S3_TIMEOUT') ?: 15, + 'uploadPartSize' => getenv('OBJECTSTORE_S3_UPLOADPARTSIZE') ?: 524288000, + 'putSizeLimit' => getenv('OBJECTSTORE_S3_PUTSIZELIMIT') ?: 104857600, + 'version' => getenv('OBJECTSTORE_S3_VERSION') ?: "latest", + 'verify_bucket_exists' => getenv('OBJECTSTORE_S3_VERIFY_BUCKET_EXISTS') ?: true ) ) ); diff --git a/charts/nextcloud/templates/_helpers.tpl b/charts/nextcloud/templates/_helpers.tpl index b0bf7355..79b2dc6c 100644 --- a/charts/nextcloud/templates/_helpers.tpl +++ b/charts/nextcloud/templates/_helpers.tpl @@ -247,8 +247,24 @@ S3 as primary object store env vars value: {{ .Values.nextcloud.objectStore.s3.usePathStyle | quote }} {{- with .Values.nextcloud.objectStore.s3.legacyAuth }} - name: OBJECTSTORE_S3_LEGACYAUTH - value: {{ . }} + value: {{ . | quote }} +{{- end }} +- name: OBJECTSTORE_S3_CONCURRENCY + value: {{ .Values.nextcloud.objectStore.s3.concurrency | quote }} +{{- with .Values.nextcloud.objectStore.s3.proxy }} +- name: OBJECTSTORE_S3_PROXY + value: {{ . | quote }} {{- end }} +- name: OBJECTSTORE_S3_TIMEOUT + value: {{ .Values.nextcloud.objectStore.s3.timeout | quote }} +- name: OBJECTSTORE_S3_UPLOADPARTSIZE + value: {{ .Values.nextcloud.objectStore.s3.uploadPartSize | quote }} +- name: OBJECTSTORE_S3_PUTSIZELIMIT + value: {{ .Values.nextcloud.objectStore.s3.putSizeLimit | quote }} +- name: OBJECTSTORE_S3_VERSION + value: {{ .Values.nextcloud.objectStore.s3.version | quote }} +- name: OBJECTSTORE_S3_VERIFY_BUCKET_EXISTS + value: {{ . | quote }} - name: OBJECTSTORE_S3_AUTOCREATE value: {{ .Values.nextcloud.objectStore.s3.autoCreate | quote }} - name: OBJECTSTORE_S3_REGION diff --git a/charts/nextcloud/values.yaml b/charts/nextcloud/values.yaml index 2d2d5d40..969f3fb3 100644 --- a/charts/nextcloud/values.yaml +++ b/charts/nextcloud/values.yaml @@ -141,6 +141,16 @@ nextcloud: storageClass: "STANDARD" # server side encryption key. learn more: https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/primary_storage.html#s3-sse-c-encryption-support sse_c_key: "" + # defines the maximum number of concurrent multipart uploads + concurrency: 5 + proxy: false + timout: 15 + uploadPartSize: 524288000 + putSizeLimit: 104857600 + version: "latest" + # Setting this to false after confirming the bucket has been created may provide a performance benefit, + # but may not be possible in multibucket scenarios. + verify_bucket_exists: true # use an existingSecret for S3 credentials. If set, we ignore the following under nextcloud.objectStore.s3 # endpoint, accessKey, secretKey existingSecret: ""