...

Text file src/edge-infra.dev/test/fixtures/crds/edge/edge.ncr.com_clusters.yaml

Documentation: edge-infra.dev/test/fixtures/crds/edge

     1---
     2apiVersion: apiextensions.k8s.io/v1
     3kind: CustomResourceDefinition
     4metadata:
     5  annotations:
     6    controller-gen.kubebuilder.io/version: (unknown)
     7  name: clusters.edge.ncr.com
     8spec:
     9  group: edge.ncr.com
    10  names:
    11    kind: Cluster
    12    listKind: ClusterList
    13    plural: clusters
    14    singular: cluster
    15  scope: Cluster
    16  versions:
    17  - additionalPrinterColumns:
    18    - jsonPath: .spec.name
    19      name: ClusterName
    20      type: string
    21    - jsonPath: .spec.projectId
    22      name: ProjectID
    23      type: string
    24    - jsonPath: .spec.banner
    25      name: Banner
    26      type: string
    27    - jsonPath: .spec.fleet
    28      name: Fleet
    29      type: string
    30    - jsonPath: .spec.organization
    31      name: Organization
    32      type: string
    33    - jsonPath: .status.conditions[?(@.type=="Ready")].status
    34      name: Ready
    35      type: string
    36    - jsonPath: .status.conditions[?(@.type=="Ready")].message
    37      name: Status
    38      type: string
    39    name: v1alpha1
    40    schema:
    41      openAPIV3Schema:
    42        description: Cluster is the Schema for the clusters API
    43        properties:
    44          apiVersion:
    45            description: |-
    46              APIVersion defines the versioned schema of this representation of an object.
    47              Servers should convert recognized schemas to the latest internal value, and
    48              may reject unrecognized values.
    49              More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
    50            type: string
    51          kind:
    52            description: |-
    53              Kind is a string value representing the REST resource this object represents.
    54              Servers may infer this from the endpoint the client submits requests to.
    55              Cannot be updated.
    56              In CamelCase.
    57              More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
    58            type: string
    59          metadata:
    60            type: object
    61          spec:
    62            description: ClusterSpec defines the desired state of Cluster
    63            properties:
    64              autoscale:
    65                type: boolean
    66              banner:
    67                type: string
    68              banner_edge_id:
    69                type: string
    70              cluster_artifacts:
    71                description: |-
    72                  Deprecated: Adding this was a mistake. Remove during migration to v1alpha2
    73                  Tracking: https://github.com/ncr-swt-retail/edge-roadmap/issues/7862
    74                items:
    75                  description: |-
    76                    ArtifactVersion is a reference to an OCI artifact. E.g., store:latest. Name is provided without
    77                    a registry context. Version may either be a tag or a digest
    78                  properties:
    79                    name:
    80                      type: string
    81                    version:
    82                      type: string
    83                  required:
    84                  - name
    85                  - version
    86                  type: object
    87                type: array
    88              cluster_id:
    89                description: |-
    90                  Deprecated: Remove during migration to v1alpha2
    91                  Tracking: https://github.com/ncr-swt-retail/edge-roadmap/issues/7862
    92                type: string
    93              edge_id_syncing:
    94                description: |-
    95                  Deprecated: Remove during migration to v1alpha2
    96                  Tracking: https://github.com/ncr-swt-retail/edge-roadmap/issues/7862
    97                type: boolean
    98              fleet:
    99                description: Type is the enum type representing Edge Fleets
   100                type: string
   101              interval:
   102                default: 120s
   103                description: |-
   104                  Interval is how often the object will be reconciled, in order to prevent
   105                  drift.
   106                type: string
   107              location:
   108                description: Fields required for GKE only
   109                type: string
   110              machine_type:
   111                type: string
   112              max_nodes:
   113                type: integer
   114              min_nodes:
   115                type: integer
   116              name:
   117                type: string
   118              node_version:
   119                description: node version is optional. if not provided it will default
   120                  to be on the stable
   121                type: string
   122              num_node:
   123                type: integer
   124              organization:
   125                type: string
   126              projectId:
   127                type: string
   128              type:
   129                description: Type is the enum type representing Edge Cluster Types
   130                type: string
   131            required:
   132            - banner
   133            - fleet
   134            - name
   135            - organization
   136            - projectId
   137            - type
   138            type: object
   139          status:
   140            default:
   141              observedGeneration: -1
   142            description: ClusterStatus defines the observed state of Cluster
   143            properties:
   144              conditions:
   145                items:
   146                  description: "Condition contains details for one aspect of the current
   147                    state of this API Resource.\n---\nThis struct is intended for
   148                    direct use as an array at the field path .status.conditions.  For
   149                    example,\n\n\n\ttype FooStatus struct{\n\t    // Represents the
   150                    observations of a foo's current state.\n\t    // Known .status.conditions.type
   151                    are: \"Available\", \"Progressing\", and \"Degraded\"\n\t    //
   152                    +patchMergeKey=type\n\t    // +patchStrategy=merge\n\t    // +listType=map\n\t
   153                    \   // +listMapKey=type\n\t    Conditions []metav1.Condition `json:\"conditions,omitempty\"
   154                    patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t
   155                    \   // other fields\n\t}"
   156                  properties:
   157                    lastTransitionTime:
   158                      description: |-
   159                        lastTransitionTime is the last time the condition transitioned from one status to another.
   160                        This should be when the underlying condition changed.  If that is not known, then using the time when the API field changed is acceptable.
   161                      format: date-time
   162                      type: string
   163                    message:
   164                      description: |-
   165                        message is a human readable message indicating details about the transition.
   166                        This may be an empty string.
   167                      maxLength: 32768
   168                      type: string
   169                    observedGeneration:
   170                      description: |-
   171                        observedGeneration represents the .metadata.generation that the condition was set based upon.
   172                        For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
   173                        with respect to the current state of the instance.
   174                      format: int64
   175                      minimum: 0
   176                      type: integer
   177                    reason:
   178                      description: |-
   179                        reason contains a programmatic identifier indicating the reason for the condition's last transition.
   180                        Producers of specific condition types may define expected values and meanings for this field,
   181                        and whether the values are considered a guaranteed API.
   182                        The value should be a CamelCase string.
   183                        This field may not be empty.
   184                      maxLength: 1024
   185                      minLength: 1
   186                      pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
   187                      type: string
   188                    status:
   189                      description: status of the condition, one of True, False, Unknown.
   190                      enum:
   191                      - "True"
   192                      - "False"
   193                      - Unknown
   194                      type: string
   195                    type:
   196                      description: |-
   197                        type of condition in CamelCase or in foo.example.com/CamelCase.
   198                        ---
   199                        Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be
   200                        useful (see .node.status.conditions), the ability to deconflict is important.
   201                        The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
   202                      maxLength: 316
   203                      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])$
   204                      type: string
   205                  required:
   206                  - lastTransitionTime
   207                  - message
   208                  - reason
   209                  - status
   210                  - type
   211                  type: object
   212                type: array
   213              external_inventory:
   214                description: ExternalResourceInventory contains a list of resources
   215                  not in kubernetes
   216                properties:
   217                  okta_client:
   218                    description: OktaClient contains the ID and name of an okta app
   219                    properties:
   220                      id:
   221                        type: string
   222                      name:
   223                        type: string
   224                    type: object
   225                  secret_manager_secrets:
   226                    description: SecretManagerSecrets list of secret ids in gcp secret
   227                      manager
   228                    items:
   229                      type: string
   230                    type: array
   231                required:
   232                - secret_manager_secrets
   233                type: object
   234              inventory:
   235                description: |-
   236                  ResourceInventory contains a list of Kubernetes resource object references
   237                  that have been applied.
   238                properties:
   239                  entries:
   240                    description: Entries of Kubernetes resource object references.
   241                    items:
   242                      description: ResourceRef contains the information necessary
   243                        to locate a resource within a cluster.
   244                      properties:
   245                        id:
   246                          description: |-
   247                            ID is the string representation of the Kubernetes resource object's metadata,
   248                            in the format '<namespace>_<name>_<group>_<kind>'.
   249                          type: string
   250                        v:
   251                          description: Version is the API version of the Kubernetes
   252                            resource object's kind.
   253                          type: string
   254                      required:
   255                      - id
   256                      - v
   257                      type: object
   258                    type: array
   259                type: object
   260              observedGeneration:
   261                format: int64
   262                type: integer
   263            type: object
   264        type: object
   265    served: true
   266    storage: true
   267    subresources:
   268      status: {}

View as plain text