github.com/cilium/cilium@v1.16.2/pkg/k8s/apis/cilium.io/client/crds/v2alpha1/ciliumbgpadvertisements.yaml (about)

     1  ---
     2  apiVersion: apiextensions.k8s.io/v1
     3  kind: CustomResourceDefinition
     4  metadata:
     5    annotations:
     6      controller-gen.kubebuilder.io/version: v0.15.0
     7    creationTimestamp: null
     8    name: ciliumbgpadvertisements.cilium.io
     9  spec:
    10    group: cilium.io
    11    names:
    12      categories:
    13      - cilium
    14      - ciliumbgp
    15      kind: CiliumBGPAdvertisement
    16      listKind: CiliumBGPAdvertisementList
    17      plural: ciliumbgpadvertisements
    18      shortNames:
    19      - cbgpadvert
    20      singular: ciliumbgpadvertisement
    21    scope: Cluster
    22    versions:
    23    - additionalPrinterColumns:
    24      - jsonPath: .metadata.creationTimestamp
    25        name: Age
    26        type: date
    27      name: v2alpha1
    28      schema:
    29        openAPIV3Schema:
    30          description: CiliumBGPAdvertisement is the Schema for the ciliumbgpadvertisements
    31            API
    32          properties:
    33            apiVersion:
    34              description: 'APIVersion defines the versioned schema of this representation
    35                of an object. Servers should convert recognized schemas to the latest
    36                internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
    37              type: string
    38            kind:
    39              description: 'Kind is a string value representing the REST resource this
    40                object represents. Servers may infer this from the endpoint the client
    41                submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
    42              type: string
    43            metadata:
    44              type: object
    45            spec:
    46              properties:
    47                advertisements:
    48                  description: Advertisements is a list of BGP advertisements.
    49                  items:
    50                    description: BGPAdvertisement defines which routes Cilium should
    51                      advertise to BGP peers. Optionally, additional attributes can
    52                      be set to the advertised routes.
    53                    properties:
    54                      advertisementType:
    55                        description: AdvertisementType defines type of advertisement
    56                          which has to be advertised.
    57                        enum:
    58                        - PodCIDR
    59                        - CiliumPodIPPool
    60                        - Service
    61                        type: string
    62                      attributes:
    63                        description: Attributes defines additional attributes to set
    64                          to the advertised routes. If not specified, no additional
    65                          attributes are set.
    66                        properties:
    67                          communities:
    68                            description: Communities sets the community attributes in
    69                              the route. If not specified, no community attribute is
    70                              set.
    71                            properties:
    72                              large:
    73                                description: Large holds a list of the BGP Large Communities
    74                                  Attribute (RFC 8092) values.
    75                                items:
    76                                  description: BGPLargeCommunity type represents a value
    77                                    of the BGP Large Communities Attribute (RFC 8092),
    78                                    as three 4-byte decimal numbers separated by colons.
    79                                  pattern: ^([0-9]|[1-9][0-9]{1,8}|[1-3][0-9]{9}|4[01][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[01][0-9]{2}|42949672[0-8][0-9]|429496729[0-5]):([0-9]|[1-9][0-9]{1,8}|[1-3][0-9]{9}|4[01][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[01][0-9]{2}|42949672[0-8][0-9]|429496729[0-5]):([0-9]|[1-9][0-9]{1,8}|[1-3][0-9]{9}|4[01][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[01][0-9]{2}|42949672[0-8][0-9]|429496729[0-5])$
    80                                  type: string
    81                                type: array
    82                              standard:
    83                                description: Standard holds a list of "standard" 32-bit
    84                                  BGP Communities Attribute (RFC 1997) values defined
    85                                  as numeric values.
    86                                items:
    87                                  description: BGPStandardCommunity type represents
    88                                    a value of the "standard" 32-bit BGP Communities
    89                                    Attribute (RFC 1997) as a 4-byte decimal number
    90                                    or two 2-byte decimal numbers separated by a colon
    91                                    (<0-65535>:<0-65535>). For example, no-export community
    92                                    value is 65553:65281.
    93                                  pattern: ^([0-9]|[1-9][0-9]{1,8}|[1-3][0-9]{9}|4[01][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[01][0-9]{2}|42949672[0-8][0-9]|429496729[0-5])$|^([0-9]|[1-9][0-9]{1,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5]):([0-9]|[1-9][0-9]{1,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])$
    94                                  type: string
    95                                type: array
    96                              wellKnown:
    97                                description: WellKnown holds a list "standard" 32-bit
    98                                  BGP Communities Attribute (RFC 1997) values defined
    99                                  as well-known string aliases to their numeric values.
   100                                items:
   101                                  description: "BGPWellKnownCommunity type represents
   102                                    a value of the \"standard\" 32-bit BGP Communities
   103                                    Attribute (RFC 1997) as a well-known string alias
   104                                    to its numeric value. Allowed values and their mapping
   105                                    to the numeric values: \n internet                   =
   106                                    0x00000000 (0:0) planned-shut               = 0xffff0000
   107                                    (65535:0) accept-own                 = 0xffff0001
   108                                    (65535:1) route-filter-translated-v4 = 0xffff0002
   109                                    (65535:2) route-filter-v4            = 0xffff0003
   110                                    (65535:3) route-filter-translated-v6 = 0xffff0004
   111                                    (65535:4) route-filter-v6            = 0xffff0005
   112                                    (65535:5) llgr-stale                 = 0xffff0006
   113                                    (65535:6) no-llgr                    = 0xffff0007
   114                                    (65535:7) blackhole                  = 0xffff029a
   115                                    (65535:666) no-export                  = 0xffffff01\t(65535:65281)
   116                                    no-advertise               = 0xffffff02 (65535:65282)
   117                                    no-export-subconfed        = 0xffffff03 (65535:65283)
   118                                    no-peer                    = 0xffffff04 (65535:65284)"
   119                                  enum:
   120                                  - internet
   121                                  - planned-shut
   122                                  - accept-own
   123                                  - route-filter-translated-v4
   124                                  - route-filter-v4
   125                                  - route-filter-translated-v6
   126                                  - route-filter-v6
   127                                  - llgr-stale
   128                                  - no-llgr
   129                                  - blackhole
   130                                  - no-export
   131                                  - no-advertise
   132                                  - no-export-subconfed
   133                                  - no-peer
   134                                  type: string
   135                                type: array
   136                            type: object
   137                          localPreference:
   138                            description: LocalPreference sets the local preference attribute
   139                              in the route. If not specified, no local preference attribute
   140                              is set.
   141                            format: int64
   142                            type: integer
   143                        type: object
   144                      selector:
   145                        description: Selector is a label selector to select objects
   146                          of the type specified by AdvertisementType. If not specified,
   147                          no objects of the type specified by AdvertisementType are
   148                          selected for advertisement.
   149                        properties:
   150                          matchExpressions:
   151                            description: matchExpressions is a list of label selector
   152                              requirements. The requirements are ANDed.
   153                            items:
   154                              description: A label selector requirement is a selector
   155                                that contains values, a key, and an operator that relates
   156                                the key and values.
   157                              properties:
   158                                key:
   159                                  description: key is the label key that the selector
   160                                    applies to.
   161                                  type: string
   162                                operator:
   163                                  description: operator represents a key's relationship
   164                                    to a set of values. Valid operators are In, NotIn,
   165                                    Exists and DoesNotExist.
   166                                  enum:
   167                                  - In
   168                                  - NotIn
   169                                  - Exists
   170                                  - DoesNotExist
   171                                  type: string
   172                                values:
   173                                  description: values is an array of string values.
   174                                    If the operator is In or NotIn, the values array
   175                                    must be non-empty. If the operator is Exists or
   176                                    DoesNotExist, the values array must be empty. This
   177                                    array is replaced during a strategic merge patch.
   178                                  items:
   179                                    type: string
   180                                  type: array
   181                                  x-kubernetes-list-type: atomic
   182                              required:
   183                              - key
   184                              - operator
   185                              type: object
   186                            type: array
   187                            x-kubernetes-list-type: atomic
   188                          matchLabels:
   189                            additionalProperties:
   190                              description: MatchLabelsValue represents the value from
   191                                the MatchLabels {key,value} pair.
   192                              maxLength: 63
   193                              pattern: ^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$
   194                              type: string
   195                            description: matchLabels is a map of {key,value} pairs.
   196                              A single {key,value} in the matchLabels map is equivalent
   197                              to an element of matchExpressions, whose key field is
   198                              "key", the operator is "In", and the values array contains
   199                              only "value". The requirements are ANDed.
   200                            type: object
   201                        type: object
   202                      service:
   203                        description: Service defines configuration options for advertisementType
   204                          service.
   205                        properties:
   206                          addresses:
   207                            description: Addresses is a list of service address types
   208                              which needs to be advertised via BGP.
   209                            items:
   210                              description: "BGPServiceAddressType defines type of service
   211                                address to be advertised. \n Note list of supported
   212                                service addresses is not exhaustive and can be extended
   213                                in the future. Consumer of this API should be able to
   214                                handle unknown values."
   215                              enum:
   216                              - LoadBalancerIP
   217                              - ClusterIP
   218                              - ExternalIP
   219                              type: string
   220                            minItems: 1
   221                            type: array
   222                        type: object
   223                    required:
   224                    - advertisementType
   225                    type: object
   226                  type: array
   227              required:
   228              - advertisements
   229              type: object
   230          required:
   231          - metadata
   232          - spec
   233          type: object
   234      served: true
   235      storage: true
   236      subresources: {}
   237  status:
   238    acceptedNames:
   239      kind: ""
   240      plural: ""
   241    conditions: []
   242    storedVersions: []