- description: Which image would you like to use for your service
  jsonKey: image
  label: Application Image
  sort: 1
  uiType: ImageInput
  validate:
    immutable: false
    required: true
- description: Specifies the attributes of the memory resource required for the container.
  jsonKey: memory
  label: Memory Request&Limit
  sort: 3
  uiType: MemoryNumber
  validate:
    immutable: false
- description: Number of CPU units for the service, like `0.5` (0.5 CPU core), `1`
    (1 CPU core)
  jsonKey: cpu
  label: CPU Request&Limit
  sort: 5
  uiType: CPUNumber
  validate:
    immutable: false
- description: Specify image pull policy for your service
  jsonKey: imagePullPolicy
  label: Image Pull Policy
  sort: 7
  uiType: Select
  validate:
    immutable: false
    options:
    - label: IfNotPresent
      value: IfNotPresent
    - label: Always
      value: Always
    - label: Never
      value: Never
- description: Commands to run in the container
  jsonKey: cmd
  label: Container Start Command
  sort: 9
  uiType: Strings
  validate:
    immutable: false
- description: Define arguments by using environment variables
  jsonKey: env
  label: Environments
  sort: 10
  subParameterGroupOption:
  - keys:
    - name
    - value
    label: Add By Value
  - keys:
    - name
    - valueFrom
    label: Add By Secret
  subParameters:
  - description: Environment variable name
    jsonKey: name
    label: Name
    sort: 100
    uiType: Input
    validate:
      immutable: false
      required: true
  - description: The value of the environment variable
    jsonKey: value
    label: Value
    sort: 101
    uiType: Input
    validate:
      immutable: false
  - description: Specifies a source the value of this var should come from
    jsonKey: valueFrom
    label: Secret Selector
    sort: 102
    subParameters:
    - description: Selects a key of a secret in the pod's namespace
      jsonKey: secretKeyRef
      label: SecretKeyRef
      sort: 100
      subParameters:
      - description: The name of the secret in the pod's namespace to select from
        jsonKey: name
        label: Secret Name
        sort: 1
        uiType: SecretSelect
        validate:
          immutable: false
          required: true
      - description: The key of the secret to select from. Must be a valid secret
          key
        jsonKey: key
        label: Secret Key
        sort: 3
        uiType: SecretKeySelect
        validate:
          immutable: false
          required: true
      uiType: Ignore
      validate:
        immutable: false
        required: true
    uiType: InnerGroup
    validate:
      immutable: false
  uiType: Structs
  validate:
    immutable: false
