#  - variable: horizontalPodAutoscaler
#    group: Advanced
#    label: (Advanced) Horizontal Pod Autoscaler
#    schema:
#      type: list
#      default: []
#      items:
#      - variable: hpaEntry
#        label: HPA Entry
#        schema:
#          additional_attrs: true
#          type: dict
#          attrs:
#            - variable: name
#              label: Name
#              schema:
#                type: string
#                required: true
#                default: ""
#            - variable: enabled
#              label: Enabled
#              schema:
#                type: boolean
#                default: false
#                show_subquestions_if: true
#                subquestions:
#                  - variable: target
#                    label: Target
#                    description: Deployment name, Defaults to Main Deployment
#                    schema:
#                      type: string
#                      default: ""
#                  - variable: minReplicas
#                    label: Minimum Replicas
#                    schema:
#                      type: int
#                      default: 1
#                  - variable: maxReplicas
#                    label: Maximum Replicas
#                    schema:
#                      type: int
#                      default: 5
#                  - variable: targetCPUUtilizationPercentage
#                    label: Target CPU Utilization Percentage
#                    schema:
#                      type: int
#                      default: 80
#                  - variable: targetMemoryUtilizationPercentage
#                    label: Target Memory Utilization Percentage
#                    schema:
#                      type: int
#                      default: 80
  - variable: networkPolicy
    group: Advanced
    label: (Advanced) Network Policy
    schema:
      type: list
      default: []
      items:
      - variable: netPolicyEntry
        label: Network Policy Entry
        schema:
          additional_attrs: true
          type: dict
          attrs:
            - variable: name
              label: Name
              schema:
                type: string
                required: true
                default: ""
            - variable: enabled
              label: Enabled
              schema:
                type: boolean
                default: false
                show_subquestions_if: true
                subquestions:
                  - variable: policyType
                    label: Policy Type
                    schema:
                      type: string
                      default: ""
                      enum:
                        - value: ""
                          description: Default
                        - value: ingress
                          description: Ingress
                        - value: egress
                          description: Egress
                        - value: ingress-egress
                          description: Ingress and Egress
                  - variable: egress
                    label: Egress
                    schema:
                      type: list
                      default: []
                      items:
                        - variable: egressEntry
                          label: ""
                          schema:
                            additional_attrs: true
                            type: dict
                            attrs:
                              - variable: to
                                label: To
                                schema:
                                  type: list
                                  default: []
                                  items:
                                    - variable: toEntry
                                      label: ""
                                      schema:
                                        additional_attrs: true
                                        type: dict
                                        attrs:
                                          - variable: ipBlock
                                            label: IP Block
                                            schema:
                                              additional_attrs: true
                                              type: dict
                                              attrs:
                                                - variable: cidr
                                                  label: CIDR
                                                  schema:
                                                    type: string
                                                    default: ""
                                                - variable: except
                                                  label: Except
                                                  schema:
                                                    type: list
                                                    default: []
                                                    items:
                                                      - variable: exceptint
                                                        label: ""
                                                        schema:
                                                          type: string
                                          - variable: namespaceSelector
                                            label: Namespace Selector
                                            schema:
                                              additional_attrs: true
                                              type: dict
                                              attrs:
                                                - variable: matchExpressions
                                                  label: Match Expressions
                                                  schema:
                                                    type: list
                                                    default: []
                                                    items:
                                                      - variable: expressionEntry
                                                        label: ""
                                                        schema:
                                                          additional_attrs: true
                                                          type: dict
                                                          attrs:
                                                            - variable: key
                                                              label: Key
                                                              schema:
                                                                type: string
                                                            - variable: operator
                                                              label: Operator
                                                              schema:
                                                                type: string
                                                                default: TCP
                                                                enum:
                                                                  - value: In
                                                                    description: In
                                                                  - value: NotIn
                                                                    description: NotIn
                                                                  - value: Exists
                                                                    description: Exists
                                                                  - value: DoesNotExist
                                                                    description: DoesNotExist
                                                            - variable: values
                                                              label: Values
                                                              schema:
                                                                type: list
                                                                default: []
                                                                items:
                                                                  - variable: value
                                                                    label: ""
                                                                    schema:
                                                                      type: string
                                          - variable: podSelector
                                            label: ""
                                            schema:
                                              additional_attrs: true
                                              type: dict
                                              attrs:
                                                - variable: matchExpressions
                                                  label: Match Expressions
                                                  schema:
                                                    type: list
                                                    default: []
                                                    items:
                                                      - variable: expressionEntry
                                                        label: ""
                                                        schema:
                                                          additional_attrs: true
                                                          type: dict
                                                          attrs:
                                                            - variable: key
                                                              label: Key
                                                              schema:
                                                                type: string
                                                            - variable: operator
                                                              label: Operator
                                                              schema:
                                                                type: string
                                                                default: TCP
                                                                enum:
                                                                  - value: In
                                                                    description: In
                                                                  - value: NotIn
                                                                    description: NotIn
                                                                  - value: Exists
                                                                    description: Exists
                                                                  - value: DoesNotExist
                                                                    description: DoesNotExist
                                                            - variable: values
                                                              label: Values
                                                              schema:
                                                                type: list
                                                                default: []
                                                                items:
                                                                  - variable: value
                                                                    label: ""
                                                                    schema:
                                                                      type: string
                              - variable: ports
                                label: Ports
                                schema:
                                  type: list
                                  default: []
                                  items:
                                    - variable: portsEntry
                                      label: ""
                                      schema:
                                        additional_attrs: true
                                        type: dict
                                        attrs:
                                          - variable: port
                                            label: Port
                                            schema:
                                              type: int
                                          - variable: endPort
                                            label: End Port
                                            schema:
                                              type: int
                                          - variable: protocol
                                            label: Protocol
                                            schema:
                                              type: string
                                              default: TCP
                                              enum:
                                                - value: TCP
                                                  description: TCP
                                                - value: UDP
                                                  description: UDP
                                                - value: SCTP
                                                  description: SCTP
                  - variable: ingress
                    label: Ingress
                    schema:
                      type: list
                      default: []
                      items:
                        - variable: ingressEntry
                          label: ""
                          schema:
                            additional_attrs: true
                            type: dict
                            attrs:
                              - variable: from
                                label: From
                                schema:
                                  type: list
                                  default: []
                                  items:
                                    - variable: fromEntry
                                      label: ""
                                      schema:
                                        additional_attrs: true
                                        type: dict
                                        attrs:
                                          - variable: ipBlock
                                            label: IP Block
                                            schema:
                                              additional_attrs: true
                                              type: dict
                                              attrs:
                                                - variable: cidr
                                                  label: CIDR
                                                  schema:
                                                    type: string
                                                    default: ""
                                                - variable: except
                                                  label: Except
                                                  schema:
                                                    type: list
                                                    default: []
                                                    items:
                                                      - variable: exceptint
                                                        label: ""
                                                        schema:
                                                          type: string
                                          - variable: namespaceSelector
                                            label: Namespace Selector
                                            schema:
                                              additional_attrs: true
                                              type: dict
                                              attrs:
                                                - variable: matchExpressions
                                                  label: Match Expressions
                                                  schema:
                                                    type: list
                                                    default: []
                                                    items:
                                                      - variable: expressionEntry
                                                        label: ""
                                                        schema:
                                                          additional_attrs: true
                                                          type: dict
                                                          attrs:
                                                            - variable: key
                                                              label: Key
                                                              schema:
                                                                type: string
                                                            - variable: operator
                                                              label: Operator
                                                              schema:
                                                                type: string
                                                                default: TCP
                                                                enum:
                                                                  - value: In
                                                                    description: In
                                                                  - value: NotIn
                                                                    description: NotIn
                                                                  - value: Exists
                                                                    description: Exists
                                                                  - value: DoesNotExist
                                                                    description: DoesNotExist
                                                            - variable: values
                                                              label: Values
                                                              schema:
                                                                type: list
                                                                default: []
                                                                items:
                                                                  - variable: value
                                                                    label: ""
                                                                    schema:
                                                                      type: string
                                          - variable: podSelector
                                            label: ""
                                            schema:
                                              additional_attrs: true
                                              type: dict
                                              attrs:
                                                - variable: matchExpressions
                                                  label: Match Expressions
                                                  schema:
                                                    type: list
                                                    default: []
                                                    items:
                                                      - variable: expressionEntry
                                                        label: ""
                                                        schema:
                                                          additional_attrs: true
                                                          type: dict
                                                          attrs:
                                                            - variable: key
                                                              label: Key
                                                              schema:
                                                                type: string
                                                            - variable: operator
                                                              label: Operator
                                                              schema:
                                                                type: string
                                                                default: TCP
                                                                enum:
                                                                  - value: In
                                                                    description: In
                                                                  - value: NotIn
                                                                    description: NotIn
                                                                  - value: Exists
                                                                    description: Exists
                                                                  - value: DoesNotExist
                                                                    description: DoesNotExist
                                                            - variable: values
                                                              label: Values
                                                              schema:
                                                                type: list
                                                                default: []
                                                                items:
                                                                  - variable: value
                                                                    label: ""
                                                                    schema:
                                                                      type: string
                              - variable: ports
                                label: Ports
                                schema:
                                  type: list
                                  default: []
                                  items:
                                    - variable: portsEntry
                                      label: ""
                                      schema:
                                        additional_attrs: true
                                        type: dict
                                        attrs:
                                          - variable: port
                                            label: Port
                                            schema:
                                              type: int
                                          - variable: endPort
                                            label: End Port
                                            schema:
                                              type: int
                                          - variable: protocol
                                            label: Protocol
                                            schema:
                                              type: string
                                              default: TCP
                                              enum:
                                                - value: TCP
                                                  description: TCP
                                                - value: UDP
                                                  description: UDP
                                                - value: SCTP
                                                  description: SCTP
