$schema: "http://json-schema.org/draft-06/schema#"

title: gkeonprem v1 BareMetalBgpLbConfig export schema
description: A gcloud export/import command YAML validation schema.
type: object
required:
- addressPools
- asn
- bgpPeerConfigs
additionalProperties: false
properties:
  COMMENT:
    type: object
    description: User specified info ignored by gcloud import.
    additionalProperties: false
    properties:
      template-id:
        type: string
      region:
        type: string
      description:
        type: string
      date:
        type: string
      version:
        type: string
  UNKNOWN:
    type: array
    description: Unknown API fields that cannot be imported.
    items:
      type: string
  addressPools:
    description: |-
      AddressPools is a list of non-overlapping IP pools used by load balancer
      typed services. All addresses must be routable to load balancer nodes.
      IngressVIP must be included in the pools.
    type: array
    items:
      $ref: BareMetalLoadBalancerAddressPool.yaml
  asn:
    description: |-
      BGP autonomous system number (ASN) of the cluster. This field can be
      updated after cluster creation.
    type: integer
  bgpPeerConfigs:
    description: |-
      The list of BGP peers that the cluster will connect to. At least one
      peer must be configured for each control plane node. Control plane
      nodes will connect to these peers to advertise the control plane VIP.
      The Services load balancer also uses these peers by default. This
      field can be updated after cluster creation.
    type: array
    items:
      $ref: BareMetalBgpPeerConfig.yaml
  loadBalancerNodePoolConfig:
    description: |-
      Specifies the node pool running data plane load balancing. L2
      connectivity is required among nodes in this pool. If missing, the
      control plane node pool is used for data plane load balancing.
    $ref: BareMetalLoadBalancerNodePoolConfig.yaml