- description: Instructions for assessing whether the container is in a suitable state
    to serve traffic.
  jsonKey: readinessProbe
  label: ReadinessProbe
  sort: 13
  subParameters:
  - description: Number of consecutive failures required to determine the container
      is not alive (liveness probe) or not ready (readiness probe).
    jsonKey: failureThreshold
    label: FailureThreshold
    sort: 100
    uiType: Number
    validate:
      defaultValue: 3
      immutable: false
      required: true
  - description: Number of seconds after the container is started before the first
      probe is initiated.
    jsonKey: initialDelaySeconds
    label: InitialDelaySeconds
    sort: 101
    uiType: Number
    validate:
      defaultValue: 0
      immutable: false
      required: true
  - description: How often, in seconds, to execute the probe.
    jsonKey: periodSeconds
    label: PeriodSeconds
    sort: 102
    uiType: Number
    validate:
      defaultValue: 10
      immutable: false
      required: true
  - description: Minimum consecutive successes for the probe to be considered successful
      after having failed.
    jsonKey: successThreshold
    label: SuccessThreshold
    sort: 103
    uiType: Number
    validate:
      defaultValue: 1
      immutable: false
      required: true
  - description: Number of seconds after which the probe times out.
    jsonKey: timeoutSeconds
    label: TimeoutSeconds
    sort: 104
    uiType: Number
    validate:
      defaultValue: 1
      immutable: false
      required: true
  - description: Instructions for assessing container health by executing a command.
      Either this attribute or the httpGet attribute or the tcpSocket attribute MUST
      be specified. This attribute is mutually exclusive with both the httpGet attribute
      and the tcpSocket attribute.
    jsonKey: exec
    label: Exec
    sort: 105
    subParameters:
    - description: A command to be executed inside the container to assess its health.
        Each space delimited token of the command is a separate array element. Commands
        exiting 0 are considered to be successful probes, whilst all other exit codes
        are considered failures.
      jsonKey: command
      label: Command
      sort: 100
      uiType: Strings
      validate:
        immutable: false
        required: true
    uiType: Group
    validate:
      immutable: false
  - description: Instructions for assessing container health by probing a TCP socket.
      Either this attribute or the exec attribute or the httpGet attribute MUST be
      specified. This attribute is mutually exclusive with both the exec attribute
      and the httpGet attribute.
    jsonKey: tcpSocket
    label: TcpSocket
    sort: 106
    subParameters:
    - description: The TCP socket within the container that should be probed to assess
        container health.
      jsonKey: port
      label: Port
      sort: 100
      uiType: Number
      validate:
        immutable: false
        required: true
    uiType: Group
    validate:
      immutable: false
  - description: Instructions for assessing container health by executing an HTTP
      GET request. Either this attribute or the exec attribute or the tcpSocket attribute
      MUST be specified. This attribute is mutually exclusive with both the exec attribute
      and the tcpSocket attribute.
    jsonKey: httpGet
    label: HttpGet
    sort: 107
    subParameters:
    - description: The endpoint, relative to the port, to which the HTTP GET request
        should be directed.
      jsonKey: path
      label: Path
      sort: 100
      uiType: Input
      validate:
        immutable: false
        required: true
    - description: The TCP socket within the container to which the HTTP GET request
        should be directed.
      jsonKey: port
      label: Port
      sort: 101
      uiType: Number
      validate:
        immutable: false
        required: true
    - description: ""
      jsonKey: httpHeaders
      label: HttpHeaders
      sort: 102
      subParameters:
      - description: ""
        jsonKey: name
        label: Name
        sort: 100
        uiType: Input
        validate:
          immutable: false
          required: true
      - description: ""
        jsonKey: value
        label: Value
        sort: 101
        uiType: Input
        validate:
          immutable: false
          required: true
      uiType: Structs
      validate:
        immutable: false
    uiType: Group
    validate:
      immutable: false
  uiType: Group
  validate:
    immutable: false
