groups: - name: Briefkasten Configuration description: Configure Briefkasten - name: Network Configuration description: Configure Network for Briefkasten - name: Storage Configuration description: Configure Storage for Briefkasten - name: Resources Configuration description: Configure Resources for Briefkasten portals: web_portal: protocols: - "$kubernetes-resource_configmap_portal_protocol" host: - "$kubernetes-resource_configmap_portal_host" ports: - "$kubernetes-resource_configmap_portal_port" path: "$kubernetes-resource_configmap_portal_path" questions: - variable: briefkastenConfig label: "" group: Briefkasten Configuration schema: type: dict attrs: - variable: url label: BaseURL description: | The URL that Briefkasten will be accessible from.
Example:
http://server.ip:30080
https://Briefkasten.example.com schema: type: uri default: "" required: true - variable: smtp label: SMTP Auth Provider description: Configure SMTP for Briefkasten. schema: type: dict attrs: - variable: enabled label: Enabled description: Enable SMTP for auth. schema: type: boolean default: false show_subquestions_if: true subquestions: - variable: server label: SMTP Server description: The SMTP server to use. schema: type: string default: "" required: true - variable: from label: SMTP From description: The SMTP from address to use. schema: type: string default: "" required: true - variable: github label: GitHub Auth Provider description: Configure GitHub for Briefkasten. schema: type: dict attrs: - variable: enabled label: Enabled description: Enable GitHub for auth. schema: type: boolean default: false show_subquestions_if: true subquestions: - variable: id label: GitHub Client ID description: The GitHub Client ID. schema: type: string default: "" required: true - variable: secret label: GitHub Client Secret description: The GitHub Client Secret. schema: type: string default: "" required: true - variable: google label: Google Auth Provider description: Configure Google for Briefkasten. schema: type: dict attrs: - variable: enabled label: Enabled description: Enable Google for auth. schema: type: boolean default: false show_subquestions_if: true subquestions: - variable: id label: Google Client ID description: The Google Client ID. schema: type: string default: "" required: true - variable: secret label: Google Client Secret description: The Google Client Secret. schema: type: string default: "" required: true - variable: keycloak label: Keycloak Auth Provider description: Configure Keycloak for Briefkasten. schema: type: dict attrs: - variable: enabled label: Enabled description: Enable Keycloak for auth. schema: type: boolean default: false show_subquestions_if: true subquestions: - variable: name label: Keycloak Name description: The Keycloak Name. schema: type: string default: "" required: true - variable: id label: Keycloak Client ID description: The Keycloak Client ID. schema: type: string default: "" required: true - variable: secret label: Keycloak Client Secret description: The Keycloak Client Secret. schema: type: string default: "" required: true - variable: issuer label: Keycloak Issuer description: The Keycloak Issuer. schema: type: string default: "" required: true - variable: authentik label: Authentik Auth Provider description: Configure Authentik for Briefkasten. schema: type: dict attrs: - variable: enabled label: Enabled description: Enable Authentik for auth. schema: type: boolean default: false show_subquestions_if: true subquestions: - variable: name label: Authentik Name description: The Authentik Name. schema: type: string default: "" required: true - variable: id label: Authentik Client ID description: The Authentik Client ID. schema: type: string default: "" required: true - variable: secret label: Authentik Client Secret description: The Authentik Client Secret. schema: type: string default: "" required: true - variable: issuer label: Authentik Issuer description: The Authentik Issuer. schema: type: string default: "" required: true - variable: additionalEnvs label: Additional Environment Variables description: Configure additional environment variables for Briefkasten. schema: type: list default: [] items: - variable: env label: Environment Variable schema: type: dict attrs: - variable: name label: Name schema: type: string required: true - variable: value label: Value schema: type: string required: true - variable: briefkastenNetwork label: "" group: Network Configuration schema: type: dict attrs: - variable: webPort label: Web Port description: The port for the Briefkasten Web UI. schema: type: int default: 30080 min: 9000 max: 65535 required: true - variable: hostNetwork label: Host Network description: | Bind to the host network. It's recommended to keep this disabled.
schema: type: boolean default: false - variable: briefkastenStorage label: "" group: Storage Configuration schema: type: dict attrs: - variable: avatars label: Briefkasten Avatars Storage description: The path to store Briefkasten Avatars. schema: type: dict attrs: - variable: type label: Type description: | ixVolume: Is dataset created automatically by the system.
Host Path: Is a path that already exists on the system. schema: type: string required: true immutable: true default: "ixVolume" enum: - value: "hostPath" description: Host Path (Path that already exists on the system) - value: "ixVolume" description: ixVolume (Dataset created automatically by the system) - variable: datasetName label: Dataset Name schema: type: string show_if: [["type", "=", "ixVolume"]] required: true hidden: true immutable: true default: "avatars" $ref: - "normalize/ixVolume" - variable: hostPath label: Host Path schema: type: hostpath show_if: [["type", "=", "hostPath"]] immutable: true required: true - variable: backgroundImages label: Briefkasten Background Images Storage description: The path to store Briefkasten Background Images. schema: type: dict attrs: - variable: type label: Type description: | ixVolume: Is dataset created automatically by the system.
Host Path: Is a path that already exists on the system. schema: type: string required: true immutable: true default: "ixVolume" enum: - value: "hostPath" description: Host Path (Path that already exists on the system) - value: "ixVolume" description: ixVolume (Dataset created automatically by the system) - variable: datasetName label: Dataset Name schema: type: string show_if: [["type", "=", "ixVolume"]] required: true hidden: true immutable: true default: "bg-img" $ref: - "normalize/ixVolume" - variable: hostPath label: Host Path schema: type: hostpath show_if: [["type", "=", "hostPath"]] immutable: true required: true - variable: attachments label: Briefkasten Attachments Storage description: The path to store Briefkasten Attachments. schema: type: dict attrs: - variable: type label: Type description: | ixVolume: Is dataset created automatically by the system.
Host Path: Is a path that already exists on the system. schema: type: string required: true immutable: true default: "ixVolume" enum: - value: "hostPath" description: Host Path (Path that already exists on the system) - value: "ixVolume" description: ixVolume (Dataset created automatically by the system) - variable: datasetName label: Dataset Name schema: type: string show_if: [["type", "=", "ixVolume"]] required: true hidden: true immutable: true default: "attachments" $ref: - "normalize/ixVolume" - variable: hostPath label: Host Path schema: type: hostpath show_if: [["type", "=", "hostPath"]] immutable: true required: true - variable: pgData label: Postgres Data Storage description: The path to store Postgres Data. schema: type: dict attrs: - variable: type label: Type description: | ixVolume: Is dataset created automatically by the system.
Host Path: Is a path that already exists on the system. schema: type: string required: true immutable: true default: "ixVolume" enum: - value: "hostPath" description: Host Path (Path that already exists on the system) - value: "ixVolume" description: ixVolume (Dataset created automatically by the system) - variable: datasetName label: Dataset Name schema: type: string show_if: [["type", "=", "ixVolume"]] required: true hidden: true immutable: true default: "pgData" $ref: - "normalize/ixVolume" - variable: hostPath label: Host Path schema: type: hostpath show_if: [["type", "=", "hostPath"]] immutable: true required: true - variable: pgBackup label: Postgres Backup Storage description: The path to store Postgres Backup. schema: type: dict attrs: - variable: type label: Type description: | ixVolume: Is dataset created automatically by the system.
Host Path: Is a path that already exists on the system. schema: type: string required: true immutable: true default: "ixVolume" enum: - value: "hostPath" description: Host Path (Path that already exists on the system) - value: "ixVolume" description: ixVolume (Dataset created automatically by the system) - variable: datasetName label: Dataset Name schema: type: string show_if: [["type", "=", "ixVolume"]] required: true hidden: true immutable: true default: "pgBackup" $ref: - "normalize/ixVolume" - variable: hostPath label: Host Path schema: type: hostpath show_if: [["type", "=", "hostPath"]] immutable: true required: true - variable: additionalStorages label: Additional Storage description: Additional storage for Briefkasten. schema: type: list default: [] items: - variable: storageEntry label: Storage Entry schema: type: dict attrs: - variable: type label: Type description: | ixVolume: Is dataset created automatically by the system.
Host Path: Is a path that already exists on the system.
SMB Share: Is a SMB share that is mounted to a persistent volume claim. schema: type: string required: true default: "ixVolume" immutable: true enum: - value: "hostPath" description: Host Path (Path that already exists on the system) - value: "ixVolume" description: ixVolume (Dataset created automatically by the system) - value: "smb-pv-pvc" description: SMB Share (Mounts a persistent volume claim to a SMB share) - variable: mountPath label: Mount Path description: The path inside the container to mount the storage. schema: type: path required: true - variable: hostPath label: Host Path description: The host path to use for storage. schema: type: hostpath show_if: [["type", "=", "hostPath"]] required: true - variable: datasetName label: Dataset Name description: The name of the dataset to use for storage. schema: type: string show_if: [["type", "=", "ixVolume"]] required: true immutable: true default: "storage_entry" $ref: - "normalize/ixVolume" - variable: server label: Server description: The server for the SMB share. schema: type: string show_if: [["type", "=", "smb-pv-pvc"]] required: true - variable: share label: Share description: The share name for the SMB share. schema: type: string show_if: [["type", "=", "smb-pv-pvc"]] required: true - variable: domain label: Domain (Optional) description: The domain for the SMB share. schema: type: string show_if: [["type", "=", "smb-pv-pvc"]] - variable: username label: Username description: The username for the SMB share. schema: type: string show_if: [["type", "=", "smb-pv-pvc"]] required: true - variable: password label: Password description: The password for the SMB share. schema: type: string show_if: [["type", "=", "smb-pv-pvc"]] required: true private: true - variable: size label: Size (in Gi) description: The size of the volume quota. schema: type: int show_if: [["type", "=", "smb-pv-pvc"]] required: true min: 1 default: 1 - variable: resources group: Resources Configuration label: "" schema: type: dict attrs: - variable: limits label: Limits schema: type: dict attrs: - variable: cpu label: CPU description: CPU limit for Briefkasten. schema: type: string max_length: 6 valid_chars: '^(0\.[1-9]|[1-9][0-9]*)(\.[0-9]|m?)$' valid_chars_error: | Valid CPU limit formats are
- Plain Integer - eg. 1
- Float - eg. 0.5
- Milicpu - eg. 500m default: "4000m" required: true - variable: memory label: Memory description: Memory limit for Briefkasten. schema: type: string max_length: 12 valid_chars: '^[1-9][0-9]*([EPTGMK]i?|e[0-9]+)?$' valid_chars_error: | Valid Memory limit formats are
- Suffixed with E/P/T/G/M/K - eg. 1G
- Suffixed with Ei/Pi/Ti/Gi/Mi/Ki - eg. 1Gi
- Plain Integer in bytes - eg. 1024
- Exponent - eg. 134e6 default: "8Gi" required: true