github.com/verrazzano/verrazzano@v1.7.0/platform-operator/helm_config/charts/verrazzano-cluster-agent/crds/clusters.verrazzano.io_multiclustercomponents.yaml (about)

     1  # Copyright (c) 2021, 2023, Oracle and/or its affiliates.
     2  # Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl.
     3  ---
     4  apiVersion: apiextensions.k8s.io/v1
     5  kind: CustomResourceDefinition
     6  metadata:
     7    annotations:
     8      controller-gen.kubebuilder.io/version: v0.9.2
     9    creationTimestamp: null
    10    name: multiclustercomponents.clusters.verrazzano.io
    11  spec:
    12    group: clusters.verrazzano.io
    13    names:
    14      kind: MultiClusterComponent
    15      listKind: MultiClusterComponentList
    16      plural: multiclustercomponents
    17      shortNames:
    18      - mccomp
    19      - mccomps
    20      singular: multiclustercomponent
    21    scope: Namespaced
    22    versions:
    23    - deprecated: true
    24      deprecationWarning: clusters.verrazzano.io/v1alpha1 MultiClusterComponent is deprecated
    25        and will be removed in v2.0.0. See https://verrazzano.io/v1.5/docs/reference/migration/#multicluster.
    26      name: v1alpha1
    27      schema:
    28        openAPIV3Schema:
    29          description: MultiClusterComponent specifies the MultiCluster Component API.
    30          properties:
    31            apiVersion:
    32              description: 'APIVersion defines the versioned schema of this representation
    33                of an object. Servers should convert recognized schemas to the latest
    34                internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
    35              type: string
    36            kind:
    37              description: 'Kind is a string value representing the REST resource this
    38                object represents. Servers may infer this from the endpoint the client
    39                submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
    40              type: string
    41            metadata:
    42              type: object
    43            spec:
    44              description: The desired state of a MultiCluster Component resource.
    45              properties:
    46                placement:
    47                  description: Clusters in which the component is to be created.
    48                  properties:
    49                    clusters:
    50                      description: List of clusters.
    51                      items:
    52                        description: Cluster contains the name of a single cluster.
    53                        properties:
    54                          name:
    55                            description: The name of a cluster.
    56                            type: string
    57                        required:
    58                        - name
    59                        type: object
    60                      type: array
    61                  required:
    62                  - clusters
    63                  type: object
    64                template:
    65                  description: Template containing the metadata and spec for an OAM
    66                    component.
    67                  properties:
    68                    metadata:
    69                      description: Metadata describing the component.
    70                      properties:
    71                        annotations:
    72                          additionalProperties:
    73                            type: string
    74                          description: Annotations for the resource.
    75                          type: object
    76                        labels:
    77                          additionalProperties:
    78                            type: string
    79                          description: Labels for the resource.
    80                          type: object
    81                        name:
    82                          description: Name of the resource.
    83                          type: string
    84                        namespace:
    85                          description: Namespace of the resource.
    86                          type: string
    87                      type: object
    88                    spec:
    89                      description: The embedded OAM component specification.
    90                      properties:
    91                        parameters:
    92                          description: Parameters exposed by this component. ApplicationConfigurations
    93                            that reference this component may specify values for these
    94                            parameters, which will in turn be injected into the embedded
    95                            workload.
    96                          items:
    97                            description: A ComponentParameter defines a configurable
    98                              parameter of a component.
    99                            properties:
   100                              description:
   101                                description: Description of this parameter.
   102                                type: string
   103                              fieldPaths:
   104                                description: FieldPaths specifies an array of fields
   105                                  within this Component's workload that will be overwritten
   106                                  by the value of this parameter. The type of the parameter
   107                                  (e.g. int, string) is inferred from the type of these
   108                                  fields; All fields must be of the same type. Fields
   109                                  are specified as JSON field paths without a leading
   110                                  dot, for example 'spec.replicas'.
   111                                items:
   112                                  type: string
   113                                type: array
   114                              name:
   115                                description: Name of this parameter. OAM ApplicationConfigurations
   116                                  will specify parameter values using this name.
   117                                type: string
   118                              required:
   119                                default: false
   120                                description: Required specifies whether or not a value
   121                                  for this parameter must be supplied when authoring
   122                                  an ApplicationConfiguration.
   123                                type: boolean
   124                            required:
   125                            - fieldPaths
   126                            - name
   127                            type: object
   128                          type: array
   129                        workload:
   130                          description: A Workload that will be created for each ApplicationConfiguration
   131                            that includes this Component. Workload is an instance of
   132                            a workloadDefinition. We either use the GVK info or a special
   133                            "type" field in the workload to associate the content of
   134                            the workload with its workloadDefinition
   135                          type: object
   136                          x-kubernetes-embedded-resource: true
   137                          x-kubernetes-preserve-unknown-fields: true
   138                      required:
   139                      - workload
   140                      type: object
   141                  type: object
   142              required:
   143              - placement
   144              - template
   145              type: object
   146            status:
   147              description: The observed state of a MultiCluster Component resource.
   148              properties:
   149                clusters:
   150                  description: Status information for each cluster.
   151                  items:
   152                    description: ClusterLevelStatus describes the status of the multicluster
   153                      resource in a specific cluster.
   154                    properties:
   155                      lastUpdateTime:
   156                        description: Last update time of the resource state in this
   157                          cluster.
   158                        type: string
   159                      message:
   160                        description: Message details about the status in this cluster.
   161                        type: string
   162                      name:
   163                        description: Name of the cluster.
   164                        type: string
   165                      state:
   166                        description: State of the resource in this cluster.
   167                        type: string
   168                    required:
   169                    - lastUpdateTime
   170                    - name
   171                    - state
   172                    type: object
   173                  type: array
   174                conditions:
   175                  description: The current state of a multicluster resource.
   176                  items:
   177                    description: Condition describes current state of a multicluster
   178                      resource.
   179                    properties:
   180                      lastTransitionTime:
   181                        description: Last time the condition transitioned from one status
   182                          to another.
   183                        type: string
   184                      message:
   185                        description: A message with details about the last transition.
   186                        type: string
   187                      status:
   188                        description: 'Status of the condition: one of `True`, `False`,
   189                          or `Unknown`.'
   190                        type: string
   191                      type:
   192                        description: Type of condition.
   193                        type: string
   194                    required:
   195                    - status
   196                    - type
   197                    type: object
   198                  type: array
   199                state:
   200                  description: 'The state of the multicluster resource. State values
   201                    are case-sensitive and formatted as follows: <ul><li>`Failed`: deployment
   202                    to cluster failed</li><li>`Pending`: deployment to cluster is in
   203                    progress</li><li>`Succeeded`: deployment to cluster successfully
   204                    completed</li></ul>'
   205                  type: string
   206              type: object
   207          type: object
   208      served: true
   209      storage: true
   210      subresources:
   211        status: {}