- description: Instructions for assessing whether the container is alive.
  jsonKey: livenessProbe
  label: LivenessProbe
  sort: 15
  subParameters:
  - description: Number of consecutive failures required to determine the container
      is not alive (liveness probe) or not ready (readiness probe).
    jsonKey: failureThreshold
    label: FailureThreshold
    sort: 100
    uiType: Number
    validate:
      defaultValue: 3
      immutable: false
      required: true
  - description: Number of seconds after the container is started before the first
      probe is initiated.
    jsonKey: initialDelaySeconds
    label: InitialDelaySeconds
    sort: 101
    uiType: Number
    validate:
      defaultValue: 0
      immutable: false
      required: true
  - description: How often, in seconds, to execute the probe.
    jsonKey: periodSeconds
    label: PeriodSeconds
    sort: 102
    uiType: Number
    validate:
      defaultValue: 10
      immutable: false
      required: true
  - description: Minimum consecutive successes for the probe to be considered successful
      after having failed.
    jsonKey: successThreshold
    label: SuccessThreshold
    sort: 103
    uiType: Number
    validate:
      defaultValue: 1
      immutable: false
      required: true
  - description: Number of seconds after which the probe times out.
    jsonKey: timeoutSeconds
    label: TimeoutSeconds
    sort: 104
    uiType: Number
    validate:
      defaultValue: 1
      immutable: false
      required: true
  - description: Instructions for assessing container health by executing a command.
      Either this attribute or the httpGet attribute or the tcpSocket attribute MUST
      be specified. This attribute is mutually exclusive with both the httpGet attribute
      and the tcpSocket attribute.
    jsonKey: exec
    label: Exec
    sort: 105
    subParameters:
    - description: A command to be executed inside the container to assess its health.
        Each space delimited token of the command is a separate array element. Commands
        exiting 0 are considered to be successful probes, whilst all other exit codes
        are considered failures.
      jsonKey: command
      label: Command
      sort: 100
      uiType: Strings
      validate:
        immutable: false
        required: true
    uiType: Group
    validate:
      immutable: false
  - description: Instructions for assessing container health by probing a TCP socket.
      Either this attribute or the exec attribute or the httpGet attribute MUST be
      specified. This attribute is mutually exclusive with both the exec attribute
      and the httpGet attribute.
    jsonKey: tcpSocket
    label: TcpSocket
    sort: 106
    subParameters:
    - description: The TCP socket within the container that should be probed to assess
        container health.
      jsonKey: port
      label: Port
      sort: 100
      uiType: Number
      validate:
        immutable: false
        required: true
    uiType: Group
    validate:
      immutable: false
  - description: Instructions for assessing container health by executing an HTTP
      GET request. Either this attribute or the exec attribute or the tcpSocket attribute
      MUST be specified. This attribute is mutually exclusive with both the exec attribute
      and the tcpSocket attribute.
    jsonKey: httpGet
    label: HttpGet
    sort: 107
    subParameters:
    - description: The endpoint, relative to the port, to which the HTTP GET request
        should be directed.
      jsonKey: path
      label: Path
      sort: 100
      uiType: Input
      validate:
        immutable: false
        required: true
    - description: The TCP socket within the container to which the HTTP GET request
        should be directed.
      jsonKey: port
      label: Port
      sort: 101
      uiType: Number
      validate:
        immutable: false
        required: true
    - description: ""
      jsonKey: httpHeaders
      label: HttpHeaders
      sort: 102
      subParameters:
      - description: ""
        jsonKey: name
        label: Name
        sort: 100
        uiType: Input
        validate:
          immutable: false
          required: true
      - description: ""
        jsonKey: value
        label: Value
        sort: 101
        uiType: Input
        validate:
          immutable: false
          required: true
      uiType: Structs
      validate:
        immutable: false
    uiType: Group
    validate:
      immutable: false
  uiType: Group
  validate:
    immutable: false
- description: If addRevisionLabel is true, the appRevision label will be added to
    the underlying pods
  disable: true
  jsonKey: addRevisionLabel
  label: AddRevisionLabel
  sort: 100
  uiType: Switch
  validate:
    defaultValue: false
    immutable: false
    required: true
- description: Which port do you want customer traffic sent to
  disable: true
  jsonKey: port
  label: Port
  sort: 102
  uiType: Number
  validate:
    defaultValue: 80
    immutable: false
    required: true
- description: Specify image pull secrets for your service
  jsonKey: imagePullSecrets
  label: ImagePullSecrets
  sort: 106
  uiType: Strings
  validate:
    immutable: false
- description: Declare volumes and volumeMounts
  disable: true
  jsonKey: volumes
  label: Volumes
  sort: 109
  subParameters:
  - description: ""
    jsonKey: mountPath
    label: MountPath
    sort: 100
    uiType: Input
    validate:
      immutable: false
      required: true
  - description: ""
    jsonKey: name
    label: Name
    sort: 101
    uiType: Input
    validate:
      immutable: false
      required: true
  - description: 'Specify volume type, options: "pvc","configMap","secret","emptyDir"'
    jsonKey: type
    label: Type
    sort: 102
    uiType: Select
    validate:
      immutable: false
      options:
      - label: Pvc
        value: pvc
      - label: ConfigMap
        value: configMap
      - label: Secret
        value: secret
      - label: EmptyDir
        value: emptyDir
      required: true
  uiType: Structs
  validate:
    immutable: false
