groups: - name: Syncthing Configuration description: Configure Syncthing - name: User and Group Configuration description: Configure User and Group for Syncthing - name: Network Configuration description: Configure Network for Syncthing - name: Storage Configuration description: Configure Storage for Syncthing - name: Resources Configuration description: Configure Resources for Syncthing 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: TZ group: Syncthing Configuration label: Timezone schema: type: string default: Etc/UTC required: true $ref: - definitions/timezone - variable: syncthingID label: "" group: User and Group Configuration schema: type: dict attrs: - variable: user label: User ID description: The user id that Syncthing files will be owned by. schema: type: int min: 568 default: 568 immutable: true required: true - variable: group label: Group ID description: The group id that Syncthing files will be owned by. schema: type: int min: 568 default: 568 immutable: true required: true - variable: syncthingNetwork label: "" group: Network Configuration schema: type: dict attrs: - variable: hostNetwork label: Host Network description: | Bind to the host network.

If this is disabled, you will need to add your local networks in CIDR format to the Syncthing WebUI.
In the Syncthing WebUI, go to Advanced Settings > Options > Always Local Nets
Separate each CIDR network with a comma.
Example: 192.168.0.0/24,192.168.1.0/24 schema: type: boolean default: true - variable: webPort label: Web Port description: The port for the Syncthing WebUI. schema: type: int default: 31000 min: 9000 max: 65535 required: true - variable: tcpPort label: TCP Port (File Transfers) description: The TCP port for Syncthing transfers. schema: type: int show_if: [["hostNetwork", "=", false]] default: 22000 min: 9000 max: 65535 required: true - variable: quicPort label: QUIC (UDP) Port (File Transfers) description: The QUIC (UDP) port for Syncthing transfers. schema: type: int show_if: [["hostNetwork", "=", false]] default: 22000 min: 9000 max: 65535 required: true - variable: certificateID label: Certificate description: The certificate to use for Syncthing GUI. schema: type: int "null": true $ref: - "definitions/certificate" - variable: syncthingStorage label: "" group: Storage Configuration schema: type: dict attrs: - variable: home label: Syncthing Home Storage description: The path to store Syncthing Home Directory. 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 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: "home" $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 Syncthing. schema: type: list required: true empty: false default: - type: "hostPath" mountPath: "/data1" hostPath": "" items: - variable: storageEntry label: Storage Entry schema: type: dict attrs: - variable: type label: Type description: | Host Path: Is a path that already exists on the system. schema: type: string required: true default: "hostPath" enum: - value: "hostPath" description: Host Path (Path that already exists on 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: 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: 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: mountOptions label: Mount Options description: Mount options for the SMB share. schema: type: list show_if: [["type", "=", "smb-pv-pvc"]] items: - variable: mountOption label: Mount Option schema: type: dict attrs: - variable: key label: Key schema: type: string required: true - variable: value label: Value schema: type: string - 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 Syncthing. 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 Syncthing. 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