categories:
- Database
- NoSQL
questions:
- variable: defaultImage
  default: "true"
  description: "Use default Docker images"
  label: Use Default Images
  type: boolean
  show_subquestion_if: false
  group: "Container Images"
  subquestions:
  - variable: image.repository
    default: "mongo"
    description: "MongoDB image name"
    type: string
    label: MongoDB Image Name
  - variable: image.tag
    default: "3.6.5"
    description: "MongoDB image tag"
    type: string
    label: Image Tag
- variable: auth.enabled
  default: false
  description: "Enabling access control on a MongoDB deployment enforces authentication, requiring users to identify themselves"
  type: boolean
  label: Enable Auth
  required: true
  show_subquestion_if: true
  group: "MongoDB Settings"
  subquestions:
  - variable: auth.rootUsername
    default: "root"
    description: "MongoDB root username"
    type: string
    label: MongoDB Username
    required: true
  - variable: auth.rootPassword
    default: ""
    description: "MongoDB root password, defaults to a random 10-character alphanumeric string if not set"
    type: password
    label: MongoDB Password
- variable: service.type
  default: "NodePort"
  description: "MongoDB K8s Service type"
  type: enum
  group: "MongoDB Settings"
  options:
    - "ClusterIP"
    - "NodePort"
  required: true
  label: MongoDB Service Type
  show_subquestion_if: "NodePort"
  subquestions:
  - variable: service.nodePort
    default: ""
    description: "NodePort port number(to set explicitly, choose port between 30000-32767)"
    type: int
    min: 30000
    max: 32767
    label: Service NodePort number
- variable: persistence.enabled
  default: "false"
  description: "Enable persistent volume for MongoDB"
  type: boolean
  required: true
  label: MongoDB Persistent Volume Enabled
  show_subquestion_if: true
  group: "Persistent Volume"
  subquestions:
  - variable: persistence.size
    default: "8Gi"
    description: "MongoDB Persistent Volume Size"
    type: string
    label: MongoDB Volume Size
    required: true
  - variable: persistence.storageClass
    default: ""
    description: "If undefined or set to null, using the default storageClass. Defaults to null."
    type: storageclass
    label: Storage Class for MongoDB
