From f086f1fcbae6c599a3219ce742b2393143d8689d Mon Sep 17 00:00:00 2001 From: Kjeld Schouten Date: Wed, 6 Dec 2023 00:04:19 +0100 Subject: [PATCH] feat(csi): add SMB and NFS CSI drivers for non-scale systems (#15778) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit **Description** We already support mounting static PVCs using NFS and SMB provisioners. But we don't ship them yet for non-scale systems, like we should. Added for non-scale use only ⚒️ Fixes #14525 ⚒️ Fixes #14526 **⚙️ Type of change** - [x] ⚙️ Feature/App addition - [ ] 🪛 Bugfix - [ ] ⚠️ Breaking change (fix or feature that would cause existing functionality to not work as expected) - [ ] 🔃 Refactor of current code **🧪 How Has This Been Tested?** **📃 Notes:** **✔️ Checklist:** - [ ] ⚖️ My code follows the style guidelines of this project - [ ] 👀 I have performed a self-review of my own code - [ ] #️⃣ I have commented my code, particularly in hard-to-understand areas - [ ] 📄 I have made corresponding changes to the documentation - [ ] ⚠️ My changes generate no new warnings - [ ] 🧪 I have added tests to this description that prove my fix is effective or that my feature works - [ ] ⬆️ I increased versions for any altered app according to semantic versioning **➕ App addition** If this PR is an app addition please make sure you have done the following. - [ ] 🪞 I have opened a PR on [truecharts/containers](https://github.com/truecharts/containers) adding the container to TrueCharts mirror repo. - [ ] 🖼️ I have added an icon in the Chart's root directory called `icon.png` --- _Please don't blindly check all the boxes. Read them and only check those that apply. Those checkboxes are there for the reviewer to see what is this all about and the status of this PR with a quick glance._ --------- Signed-off-by: Kjeld Schouten Co-authored-by: Stavros Kois <47820033+stavros-k@users.noreply.github.com> --- charts/incubator/csi-driver-nfs/.helmignore | 30 +++ charts/incubator/csi-driver-nfs/Chart.yaml | 44 ++++ charts/incubator/csi-driver-nfs/LICENSE | 106 +++++++++ charts/incubator/csi-driver-nfs/README.md | 27 +++ charts/incubator/csi-driver-nfs/icon.png | Bin 0 -> 52747 bytes .../incubator/csi-driver-nfs/questions.yaml | 3 + .../csi-driver-nfs/templates/NOTES.txt | 1 + .../csi-driver-nfs/templates/common.yaml | 5 + charts/incubator/csi-driver-nfs/values.yaml | 202 ++++++++++++++++++ charts/incubator/csi-driver-smb/.helmignore | 30 +++ charts/incubator/csi-driver-smb/Chart.yaml | 44 ++++ charts/incubator/csi-driver-smb/LICENSE | 106 +++++++++ charts/incubator/csi-driver-smb/README.md | 27 +++ charts/incubator/csi-driver-smb/icon.png | Bin 0 -> 52747 bytes .../incubator/csi-driver-smb/questions.yaml | 3 + .../csi-driver-smb/templates/NOTES.txt | 1 + .../csi-driver-smb/templates/common.yaml | 5 + charts/incubator/csi-driver-smb/values.yaml | 202 ++++++++++++++++++ 18 files changed, 836 insertions(+) create mode 100644 charts/incubator/csi-driver-nfs/.helmignore create mode 100644 charts/incubator/csi-driver-nfs/Chart.yaml create mode 100644 charts/incubator/csi-driver-nfs/LICENSE create mode 100644 charts/incubator/csi-driver-nfs/README.md create mode 100644 charts/incubator/csi-driver-nfs/icon.png create mode 100644 charts/incubator/csi-driver-nfs/questions.yaml create mode 100644 charts/incubator/csi-driver-nfs/templates/NOTES.txt create mode 100644 charts/incubator/csi-driver-nfs/templates/common.yaml create mode 100644 charts/incubator/csi-driver-nfs/values.yaml create mode 100644 charts/incubator/csi-driver-smb/.helmignore create mode 100644 charts/incubator/csi-driver-smb/Chart.yaml create mode 100644 charts/incubator/csi-driver-smb/LICENSE create mode 100644 charts/incubator/csi-driver-smb/README.md create mode 100644 charts/incubator/csi-driver-smb/icon.png create mode 100644 charts/incubator/csi-driver-smb/questions.yaml create mode 100644 charts/incubator/csi-driver-smb/templates/NOTES.txt create mode 100644 charts/incubator/csi-driver-smb/templates/common.yaml create mode 100644 charts/incubator/csi-driver-smb/values.yaml diff --git a/charts/incubator/csi-driver-nfs/.helmignore b/charts/incubator/csi-driver-nfs/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/incubator/csi-driver-nfs/.helmignore @@ -0,0 +1,30 @@ +# 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 +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/incubator/csi-driver-nfs/Chart.yaml b/charts/incubator/csi-driver-nfs/Chart.yaml new file mode 100644 index 00000000000..ddfaf49b564 --- /dev/null +++ b/charts/incubator/csi-driver-nfs/Chart.yaml @@ -0,0 +1,44 @@ +kubeVersion: ">=1.24.0" +apiVersion: v2 +name: csi-driver-nfs +version: 0.1.0 +appVersion: latest +description: csi-driver-nfs is a nfs CSI driver for kubernetes +home: https://truecharts.org/charts/incubator/csi-driver-nfs +icon: https://truecharts.org/img/hotlink-ok/chart-icons/csi-driver-nfs.png +deprecated: false +sources: + - https://github.com/truecharts/charts/tree/master/charts/incubator/csi-driver-nfs + - https://github.com/truecharts/containers/tree/master/mirroralpine + - https://github.com/cert-manager + - https://cert-manager.io/ +maintainers: + - name: TrueCharts + email: info@truecharts.org + url: https://truecharts.org +keywords: + - csi-driver-nfs + - backup +dependencies: + - name: common + version: 16.0.0 + repository: https://library-charts.truecharts.org + condition: "" + alias: "" + tags: [] + import-values: [] + - name: csi-driver-nfs + version: v4.5.0 + repository: https://raw.githubusercontent.com/kubernetes-csi/csi-driver-nfs/master/charts + condition: "" + alias: csi-driver-nfs + tags: [] + import-values: [] +annotations: + max_scale_version: 23.10.1 + min_scale_version: 22.12.4 + truecharts.org/SCALE-support: "false" + truecharts.org/category: CSI + truecharts.org/max_helm_version: "3.13" + truecharts.org/min_helm_version: "3.12" + truecharts.org/train: incubator diff --git a/charts/incubator/csi-driver-nfs/LICENSE b/charts/incubator/csi-driver-nfs/LICENSE new file mode 100644 index 00000000000..4dfe12ac30e --- /dev/null +++ b/charts/incubator/csi-driver-nfs/LICENSE @@ -0,0 +1,106 @@ +Business Source License 1.1 + +Parameters + +Licensor: The TrueCharts Project, it's owner and it's contributors +Licensed Work: The TrueCharts "MetalLB" Helm Chart +Additional Use Grant: You may use the licensed work in production, as long + as it is directly sourced from a TrueCharts provided + official repository, catalog or source. You may also make private + modification to the directly sourced licenced work, + when used in production. + + The following cases are, due to their nature, also + defined as 'production use' and explicitly prohibited: + - Bundling, including or displaying the licensed work + with(in) another work intended for production use, + with the apparent intend of facilitating and/or + promoting production use by third parties in + violation of this license. + +Change Date: 2050-01-01 + +Change License: 3-clause BSD license + +For information about alternative licensing arrangements for the Software, +please contact: legal@truecharts.org + +Notice + +The Business Source License (this document, or the “License”) is not an Open +Source license. However, the Licensed Work will eventually be made available +under an Open Source License, as stated in this License. + +License text copyright (c) 2017 MariaDB Corporation Ab, All Rights Reserved. +“Business Source License” is a trademark of MariaDB Corporation Ab. + +----------------------------------------------------------------------------- + +Business Source License 1.1 + +Terms + +The Licensor hereby grants you the right to copy, modify, create derivative +works, redistribute, and make non-production use of the Licensed Work. The +Licensor may make an Additional Use Grant, above, permitting limited +production use. + +Effective on the Change Date, or the fourth anniversary of the first publicly +available distribution of a specific version of the Licensed Work under this +License, whichever comes first, the Licensor hereby grants you rights under +the terms of the Change License, and the rights granted in the paragraph +above terminate. + +If your use of the Licensed Work does not comply with the requirements +currently in effect as described in this License, you must purchase a +commercial license from the Licensor, its affiliated entities, or authorized +resellers, or you must refrain from using the Licensed Work. + +All copies of the original and modified Licensed Work, and derivative works +of the Licensed Work, are subject to this License. This License applies +separately for each version of the Licensed Work and the Change Date may vary +for each version of the Licensed Work released by Licensor. + +You must conspicuously display this License on each original or modified copy +of the Licensed Work. If you receive the Licensed Work in original or +modified form from a third party, the terms and conditions set forth in this +License apply to your use of that work. + +Any use of the Licensed Work in violation of this License will automatically +terminate your rights under this License for the current and all other +versions of the Licensed Work. + +This License does not grant you any right in any trademark or logo of +Licensor or its affiliates (provided that you may use a trademark or logo of +Licensor as expressly required by this License). + +TO THE EXTENT PERMITTED BY APPLICABLE LAW, THE LICENSED WORK IS PROVIDED ON +AN “AS IS” BASIS. LICENSOR HEREBY DISCLAIMS ALL WARRANTIES AND CONDITIONS, +EXPRESS OR IMPLIED, INCLUDING (WITHOUT LIMITATION) WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, AND +TITLE. + +MariaDB hereby grants you permission to use this License’s text to license +your works, and to refer to it using the trademark “Business Source License”, +as long as you comply with the Covenants of Licensor below. + +Covenants of Licensor + +In consideration of the right to use this License’s text and the “Business +Source License” name and trademark, Licensor covenants to MariaDB, and to all +other recipients of the licensed work to be provided by Licensor: + +1. To specify as the Change License the GPL Version 2.0 or any later version, + or a license that is compatible with GPL Version 2.0 or a later version, + where “compatible” means that software provided under the Change License can + be included in a program with software provided under GPL Version 2.0 or a + later version. Licensor may specify additional Change Licenses without + limitation. + +2. To either: (a) specify an additional grant of rights to use that does not + impose any additional restriction on the right granted in this License, as + the Additional Use Grant; or (b) insert the text “None”. + +3. To specify a Change Date. + +4. Not to modify this License in any other way. diff --git a/charts/incubator/csi-driver-nfs/README.md b/charts/incubator/csi-driver-nfs/README.md new file mode 100644 index 00000000000..83229a60265 --- /dev/null +++ b/charts/incubator/csi-driver-nfs/README.md @@ -0,0 +1,27 @@ +# README + +## General Info + +TrueCharts can be installed as both *normal* Helm Charts or as Apps on TrueNAS SCALE. +However only installations using the TrueNAS SCALE Apps system are supported. + +For more information about this App, please check the docs on the TrueCharts [website](https://truecharts.org/charts/incubator/) + +**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/charts/issues/new/choose)** + + +## Support + +- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/manual/SCALE/guides/scale-intro). +- See the [Website](https://truecharts.org) +- Check our [Discord](https://discord.gg/tVsPTHWTtr) +- Open a [issue](https://github.com/truecharts/charts/issues/new/choose) + +--- + +## Sponsor TrueCharts + +TrueCharts can only exist due to the incredible effort of our staff. +Please consider making a [donation](https://truecharts.org/sponsor) or contributing back to the project any way you can! + +*All Rights Reserved - The TrueCharts Project* diff --git a/charts/incubator/csi-driver-nfs/icon.png b/charts/incubator/csi-driver-nfs/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..b5d6225972b01ca52b30cb130b3bb9408a4247a6 GIT binary patch literal 52747 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⁡2m>GqH0{=3V}!_O9L+ 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 literal 0 HcmV?d00001 diff --git a/charts/incubator/csi-driver-nfs/questions.yaml b/charts/incubator/csi-driver-nfs/questions.yaml new file mode 100644 index 00000000000..97cb04afcd6 --- /dev/null +++ b/charts/incubator/csi-driver-nfs/questions.yaml @@ -0,0 +1,3 @@ +# Include{groups} +questions: +# Include{global} diff --git a/charts/incubator/csi-driver-nfs/templates/NOTES.txt b/charts/incubator/csi-driver-nfs/templates/NOTES.txt new file mode 100644 index 00000000000..efcb74cb772 --- /dev/null +++ b/charts/incubator/csi-driver-nfs/templates/NOTES.txt @@ -0,0 +1 @@ +{{- include "tc.v1.common.lib.chart.notes" $ -}} diff --git a/charts/incubator/csi-driver-nfs/templates/common.yaml b/charts/incubator/csi-driver-nfs/templates/common.yaml new file mode 100644 index 00000000000..995efb03eb0 --- /dev/null +++ b/charts/incubator/csi-driver-nfs/templates/common.yaml @@ -0,0 +1,5 @@ +{{/* Make sure all variables are set properly */}} +{{- include "tc.v1.common.loader.init" . }} + +{{/* Render the templates */}} +{{ include "tc.v1.common.loader.apply" . }} diff --git a/charts/incubator/csi-driver-nfs/values.yaml b/charts/incubator/csi-driver-nfs/values.yaml new file mode 100644 index 00000000000..8ab264d62f9 --- /dev/null +++ b/charts/incubator/csi-driver-nfs/values.yaml @@ -0,0 +1,202 @@ +image: + repository: tccr.io/truecharts/alpine + pullPolicy: IfNotPresent + tag: latest@sha256:17cd77e25d3fa829d168caec4db7bb5b52ceeb935d8ca0d1180de6f615553dc4 + +service: + main: + enabled: false + ports: + main: + enabled: false + +workload: + main: + enabled: false + +portal: + open: + enabled: false + +operator: + register: true + +velero: + namespace: + labels: + # Enforce Pod Security Standards with Namespace Labels + # https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-namespace-labels/ + - key: pod-security.kubernetes.io/enforce + value: privileged + - key: pod-security.kubernetes.io/enforce-version + value: latest + - key: pod-security.kubernetes.io/audit + value: privileged + - key: pod-security.kubernetes.io/audit-version + value: latest + - key: pod-security.kubernetes.io/warn + value: privileged + - key: pod-security.kubernetes.io/warn-version + value: latest + + # Resource requests/limits to specify for the Velero deployment. + # https://velero.io/docs/v1.6/customize-installation/#customize-resource-requests-and-limits + resources: + limits: + cpu: 4000m + memory: 4Gi + + # Init containers to add to the Velero deployment's pod spec. At least one plugin provider image is required. + # If the value is a string then it is evaluated as a template. + initContainers: + - name: opeebs-velero-plugin + image: openebs/velero-plugin:1.9.0@sha256:f89855c12dd0a9bfd1afb9a75b051f6cb0452c4c073df9fc7fff4d7983eff341 + imagePullPolicy: IfNotPresent + volumeMounts: + - mountPath: /target + name: plugins + - name: velero-plugin-for-csi + image: velero/velero-plugin-for-csi:v0.6.0@sha256:fc07d1897a65d7728543b2fae9feddad087b5e7f45f45c3adaeda2ef4996fd50 + imagePullPolicy: IfNotPresent + volumeMounts: + - mountPath: /target + name: plugins + - name: velero-plugin-for-aws + image: velero/velero-plugin-for-aws:v1.8.0@sha256:466d4ee963de87b28e38098f5f91401bde514c7c2449ea6da4009be626a08f6c + imagePullPolicy: IfNotPresent + volumeMounts: + - mountPath: /target + name: plugins + + # Whether to deploy the node-agent daemonset. + deployNodeAgent: true + + nodeAgent: + podVolumePath: /var/lib/kubelet/pods + privileged: true + # Resource requests/limits to specify for the node-agent daemonset deployment. Optional. + # https://velero.io/docs/v1.6/customize-installation/#customize-resource-requests-and-limits + resources: + limits: + cpu: 2000m + memory: 2048Mi + + ## + ## Parameters for the `default` BackupStorageLocation and VolumeSnapshotLocation, + ## and additional server settings. + ## + configuration: + ## Please do not use, use .Values.backupStorageLocation instead + backupStorageLocation: [] + + ## Please do not use, use .Values.volumeSnapshotLocation instead + volumeSnapshotLocation: [] + + ## Please do not use, use .Values.schedules instead + schedules: {} + +manifestManager: + enabled: false + +# # Parameters for the BackupStorageLocation(s). Configure multiple by adding other element(s) to the backupStorageLocation slice. +# # See https://velero.io/docs/v1.6/api-types/backupstoragelocation/ +backupStorageLocationList: [] +# - name: name +# # name is the name of the backup storage location where backups should be stored. If a name is not provided, +# # a backup storage location will be created with the name "default". Optional. +backupStorageLocation: {} +# backupStorageLocation: +# name: +# # provider is the name for the backup storage location provider. +# provider: +# objectStorage: +# # bucket is the name of the bucket to store backups in. Required. +# bucket: +# # caCert defines a base64 encoded CA bundle to use when verifying TLS connections to the provider. Optional. +# caCert: +# # prefix is the directory under which all Velero data should be stored within the bucket. Optional. +# prefix: +# # validationFrequency defines how frequently Velero should validate the object storage. Optional. +# validationFrequency: +# # accessMode determines if velero can write to this backup storage location. Optional. +# # default to ReadWrite, ReadOnly is used during migrations and restores. +# accessMode: ReadWrite +# credential: +# # AWS/s3 credentials to be put into secret (mandatory if provider == aws/s3) +# aws: +# id: fdgsdfghsdfgh +# key: dfgdfhsdfgh +# # name of the secret used by this backupStorageLocation. +# name: +# # name of key that contains the secret data to be used. +# key: +# # Additional provider-specific configuration. See link above +# # for details of required/optional fields for your provider. +# config: {} +# # region: +# # s3ForcePathStyle: +# # s3Url: +# # kmsKeyId: +# # resourceGroup: +# # The ID of the subscription containing the storage account, if different from the cluster’s subscription. (Azure only) +# # subscriptionId: +# # storageAccount: +# # publicUrl: +# # Name of the GCP service account to use for this backup storage location. Specify the +# # service account here if you want to use workload identity instead of providing the key file.(GCP only) +# # serviceAccount: +# # Option to skip certificate validation or not if insecureSkipTLSVerify is set to be true, the client side should set the +# # flag. For Velero client Command like velero backup describe, velero backup logs needs to add the flag --insecure-skip-tls-verify +# # insecureSkipTLSVerify: + +# # Parameters for the VolumeSnapshotLocation(s). Configure multiple by adding other element(s) to the volumeSnapshotLocation slice. +# # See https://velero.io/docs/v1.6/api-types/volumesnapshotlocation/ +volumeSnapshotLocationList: [] +# # name is the |name of the volume snapshot location where snapshots are being taken. Required. +# - name: name +# ... +volumeSnapshotLocation: {} +# volumeSnapshotLocation: +# name: +# enabled: false +# # provider is the name for the volume snapshot provider. +# provider: +# credential: +# # AWS/s3 credentials to be put into secret (mandatory if provider == aws/s3) +# aws: +# id: fdgsdfghsdfgh +# key: dfgdfhsdfgh +# # name of the secret used by this volumeSnapshotLocation. (Optional/Advanced) +# name: +# # name of key that contains the secret data to be used. (Optional/Advanced) +# key: +# # Additional provider-specific configuration. See link above +# # for details of required/optional fields for your provider. +# config: {} +# # region: +# # apiTimeout: +# # resourceGroup: +# # The ID of the subscription where volume snapshots should be stored, if different from the cluster’s subscription. If specified, also requires `configuration.volumeSnapshotLocation.config.resourceGroup`to be set. (Azure only) +# # subscriptionId: +# # incremental: +# # snapshotLocation: +# # project: + +# Backup schedules to create. +schedulesList: [] +schedules: {} +# Eg: +# schedules: +# mybackup: +# disabled: false +# labels: +# myenv: foo +# annotations: +# myenv: foo +# schedule: "0 0 * * *" +# useOwnerReferencesInBackup: false +# template: +# ttl: "240h" +# storageLocation: default +# includedNamespaces: +# - foo diff --git a/charts/incubator/csi-driver-smb/.helmignore b/charts/incubator/csi-driver-smb/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/incubator/csi-driver-smb/.helmignore @@ -0,0 +1,30 @@ +# 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 +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/incubator/csi-driver-smb/Chart.yaml b/charts/incubator/csi-driver-smb/Chart.yaml new file mode 100644 index 00000000000..5198f232a79 --- /dev/null +++ b/charts/incubator/csi-driver-smb/Chart.yaml @@ -0,0 +1,44 @@ +kubeVersion: ">=1.24.0" +apiVersion: v2 +name: csi-driver-smb +version: 0.1.0 +appVersion: latest +description: csi-driver-smb is a smb CSI driver for kubernetes +home: https://truecharts.org/charts/incubator/csi-driver-smb +icon: https://truecharts.org/img/hotlink-ok/chart-icons/csi-driver-smb.png +deprecated: false +sources: + - https://github.com/truecharts/charts/tree/master/charts/incubator/csi-driver-smb + - https://github.com/truecharts/containers/tree/master/mirroralpine + - https://github.com/cert-manager + - https://cert-manager.io/ +maintainers: + - name: TrueCharts + email: info@truecharts.org + url: https://truecharts.org +keywords: + - csi-driver-smb + - backup +dependencies: + - name: common + version: 16.0.0 + repository: https://library-charts.truecharts.org + condition: "" + alias: "" + tags: [] + import-values: [] + - name: csi-driver-smb + version: v1.13.0 + repository: https://raw.githubusercontent.com/kubernetes-csi/csi-driver-smb/master/charts + condition: "" + alias: csi-driver-smb + tags: [] + import-values: [] +annotations: + max_scale_version: 23.10.1 + min_scale_version: 22.12.4 + truecharts.org/SCALE-support: "false" + truecharts.org/category: CSI + truecharts.org/max_helm_version: "3.13" + truecharts.org/min_helm_version: "3.12" + truecharts.org/train: incubator diff --git a/charts/incubator/csi-driver-smb/LICENSE b/charts/incubator/csi-driver-smb/LICENSE new file mode 100644 index 00000000000..4dfe12ac30e --- /dev/null +++ b/charts/incubator/csi-driver-smb/LICENSE @@ -0,0 +1,106 @@ +Business Source License 1.1 + +Parameters + +Licensor: The TrueCharts Project, it's owner and it's contributors +Licensed Work: The TrueCharts "MetalLB" Helm Chart +Additional Use Grant: You may use the licensed work in production, as long + as it is directly sourced from a TrueCharts provided + official repository, catalog or source. You may also make private + modification to the directly sourced licenced work, + when used in production. + + The following cases are, due to their nature, also + defined as 'production use' and explicitly prohibited: + - Bundling, including or displaying the licensed work + with(in) another work intended for production use, + with the apparent intend of facilitating and/or + promoting production use by third parties in + violation of this license. + +Change Date: 2050-01-01 + +Change License: 3-clause BSD license + +For information about alternative licensing arrangements for the Software, +please contact: legal@truecharts.org + +Notice + +The Business Source License (this document, or the “License”) is not an Open +Source license. However, the Licensed Work will eventually be made available +under an Open Source License, as stated in this License. + +License text copyright (c) 2017 MariaDB Corporation Ab, All Rights Reserved. +“Business Source License” is a trademark of MariaDB Corporation Ab. + +----------------------------------------------------------------------------- + +Business Source License 1.1 + +Terms + +The Licensor hereby grants you the right to copy, modify, create derivative +works, redistribute, and make non-production use of the Licensed Work. The +Licensor may make an Additional Use Grant, above, permitting limited +production use. + +Effective on the Change Date, or the fourth anniversary of the first publicly +available distribution of a specific version of the Licensed Work under this +License, whichever comes first, the Licensor hereby grants you rights under +the terms of the Change License, and the rights granted in the paragraph +above terminate. + +If your use of the Licensed Work does not comply with the requirements +currently in effect as described in this License, you must purchase a +commercial license from the Licensor, its affiliated entities, or authorized +resellers, or you must refrain from using the Licensed Work. + +All copies of the original and modified Licensed Work, and derivative works +of the Licensed Work, are subject to this License. This License applies +separately for each version of the Licensed Work and the Change Date may vary +for each version of the Licensed Work released by Licensor. + +You must conspicuously display this License on each original or modified copy +of the Licensed Work. If you receive the Licensed Work in original or +modified form from a third party, the terms and conditions set forth in this +License apply to your use of that work. + +Any use of the Licensed Work in violation of this License will automatically +terminate your rights under this License for the current and all other +versions of the Licensed Work. + +This License does not grant you any right in any trademark or logo of +Licensor or its affiliates (provided that you may use a trademark or logo of +Licensor as expressly required by this License). + +TO THE EXTENT PERMITTED BY APPLICABLE LAW, THE LICENSED WORK IS PROVIDED ON +AN “AS IS” BASIS. LICENSOR HEREBY DISCLAIMS ALL WARRANTIES AND CONDITIONS, +EXPRESS OR IMPLIED, INCLUDING (WITHOUT LIMITATION) WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, AND +TITLE. + +MariaDB hereby grants you permission to use this License’s text to license +your works, and to refer to it using the trademark “Business Source License”, +as long as you comply with the Covenants of Licensor below. + +Covenants of Licensor + +In consideration of the right to use this License’s text and the “Business +Source License” name and trademark, Licensor covenants to MariaDB, and to all +other recipients of the licensed work to be provided by Licensor: + +1. To specify as the Change License the GPL Version 2.0 or any later version, + or a license that is compatible with GPL Version 2.0 or a later version, + where “compatible” means that software provided under the Change License can + be included in a program with software provided under GPL Version 2.0 or a + later version. Licensor may specify additional Change Licenses without + limitation. + +2. To either: (a) specify an additional grant of rights to use that does not + impose any additional restriction on the right granted in this License, as + the Additional Use Grant; or (b) insert the text “None”. + +3. To specify a Change Date. + +4. Not to modify this License in any other way. diff --git a/charts/incubator/csi-driver-smb/README.md b/charts/incubator/csi-driver-smb/README.md new file mode 100644 index 00000000000..83229a60265 --- /dev/null +++ b/charts/incubator/csi-driver-smb/README.md @@ -0,0 +1,27 @@ +# README + +## General Info + +TrueCharts can be installed as both *normal* Helm Charts or as Apps on TrueNAS SCALE. +However only installations using the TrueNAS SCALE Apps system are supported. + +For more information about this App, please check the docs on the TrueCharts [website](https://truecharts.org/charts/incubator/) + +**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/charts/issues/new/choose)** + + +## Support + +- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/manual/SCALE/guides/scale-intro). +- See the [Website](https://truecharts.org) +- Check our [Discord](https://discord.gg/tVsPTHWTtr) +- Open a [issue](https://github.com/truecharts/charts/issues/new/choose) + +--- + +## Sponsor TrueCharts + +TrueCharts can only exist due to the incredible effort of our staff. +Please consider making a [donation](https://truecharts.org/sponsor) or contributing back to the project any way you can! + +*All Rights Reserved - The TrueCharts Project* diff --git a/charts/incubator/csi-driver-smb/icon.png b/charts/incubator/csi-driver-smb/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..b5d6225972b01ca52b30cb130b3bb9408a4247a6 GIT binary patch literal 52747 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⁡2m>GqH0{=3V}!_O9L+ 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 literal 0 HcmV?d00001 diff --git a/charts/incubator/csi-driver-smb/questions.yaml b/charts/incubator/csi-driver-smb/questions.yaml new file mode 100644 index 00000000000..97cb04afcd6 --- /dev/null +++ b/charts/incubator/csi-driver-smb/questions.yaml @@ -0,0 +1,3 @@ +# Include{groups} +questions: +# Include{global} diff --git a/charts/incubator/csi-driver-smb/templates/NOTES.txt b/charts/incubator/csi-driver-smb/templates/NOTES.txt new file mode 100644 index 00000000000..efcb74cb772 --- /dev/null +++ b/charts/incubator/csi-driver-smb/templates/NOTES.txt @@ -0,0 +1 @@ +{{- include "tc.v1.common.lib.chart.notes" $ -}} diff --git a/charts/incubator/csi-driver-smb/templates/common.yaml b/charts/incubator/csi-driver-smb/templates/common.yaml new file mode 100644 index 00000000000..995efb03eb0 --- /dev/null +++ b/charts/incubator/csi-driver-smb/templates/common.yaml @@ -0,0 +1,5 @@ +{{/* Make sure all variables are set properly */}} +{{- include "tc.v1.common.loader.init" . }} + +{{/* Render the templates */}} +{{ include "tc.v1.common.loader.apply" . }} diff --git a/charts/incubator/csi-driver-smb/values.yaml b/charts/incubator/csi-driver-smb/values.yaml new file mode 100644 index 00000000000..8ab264d62f9 --- /dev/null +++ b/charts/incubator/csi-driver-smb/values.yaml @@ -0,0 +1,202 @@ +image: + repository: tccr.io/truecharts/alpine + pullPolicy: IfNotPresent + tag: latest@sha256:17cd77e25d3fa829d168caec4db7bb5b52ceeb935d8ca0d1180de6f615553dc4 + +service: + main: + enabled: false + ports: + main: + enabled: false + +workload: + main: + enabled: false + +portal: + open: + enabled: false + +operator: + register: true + +velero: + namespace: + labels: + # Enforce Pod Security Standards with Namespace Labels + # https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-namespace-labels/ + - key: pod-security.kubernetes.io/enforce + value: privileged + - key: pod-security.kubernetes.io/enforce-version + value: latest + - key: pod-security.kubernetes.io/audit + value: privileged + - key: pod-security.kubernetes.io/audit-version + value: latest + - key: pod-security.kubernetes.io/warn + value: privileged + - key: pod-security.kubernetes.io/warn-version + value: latest + + # Resource requests/limits to specify for the Velero deployment. + # https://velero.io/docs/v1.6/customize-installation/#customize-resource-requests-and-limits + resources: + limits: + cpu: 4000m + memory: 4Gi + + # Init containers to add to the Velero deployment's pod spec. At least one plugin provider image is required. + # If the value is a string then it is evaluated as a template. + initContainers: + - name: opeebs-velero-plugin + image: openebs/velero-plugin:1.9.0@sha256:f89855c12dd0a9bfd1afb9a75b051f6cb0452c4c073df9fc7fff4d7983eff341 + imagePullPolicy: IfNotPresent + volumeMounts: + - mountPath: /target + name: plugins + - name: velero-plugin-for-csi + image: velero/velero-plugin-for-csi:v0.6.0@sha256:fc07d1897a65d7728543b2fae9feddad087b5e7f45f45c3adaeda2ef4996fd50 + imagePullPolicy: IfNotPresent + volumeMounts: + - mountPath: /target + name: plugins + - name: velero-plugin-for-aws + image: velero/velero-plugin-for-aws:v1.8.0@sha256:466d4ee963de87b28e38098f5f91401bde514c7c2449ea6da4009be626a08f6c + imagePullPolicy: IfNotPresent + volumeMounts: + - mountPath: /target + name: plugins + + # Whether to deploy the node-agent daemonset. + deployNodeAgent: true + + nodeAgent: + podVolumePath: /var/lib/kubelet/pods + privileged: true + # Resource requests/limits to specify for the node-agent daemonset deployment. Optional. + # https://velero.io/docs/v1.6/customize-installation/#customize-resource-requests-and-limits + resources: + limits: + cpu: 2000m + memory: 2048Mi + + ## + ## Parameters for the `default` BackupStorageLocation and VolumeSnapshotLocation, + ## and additional server settings. + ## + configuration: + ## Please do not use, use .Values.backupStorageLocation instead + backupStorageLocation: [] + + ## Please do not use, use .Values.volumeSnapshotLocation instead + volumeSnapshotLocation: [] + + ## Please do not use, use .Values.schedules instead + schedules: {} + +manifestManager: + enabled: false + +# # Parameters for the BackupStorageLocation(s). Configure multiple by adding other element(s) to the backupStorageLocation slice. +# # See https://velero.io/docs/v1.6/api-types/backupstoragelocation/ +backupStorageLocationList: [] +# - name: name +# # name is the name of the backup storage location where backups should be stored. If a name is not provided, +# # a backup storage location will be created with the name "default". Optional. +backupStorageLocation: {} +# backupStorageLocation: +# name: +# # provider is the name for the backup storage location provider. +# provider: +# objectStorage: +# # bucket is the name of the bucket to store backups in. Required. +# bucket: +# # caCert defines a base64 encoded CA bundle to use when verifying TLS connections to the provider. Optional. +# caCert: +# # prefix is the directory under which all Velero data should be stored within the bucket. Optional. +# prefix: +# # validationFrequency defines how frequently Velero should validate the object storage. Optional. +# validationFrequency: +# # accessMode determines if velero can write to this backup storage location. Optional. +# # default to ReadWrite, ReadOnly is used during migrations and restores. +# accessMode: ReadWrite +# credential: +# # AWS/s3 credentials to be put into secret (mandatory if provider == aws/s3) +# aws: +# id: fdgsdfghsdfgh +# key: dfgdfhsdfgh +# # name of the secret used by this backupStorageLocation. +# name: +# # name of key that contains the secret data to be used. +# key: +# # Additional provider-specific configuration. See link above +# # for details of required/optional fields for your provider. +# config: {} +# # region: +# # s3ForcePathStyle: +# # s3Url: +# # kmsKeyId: +# # resourceGroup: +# # The ID of the subscription containing the storage account, if different from the cluster’s subscription. (Azure only) +# # subscriptionId: +# # storageAccount: +# # publicUrl: +# # Name of the GCP service account to use for this backup storage location. Specify the +# # service account here if you want to use workload identity instead of providing the key file.(GCP only) +# # serviceAccount: +# # Option to skip certificate validation or not if insecureSkipTLSVerify is set to be true, the client side should set the +# # flag. For Velero client Command like velero backup describe, velero backup logs needs to add the flag --insecure-skip-tls-verify +# # insecureSkipTLSVerify: + +# # Parameters for the VolumeSnapshotLocation(s). Configure multiple by adding other element(s) to the volumeSnapshotLocation slice. +# # See https://velero.io/docs/v1.6/api-types/volumesnapshotlocation/ +volumeSnapshotLocationList: [] +# # name is the |name of the volume snapshot location where snapshots are being taken. Required. +# - name: name +# ... +volumeSnapshotLocation: {} +# volumeSnapshotLocation: +# name: +# enabled: false +# # provider is the name for the volume snapshot provider. +# provider: +# credential: +# # AWS/s3 credentials to be put into secret (mandatory if provider == aws/s3) +# aws: +# id: fdgsdfghsdfgh +# key: dfgdfhsdfgh +# # name of the secret used by this volumeSnapshotLocation. (Optional/Advanced) +# name: +# # name of key that contains the secret data to be used. (Optional/Advanced) +# key: +# # Additional provider-specific configuration. See link above +# # for details of required/optional fields for your provider. +# config: {} +# # region: +# # apiTimeout: +# # resourceGroup: +# # The ID of the subscription where volume snapshots should be stored, if different from the cluster’s subscription. If specified, also requires `configuration.volumeSnapshotLocation.config.resourceGroup`to be set. (Azure only) +# # subscriptionId: +# # incremental: +# # snapshotLocation: +# # project: + +# Backup schedules to create. +schedulesList: [] +schedules: {} +# Eg: +# schedules: +# mybackup: +# disabled: false +# labels: +# myenv: foo +# annotations: +# myenv: foo +# schedule: "0 0 * * *" +# useOwnerReferencesInBackup: false +# template: +# ttl: "240h" +# storageLocation: default +# includedNamespaces: +# - foo