github.com/verrazzano/verrazzano@v1.7.0/platform-operator/helm_config/charts/verrazzano-cluster-agent/crds/clusters.verrazzano.io_multiclusterapplicationconfigurations.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: multiclusterapplicationconfigurations.clusters.verrazzano.io 11 spec: 12 group: clusters.verrazzano.io 13 names: 14 kind: MultiClusterApplicationConfiguration 15 listKind: MultiClusterApplicationConfigurationList 16 plural: multiclusterapplicationconfigurations 17 shortNames: 18 - mcappconf 19 - mcappconfs 20 singular: multiclusterapplicationconfiguration 21 scope: Namespaced 22 versions: 23 - name: v1alpha1 24 schema: 25 openAPIV3Schema: 26 description: MultiClusterApplicationConfiguration specifies the multicluster 27 application API. 28 properties: 29 apiVersion: 30 description: 'APIVersion defines the versioned schema of this representation 31 of an object. Servers should convert recognized schemas to the latest 32 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' 33 type: string 34 kind: 35 description: 'Kind is a string value representing the REST resource this 36 object represents. Servers may infer this from the endpoint the client 37 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' 38 type: string 39 metadata: 40 type: object 41 spec: 42 description: The desired state of a multicluster application resource. 43 properties: 44 placement: 45 description: Clusters in which the application is to be created. 46 properties: 47 clusters: 48 description: List of clusters. 49 items: 50 description: Cluster contains the name of a single cluster. 51 properties: 52 name: 53 description: The name of a cluster. 54 type: string 55 required: 56 - name 57 type: object 58 type: array 59 required: 60 - clusters 61 type: object 62 secrets: 63 description: List of secrets used by the application. These secrets 64 must be created in the application’s namespace before deploying 65 a MultiClusterApplicationConfiguration resource. 66 items: 67 type: string 68 type: array 69 template: 70 description: Template containing the metadata and spec for an OAM 71 applicationConfiguration resource. 72 properties: 73 metadata: 74 description: Metadata describing the application. 75 properties: 76 annotations: 77 additionalProperties: 78 type: string 79 description: Annotations for the resource. 80 type: object 81 labels: 82 additionalProperties: 83 type: string 84 description: Labels for the resource. 85 type: object 86 name: 87 description: Name of the resource. 88 type: string 89 namespace: 90 description: Namespace of the resource. 91 type: string 92 type: object 93 spec: 94 description: The embedded OAM application specification. 95 properties: 96 components: 97 description: Components of which this ApplicationConfiguration 98 consists. Each component will be used to instantiate a workload. 99 items: 100 description: An ApplicationConfigurationComponent specifies 101 a component of an ApplicationConfiguration. Each component 102 is used to instantiate a workload. 103 properties: 104 componentName: 105 description: ComponentName specifies a component whose 106 latest revision will be bind with ApplicationConfiguration. 107 When the spec of the referenced component changes, 108 ApplicationConfiguration will automatically migrate 109 all trait affect from the prior revision to the new 110 one. This is mutually exclusive with RevisionName. 111 type: string 112 dataInputs: 113 description: DataInputs specify the data input sinks 114 into this component. 115 items: 116 description: DataInput specifies a data input sink 117 to an object. If input is array, it will be appended 118 to the target field paths. 119 properties: 120 toFieldPaths: 121 description: ToFieldPaths specifies the field 122 paths of an object to fill passed value. 123 items: 124 type: string 125 type: array 126 valueFrom: 127 description: ValueFrom specifies the value source. 128 properties: 129 dataOutputName: 130 description: DataOutputName matches a name 131 of a DataOutput in the same AppConfig. 132 type: string 133 required: 134 - dataOutputName 135 type: object 136 type: object 137 type: array 138 dataOutputs: 139 description: DataOutputs specify the data output sources 140 from this component. 141 items: 142 description: DataOutput specifies a data output source 143 from an object. 144 properties: 145 conditions: 146 description: Conditions specify the conditions 147 that should be satisfied before emitting a data 148 output. Different conditions are AND-ed together. 149 If no conditions is specified, it is by default 150 to check output value not empty. 151 items: 152 description: ConditionRequirement specifies 153 the requirement to match a value. 154 properties: 155 fieldPath: 156 description: FieldPath specifies got value 157 from workload/trait object 158 type: string 159 op: 160 description: ConditionOperator specifies 161 the operator to match a value. 162 type: string 163 value: 164 description: Value specifies an expected 165 value This is mutually exclusive with 166 ValueFrom 167 type: string 168 valueFrom: 169 description: ValueFrom specifies expected 170 value from AppConfig This is mutually 171 exclusive with Value 172 properties: 173 fieldPath: 174 type: string 175 required: 176 - fieldPath 177 type: object 178 required: 179 - op 180 type: object 181 type: array 182 fieldPath: 183 description: FieldPath refers to the value of 184 an object's field. 185 type: string 186 name: 187 description: Name is the unique name of a DataOutput 188 in an ApplicationConfiguration. 189 type: string 190 type: object 191 type: array 192 parameterValues: 193 description: ParameterValues specify values for the 194 the specified component's parameters. Any parameter 195 required by the component must be specified. 196 items: 197 description: A ComponentParameterValue specifies a 198 value for a named parameter. The associated component 199 must publish a parameter with this name. 200 properties: 201 name: 202 description: Name of the component parameter to 203 set. 204 type: string 205 value: 206 anyOf: 207 - type: integer 208 - type: string 209 description: Value to set. 210 x-kubernetes-int-or-string: true 211 required: 212 - name 213 - value 214 type: object 215 type: array 216 revisionName: 217 description: RevisionName of a specific component revision 218 to which to bind ApplicationConfiguration. This is 219 mutually exclusive with componentName. 220 type: string 221 scopes: 222 description: Scopes in which the specified component 223 should exist. 224 items: 225 description: A ComponentScope specifies a scope in 226 which a component should exist. 227 properties: 228 scopeRef: 229 description: A ScopeReference must refer to an 230 OAM scope resource. 231 properties: 232 apiVersion: 233 description: APIVersion of the referenced 234 object. 235 type: string 236 kind: 237 description: Kind of the referenced object. 238 type: string 239 name: 240 description: Name of the referenced object. 241 type: string 242 uid: 243 description: UID of the referenced object. 244 type: string 245 required: 246 - apiVersion 247 - kind 248 - name 249 type: object 250 required: 251 - scopeRef 252 type: object 253 type: array 254 traits: 255 description: Traits of the specified component. 256 items: 257 description: A ComponentTrait specifies a trait that 258 should be applied to a component. 259 properties: 260 dataInputs: 261 description: DataInputs specify the data input 262 sinks into this trait. 263 items: 264 description: DataInput specifies a data input 265 sink to an object. If input is array, it will 266 be appended to the target field paths. 267 properties: 268 toFieldPaths: 269 description: ToFieldPaths specifies the 270 field paths of an object to fill passed 271 value. 272 items: 273 type: string 274 type: array 275 valueFrom: 276 description: ValueFrom specifies the value 277 source. 278 properties: 279 dataOutputName: 280 description: DataOutputName matches 281 a name of a DataOutput in the same 282 AppConfig. 283 type: string 284 required: 285 - dataOutputName 286 type: object 287 type: object 288 type: array 289 dataOutputs: 290 description: DataOutputs specify the data output 291 sources from this trait. 292 items: 293 description: DataOutput specifies a data output 294 source from an object. 295 properties: 296 conditions: 297 description: Conditions specify the conditions 298 that should be satisfied before emitting 299 a data output. Different conditions are 300 AND-ed together. If no conditions is specified, 301 it is by default to check output value 302 not empty. 303 items: 304 description: ConditionRequirement specifies 305 the requirement to match a value. 306 properties: 307 fieldPath: 308 description: FieldPath specifies got 309 value from workload/trait object 310 type: string 311 op: 312 description: ConditionOperator specifies 313 the operator to match a value. 314 type: string 315 value: 316 description: Value specifies an expected 317 value This is mutually exclusive 318 with ValueFrom 319 type: string 320 valueFrom: 321 description: ValueFrom specifies expected 322 value from AppConfig This is mutually 323 exclusive with Value 324 properties: 325 fieldPath: 326 type: string 327 required: 328 - fieldPath 329 type: object 330 required: 331 - op 332 type: object 333 type: array 334 fieldPath: 335 description: FieldPath refers to the value 336 of an object's field. 337 type: string 338 name: 339 description: Name is the unique name of 340 a DataOutput in an ApplicationConfiguration. 341 type: string 342 type: object 343 type: array 344 trait: 345 description: A Trait that will be created for 346 the component 347 type: object 348 x-kubernetes-embedded-resource: true 349 x-kubernetes-preserve-unknown-fields: true 350 required: 351 - trait 352 type: object 353 type: array 354 type: object 355 type: array 356 required: 357 - components 358 type: object 359 type: object 360 required: 361 - placement 362 - template 363 type: object 364 status: 365 description: The observed state of a multicluster application resource. 366 properties: 367 clusters: 368 description: Status information for each cluster. 369 items: 370 description: ClusterLevelStatus describes the status of the multicluster 371 resource in a specific cluster. 372 properties: 373 lastUpdateTime: 374 description: Last update time of the resource state in this 375 cluster. 376 type: string 377 message: 378 description: Message details about the status in this cluster. 379 type: string 380 name: 381 description: Name of the cluster. 382 type: string 383 state: 384 description: State of the resource in this cluster. 385 type: string 386 required: 387 - lastUpdateTime 388 - name 389 - state 390 type: object 391 type: array 392 conditions: 393 description: The current state of a multicluster resource. 394 items: 395 description: Condition describes current state of a multicluster 396 resource. 397 properties: 398 lastTransitionTime: 399 description: Last time the condition transitioned from one status 400 to another. 401 type: string 402 message: 403 description: A message with details about the last transition. 404 type: string 405 status: 406 description: 'Status of the condition: one of `True`, `False`, 407 or `Unknown`.' 408 type: string 409 type: 410 description: Type of condition. 411 type: string 412 required: 413 - status 414 - type 415 type: object 416 type: array 417 state: 418 description: 'The state of the multicluster resource. State values 419 are case-sensitive and formatted as follows: <ul><li>`Failed`: deployment 420 to cluster failed</li><li>`Pending`: deployment to cluster is in 421 progress</li><li>`Succeeded`: deployment to cluster successfully 422 completed</li></ul>' 423 type: string 424 type: object 425 type: object 426 served: true 427 storage: true 428 subresources: 429 status: {}