# Include{groups}
portals:
  open:
# Include{portalLink}
questions:
# Include{global}
# Include{workload}
# Include{workloadDeployment}

# Include{replicas1}
# Include{podSpec}
# Include{containerMain}
# Include{containerBasic}
# Include{containerAdvanced}

  - variable: secretEnv
    group: "App Configuration"
    label: "Image Secrets"
    schema:
      additional_attrs: true
      type: dict
      attrs:
        - variable: GOKAPI_USERNAME
          label: "GOKAPI_USERNAME"
          schema:
            type: string
            required: true
            default: ""
        - variable: GOKAPI_PASSWORD
          label: "GOKAPI_PASSWORD"
          schema:
            type: string
            required: true
            private: true
            default: ""
  - variable: env
    group: "App Configuration"
    label: "Image Environment"
    schema:
      additional_attrs: true
      type: dict
      attrs:
        - variable: GOKAPI_LENGTH_ID
          label: "GOKAPI_LENGTH_ID"
          description: "Sets the length of the download IDs."
          schema:
            type: int
            default: 15
        - variable: GOKAPI_MAX_FILESIZE
          label: "GOKAPI_MAX_FILESIZE"
          description: "Sets the maximum allowed file size in MB"
          schema:
            type: int
            default: 102400
        - variable: GOKAPI_MAX_MEMORY_UPLOAD
          label: "GOKAPI_MAX_MEMORY_UPLOAD"
          description: "Sets the amount of RAM in MB that can be allocated for an upload. Any upload with a size greater than that will be written to a temporary file"
          schema:
            type: int
            default: 20
        - variable: awsconfig
          label: "Configure AWS Storage"
          description: "Sets the amount of RAM in MB that can be allocated for an upload. Any upload with a size greater than that will be written to a temporary file"
          schema:
            type: boolean
            default: false
            show_subquestions_if: true
            subquestions:
              - variable: GOKAPI_AWS_BUCKET
                label: "GOKAPI_AWS_BUCKET"
                description: "Sets the bucket name"
                schema:
                  type: string
                  default: ""
              - variable: GOKAPI_AWS_REGION
                label: "GOKAPI_AWS_REGION"
                description: "Sets the region name"
                schema:
                  type: string
                  default: ""
              - variable: GOKAPI_AWS_KEY
                label: "GOKAPI_AWS_KEY"
                description: "Sets the API key"
                schema:
                  type: string
                  private: true
                  default: ""
              - variable: GOKAPI_AWS_KEY_SECRET
                label: "GOKAPI_AWS_KEY_SECRET"
                description: "Sets the API key secret"
                schema:
                  type: string
                  private: true
                  default: ""
              - variable: GOKAPI_AWS_ENDPOINT
                label: "GOKAPI_AWS_ENDPOINT"
                description: "Sets the endpoint"
                schema:
                  type: string
                  default: ""
# Include{containerConfig}
# Include{serviceRoot}
        - variable: main
          label: "Main Service"
          description: "The Primary service on which the healthcheck runs, often the webUI"
          schema:
            additional_attrs: true
            type: dict
            attrs:
# Include{serviceSelectorLoadBalancer}
# Include{serviceSelectorExtras}
                    - variable: main
                      label: "Main Service Port Configuration"
                      schema:
                        additional_attrs: true
                        type: dict
                        attrs:
                          - variable: port
                            label: "Port"
                            description: "This port exposes the container port on the service"
                            schema:
                              type: int
                              default: 53842
                              required: true
# Include{serviceExpertRoot}
            default: false
# Include{serviceExpert}
# Include{serviceList}
# Include{persistenceRoot}
        - variable: config
          label: "config Storage"
          schema:
            additional_attrs: true
            type: dict
            attrs:
# Include{persistenceBasic}
        - variable: data
          label: "data Storage"
          schema:
            additional_attrs: true
            type: dict
            attrs:
# Include{persistenceBasic}
# Include{persistenceList}
# Include{ingressRoot}
        - variable: main
          label: "Main Ingress"
          schema:
            additional_attrs: true
            type: dict
            attrs:
# Include{ingressDefault}
# Include{ingressTLS}
# Include{ingressTraefik}
# Include{ingressList}
# Include{securityContextRoot}

              - variable: runAsUser
                label: "runAsUser"
                description: "The UserID of the user running the application"
                schema:
                  type: int
                  default: 568
              - variable: runAsGroup
                label: "runAsGroup"
                description: "The groupID of the user running the application"
                schema:
                  type: int
                  default: 568
# Include{securityContextContainer}
# Include{securityContextAdvanced}
# Include{securityContextPod}
              - variable: fsGroup
                label: "fsGroup"
                description: "The group that should own ALL storage."
                schema:
                  type: int
                  default: 568

# Include{resources}
# Include{advanced}
# Include{addons}
# Include{codeserver}
# Include{netshoot}
# Include{vpn}
# Include{documentation}
