TrueChartsClone/templates/questions/persistence/persistenceList.yaml

351 lines
14 KiB
YAML

- variable: persistenceList
label: Additional App Storage
group: Persistence
schema:
type: list
default: []
items:
- variable: persistenceListEntry
label: Custom Storage
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enable the storage
schema:
type: boolean
default: true
hidden: true
- variable: type
label: Type of Storage
description: Sets the persistence type, Anything other than PVC could break rollback!
schema:
type: string
default: hostPath
enum:
- value: pvc
description: PVC
- value: hostPath
description: Host Path
- value: emptyDir
description: emptyDir
- value: nfs
description: NFS Share
- variable: server
label: NFS Server
schema:
show_if: [["type", "=", "nfs"]]
type: string
default: ""
- variable: path
label: Path on NFS Server
schema:
show_if: [["type", "=", "nfs"]]
type: string
default: ""
- variable: iscsi
label: iSCSI Options
schema:
show_if: [["type", "=", "iscsi"]]
type: dict
additional_attrs: true
attrs:
- variable: targetPortal
label: targetPortal
schema:
type: string
required: true
default: ""
- variable: iqn
label: iqn
schema:
type: string
required: true
default: ""
- variable: lun
label: lun
schema:
type: int
default: 0
- variable: authSession
label: authSession
schema:
type: dict
additional_attrs: true
attrs:
- variable: username
label: username
schema:
type: string
default: ""
- variable: password
label: password
schema:
type: string
default: ""
- variable: usernameInitiator
label: usernameInitiator
schema:
type: string
default: ""
- variable: passwordInitiator
label: passwordInitiator
schema:
type: string
default: ""
- variable: authDiscovery
label: authDiscovery
schema:
type: dict
additional_attrs: true
attrs:
- variable: username
label: username
schema:
type: string
default: ""
- variable: password
label: password
schema:
type: string
default: ""
- variable: usernameInitiator
label: usernameInitiator
schema:
type: string
default: ""
- variable: passwordInitiator
label: passwordInitiator
schema:
type: string
default: ""
- variable: autoPermissions
label: Automatic Permissions Configuration
description: Automatically set permissions
schema:
show_if: [["type", "!=", "pvc"]]
type: dict
additional_attrs: true
attrs:
- variable: enabled
label: enabled
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: chown
label: Run CHOWN
description: |
It will run CHOWN on the path with the given fsGroup
schema:
type: boolean
default: false
- variable: chmod
label: Run CHMOD
description: |
It will run CHMOD on the path with the given value</br>
Format should be 3 digits, e.g. 770
schema:
type: string
valid_chars: '[0-9]{3}'
default: ""
- variable: recursive
label: Recursive
description: |
It will run CHOWN and CHMOD recursively
schema:
type: boolean
default: false
- variable: readOnly
label: Read Only
schema:
type: boolean
default: false
- variable: hostPath
label: Host Path
description: Path inside the container the storage is mounted
schema:
show_if: [["type", "=", "hostPath"]]
type: hostpath
- variable: mountPath
label: Mount Path
description: Path inside the container the storage is mounted
schema:
type: string
default: ""
required: true
valid_chars: '^\/([a-zA-Z0-9._-]+(\s?[a-zA-Z0-9._-]+|\/?))+$'
- variable: medium
label: EmptyDir Medium
schema:
show_if: [["type", "=", "emptyDir"]]
type: string
default: ""
enum:
- value: ""
description: Default
- value: Memory
description: Memory
- variable: size
label: Size Quotum of Storage
schema:
show_if: [["type", "=", "pvc"]]
type: string
default: 256Gi
- variable: storageClass
label: 'storageClass (Advanced)'
description: 'sets the storageClass to something other than iX default. Only for advanced usecases!'
schema:
show_if: [["type", "=", "pvc"]]
type: string
default: ""
- variable: volsync
label: 'VolSync (Experimental)'
description: Backup, Restore and Synchronise PVC storage
schema:
show_if: [["type", "=", "pvc"]]
type: list
default: []
items:
- variable: VolSyncEntry
label: VolSync Configuration
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: Name
description: "Name of backup configuration"
schema:
type: string
default: ""
required: true
- variable: type
label: Type VolSync/Backup
description: Sets the VolSync Type
schema:
type: string
default: "restic"
enum:
- value: restic
description: Restic
- variable: credentials
label: Credentials
description: "Name of credentials in the credentials section"
schema:
type: string
default: ""
required: true
- variable: dest
label: VolSync Destination (Restore)
description: VolSYnc Destination is the location where data is the reciever and configures recovery of backups
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enable
schema:
type: boolean
default: true
- variable: src
label: VolSync Source (Backup)
description: VolSYnc Source is the location where data is the sender and creates backups to storage
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enable
schema:
type: boolean
default: true
- variable: static
label: 'Static Fixed PVC Bindings (Experimental)'
description: Link a PVC to a specific storage location
schema:
show_if: [["type", "=", "pvc"]]
type: dict
additional_attrs: true
attrs:
- variable: mode
label: mode
description: |
disabled: use normal dynamic PVCs
smb: connect to an SMB share
nfs: connect to an NFS share
schema:
type: string
default: "disabled"
enum:
- value: "disabled"
description: disabled
- value: smb
description: smb
- value: nfs
description: nfs
- variable: server
label: Server
description: server to connect to
schema:
type: string
show_if: [["mode", "!=", "disabled"]]
default: "myserver"
- variable: share
label: Share
description: share to connect to
schema:
type: string
show_if: [["mode", "!=", "disabled"]]
default: "/myshare"
- variable: user
label: User
description: connecting user
schema:
type: string
show_if: [["mode", "=", "smb"]]
default: "myuser"
- variable: domain
label: Domain
description: user domain
schema:
type: string
show_if: [["mode", "=", "smb"]]
default: ""
- variable: password
label: Password
description: connecting password
schema:
type: string
show_if: [["mode", "=", "smb"]]
default: ""
- variable: volumeSnapshots
label: 'Volume Snapshots (Experimental)'
description: Add an entry to the list to force creation of a volumeSnapshot of this PVC
schema:
show_if: [["type", "=", "pvc"]]
type: list
default: []
items:
- variable: volumeSnapshotEntry
label: Custom volumeSnapshot
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: Name
description: 'WARNING: renaming this, means deletion of the snapshot with the old name!'
schema:
type: string
default: "mysnapshot"
required: true
- variable: volumeSnapshotClassName
label: 'volumeSnapshot Class Name (Advanced)'
description: For use with PVCs using a non-default storageClass
schema:
type: string
default: ""