groups: - name: "Container Images" description: "Image to be used for container" - name: "Workload Configuration" description: "Configure workload deployment" - name: "Storage" description: "Configure Storage for Nextcloud" - name: "Minio Configuration" description: "Configure Minio credentials" portals: web_portal: protocols: - "http" host: - "$node_ip" ports: - "$variable-service.nodePort" questions: # Image related - variable: image description: "Docker Image Details" label: "Docker Image" group: "Container Images" schema: type: dict required: true attrs: - variable: repository description: "Docker image repository" label: "Image repository" schema: type: string default: "minio/minio" required: true - variable: tag description: "Tag to use for specified image" label: "Image Tag" schema: type: string default: "RELEASE.2020-11-19T23-48-16Z" - variable: pullPolicy description: "Docker Image Pull Policy" label: "Image Pull Policy" schema: type: string default: "IfNotPresent" enum: - value: "IfNotPresent" description: "Only pull image if not present on host" - value: "Always" description: "Always pull image even if present on host" - value: "Never" description: "Never pull image even if it's not present on host" - variable: updateStrategy label: "Minio update strategy" group: "Workload Configuration" schema: type: string default: "RollingUpdate" enum: - value: "RollingUpdate" description: "Create new pods and then kill old ones" - value: "Recreate" description: "Kill existing pods before creating new ones" - variable: extraArgs label: "Minio Extra Arguments" group: "Minio Configuration" schema: type: list default: [] items: - variable: arg label: "Argument" schema: type: string - variable: accessKey label: "Access Key" group: "Minio Configuration" description: "Enter the S3 access ID" schema: type: string private: true required: true min_length: 5 max_length: 20 - variable: secretKey label: "Secret Key" group: "Minio Configuration" description: "Enter the S3 secret access key" schema: type: string private: true required: true min_length: 8 max_length: 40 - variable: environmentVariables label: "Minio image environment" group: "Minio Configuration" schema: type: list default: [] items: - variable: environmentVariable label: "Environment Variable" schema: type: dict attrs: - variable: name label: "Name" schema: type: string - variable: value label: "Value" schema: type: string - variable: service description: "Minio Service Configuration" label: "Minio Service Configuration" group: "Minio Configuration" schema: type: dict required: true attrs: - variable: nodePort label: "Node Port to use for Minio" schema: type: int min: 9000 max: 65535 default: 9000 required: true - variable: certificate description: "Minio Certificate" label: "Minio Certificate" group: "Minio Configuration" schema: type: int $ref: - "definitions/certificate" - variable: appVolumeMounts label: "Minio Storage" group: "Storage" schema: type: dict attrs: - variable: export label: "Data Volume" schema: type: dict attrs: - variable: datasetName label: "Minio Data Volume Name" schema: type: string hidden: true $ref: - "normalize/ixVolume" show_if: [["hostPathEnabled", "=", false]] default: "ix-minio" editable: false - variable: mountPath label: "Minio Data Mount Path" description: "Path where the volume will be mounted inside the pod" schema: type: path hidden: true editable: false default: "/export" - variable: hostPathEnabled label: "Enable Host Path for Minio Data Volume" schema: type: boolean default: false show_subquestions_if: true subquestions: - variable: hostPath label: "Host Path for Minio Data Volume" schema: type: hostpath required: true