github.com/cilium/cilium@v1.16.2/pkg/k8s/apis/cilium.io/client/crds/v2alpha1/ciliuml2announcementpolicies.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: ciliuml2announcementpolicies.cilium.io
     9  spec:
    10    group: cilium.io
    11    names:
    12      categories:
    13      - cilium
    14      kind: CiliumL2AnnouncementPolicy
    15      listKind: CiliumL2AnnouncementPolicyList
    16      plural: ciliuml2announcementpolicies
    17      shortNames:
    18      - l2announcement
    19      singular: ciliuml2announcementpolicy
    20    scope: Cluster
    21    versions:
    22    - additionalPrinterColumns:
    23      - jsonPath: .metadata.creationTimestamp
    24        name: Age
    25        type: date
    26      name: v2alpha1
    27      schema:
    28        openAPIV3Schema:
    29          description: CiliumL2AnnouncementPolicy is a Kubernetes third-party resource
    30            which is used to defined which nodes should announce what services on the
    31            L2 network.
    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              description: Spec is a human readable description of a L2 announcement
    47                policy
    48              properties:
    49                externalIPs:
    50                  description: If true, the external IPs of the services are announced
    51                  type: boolean
    52                interfaces:
    53                  description: A list of regular expressions that express which network
    54                    interface(s) should be used to announce the services over. If nil,
    55                    all network interfaces are used.
    56                  items:
    57                    type: string
    58                  type: array
    59                loadBalancerIPs:
    60                  description: "If true, the loadbalancer IPs of the services are announced
    61                    \n If nil this policy applies to all services."
    62                  type: boolean
    63                nodeSelector:
    64                  description: "NodeSelector selects a group of nodes which will announce
    65                    the IPs for the services selected by the service selector. \n If
    66                    nil this policy applies to all nodes."
    67                  properties:
    68                    matchExpressions:
    69                      description: matchExpressions is a list of label selector requirements.
    70                        The requirements are ANDed.
    71                      items:
    72                        description: A label selector requirement is a selector that
    73                          contains values, a key, and an operator that relates the key
    74                          and values.
    75                        properties:
    76                          key:
    77                            description: key is the label key that the selector applies
    78                              to.
    79                            type: string
    80                          operator:
    81                            description: operator represents a key's relationship to
    82                              a set of values. Valid operators are In, NotIn, Exists
    83                              and DoesNotExist.
    84                            enum:
    85                            - In
    86                            - NotIn
    87                            - Exists
    88                            - DoesNotExist
    89                            type: string
    90                          values:
    91                            description: values is an array of string values. If the
    92                              operator is In or NotIn, the values array must be non-empty.
    93                              If the operator is Exists or DoesNotExist, the values
    94                              array must be empty. This array is replaced during a strategic
    95                              merge patch.
    96                            items:
    97                              type: string
    98                            type: array
    99                            x-kubernetes-list-type: atomic
   100                        required:
   101                        - key
   102                        - operator
   103                        type: object
   104                      type: array
   105                      x-kubernetes-list-type: atomic
   106                    matchLabels:
   107                      additionalProperties:
   108                        description: MatchLabelsValue represents the value from the
   109                          MatchLabels {key,value} pair.
   110                        maxLength: 63
   111                        pattern: ^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$
   112                        type: string
   113                      description: matchLabels is a map of {key,value} pairs. A single
   114                        {key,value} in the matchLabels map is equivalent to an element
   115                        of matchExpressions, whose key field is "key", the operator
   116                        is "In", and the values array contains only "value". The requirements
   117                        are ANDed.
   118                      type: object
   119                  type: object
   120                serviceSelector:
   121                  description: "ServiceSelector selects a set of services which will
   122                    be announced over L2 networks. The loadBalancerClass for a service
   123                    must be nil or specify a supported class, e.g. \"io.cilium/l2-announcer\".
   124                    Refer to the following document for additional details regarding
   125                    load balancer classes: \n https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class
   126                    \n If nil this policy applies to all services."
   127                  properties:
   128                    matchExpressions:
   129                      description: matchExpressions is a list of label selector requirements.
   130                        The requirements are ANDed.
   131                      items:
   132                        description: A label selector requirement is a selector that
   133                          contains values, a key, and an operator that relates the key
   134                          and values.
   135                        properties:
   136                          key:
   137                            description: key is the label key that the selector applies
   138                              to.
   139                            type: string
   140                          operator:
   141                            description: operator represents a key's relationship to
   142                              a set of values. Valid operators are In, NotIn, Exists
   143                              and DoesNotExist.
   144                            enum:
   145                            - In
   146                            - NotIn
   147                            - Exists
   148                            - DoesNotExist
   149                            type: string
   150                          values:
   151                            description: values is an array of string values. If the
   152                              operator is In or NotIn, the values array must be non-empty.
   153                              If the operator is Exists or DoesNotExist, the values
   154                              array must be empty. This array is replaced during a strategic
   155                              merge patch.
   156                            items:
   157                              type: string
   158                            type: array
   159                            x-kubernetes-list-type: atomic
   160                        required:
   161                        - key
   162                        - operator
   163                        type: object
   164                      type: array
   165                      x-kubernetes-list-type: atomic
   166                    matchLabels:
   167                      additionalProperties:
   168                        description: MatchLabelsValue represents the value from the
   169                          MatchLabels {key,value} pair.
   170                        maxLength: 63
   171                        pattern: ^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$
   172                        type: string
   173                      description: matchLabels is a map of {key,value} pairs. A single
   174                        {key,value} in the matchLabels map is equivalent to an element
   175                        of matchExpressions, whose key field is "key", the operator
   176                        is "In", and the values array contains only "value". The requirements
   177                        are ANDed.
   178                      type: object
   179                  type: object
   180              type: object
   181            status:
   182              description: Status is the status of the policy.
   183              properties:
   184                conditions:
   185                  description: Current service state
   186                  items:
   187                    description: "Condition contains details for one aspect of the current
   188                      state of this API Resource. --- This struct is intended for direct
   189                      use as an array at the field path .status.conditions.  For example,
   190                      \n type FooStatus struct{ // Represents the observations of a
   191                      foo's current state. // Known .status.conditions.type are: \"Available\",
   192                      \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
   193                      // +listType=map // +listMapKey=type Conditions []metav1.Condition
   194                      `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
   195                      protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
   196                    properties:
   197                      lastTransitionTime:
   198                        description: lastTransitionTime is the last time the condition
   199                          transitioned from one status to another. This should be when
   200                          the underlying condition changed.  If that is not known, then
   201                          using the time when the API field changed is acceptable.
   202                        format: date-time
   203                        type: string
   204                      message:
   205                        description: message is a human readable message indicating
   206                          details about the transition. This may be an empty string.
   207                        maxLength: 32768
   208                        type: string
   209                      observedGeneration:
   210                        description: observedGeneration represents the .metadata.generation
   211                          that the condition was set based upon. For instance, if .metadata.generation
   212                          is currently 12, but the .status.conditions[x].observedGeneration
   213                          is 9, the condition is out of date with respect to the current
   214                          state of the instance.
   215                        format: int64
   216                        minimum: 0
   217                        type: integer
   218                      reason:
   219                        description: reason contains a programmatic identifier indicating
   220                          the reason for the condition's last transition. Producers
   221                          of specific condition types may define expected values and
   222                          meanings for this field, and whether the values are considered
   223                          a guaranteed API. The value should be a CamelCase string.
   224                          This field may not be empty.
   225                        maxLength: 1024
   226                        minLength: 1
   227                        pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
   228                        type: string
   229                      status:
   230                        description: status of the condition, one of True, False, Unknown.
   231                        enum:
   232                        - "True"
   233                        - "False"
   234                        - Unknown
   235                        type: string
   236                      type:
   237                        description: type of condition in CamelCase or in foo.example.com/CamelCase.
   238                          --- Many .condition.type values are consistent across resources
   239                          like Available, but because arbitrary conditions can be useful
   240                          (see .node.status.conditions), the ability to deconflict is
   241                          important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
   242                        maxLength: 316
   243                        pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
   244                        type: string
   245                    required:
   246                    - lastTransitionTime
   247                    - message
   248                    - reason
   249                    - status
   250                    - type
   251                    type: object
   252                  type: array
   253                  x-kubernetes-list-map-keys:
   254                  - type
   255                  x-kubernetes-list-type: map
   256              type: object
   257          required:
   258          - metadata
   259          type: object
   260      served: true
   261      storage: true
   262      subresources:
   263        status: {}
   264  status:
   265    acceptedNames:
   266      kind: ""
   267      plural: ""
   268    conditions: []
   269    storedVersions: []