        - variable: serviceList
          label: Add Manual Custom Services
          group: Networking and Services
          schema:
            type: list
            default: []
            items:
              - variable: serviceListEntry
                label: Custom Service
                schema:
                  additional_attrs: true
                  type: dict
                  attrs:
                    - variable: enabled
                      label: Enable the service
                      schema:
                        type: boolean
                        default: true
                        hidden: true
                    - variable: name
                      label: Name
                      schema:
                        type: string
                        default: ""
                    - variable: type
                      label: Service Type
                      description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer"
                      schema:
                        type: string
                        default: LoadBalancer
                        enum:
                          - value: LoadBalancer
                            description: LoadBalancer (Expose Ports)
                          - value: ClusterIP
                            description: ClusterIP (Do Not Expose Ports)
                          - value: Simple
                            description: Deprecated CHANGE THIS
                    - variable: loadBalancerIP
                      label: LoadBalancer IP
                      description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB"
                      schema:
                        show_if: [["type", "=", "LoadBalancer"]]
                        type: string
                        default: ""
                    - variable: advancedsvcset
                      label: Show Advanced Service Settings
                      schema:
                        type: boolean
                        default: false
                        show_subquestions_if: true
                        subquestions:
                          - variable: externalIPs
                            label: "External IP's"
                            description: "External IP's"
                            schema:
                              type: list
                              default: []
                              items:
                                - variable: externalIP
                                  label: External IP
                                  schema:
                                    type: string
                          - variable: ipFamilyPolicy
                            label: IP Family Policy
                            description: Specify the IP Policy
                            schema:
                              type: string
                              default: SingleStack
                              enum:
                                - value: SingleStack
                                  description: SingleStack
                                - value: PreferDualStack
                                  description: PreferDualStack
                                - value: RequireDualStack
                                  description: RequireDualStack
                          - variable: ipFamilies
                            label: IP Families
                            description: (Advanced) The IP Families that should be used
                            schema:
                              type: list
                              default: []
                              items:
                                - variable: ipFamily
                                  label: IP Family
                                  schema:
                                    type: string
                    - variable: portsList
                      label: Additional Service Ports
                      schema:
                        type: list
                        default: []
                        items:
                          - variable: portsListEntry
                            label: Custom ports
                            schema:
                              additional_attrs: true
                              type: dict
                              attrs:
                                - variable: enabled
                                  label: Enable the Port
                                  schema:
                                    type: boolean
                                    default: true
                                    hidden: true
                                - variable: name
                                  label: Port Name
                                  schema:
                                    type: string
                                    default: ""
                                - variable: protocol
                                  label: Port Type
                                  schema:
                                    type: string
                                    default: TCP
                                    enum:
                                      - value: HTTP
                                        description: HTTP
                                      - value: HTTPS
                                        description: HTTPS
                                      - value: TCP
                                        description: TCP
                                      - value: UDP
                                        description: UDP
                                - variable: targetPort
                                  label: Target Port
                                  description: This port exposes the container port on the service
                                  schema:
                                    type: int
                                    required: true
                                - variable: port
                                  label: Container Port
                                  schema:
                                    type: int
                                    required: true
