From e5cbc15ef6a4f7b832f8ae1895c52c7a5f02809f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 19 Jan 2025 11:39:53 +0000 Subject: [PATCH] Bump open-cluster-management.io/api from 0.13.0 to 0.15.0 (#1301) Bumps [open-cluster-management.io/api](https://github.com/open-cluster-management-io/api) from 0.13.0 to 0.15.0. - [Release notes](https://github.com/open-cluster-management-io/api/releases) - [Commits](https://github.com/open-cluster-management-io/api/compare/v0.13.0...v0.15.0) --- updated-dependencies: - dependency-name: open-cluster-management.io/api dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 2 +- go.sum | 4 +- vendor/modules.txt | 4 +- ...ter-management.io_managedclusters.crd.yaml | 198 +++++----- ...uster-management.io_clusterclaims.crd.yaml | 33 +- ...anagement.io_addonplacementscores.crd.yaml | 90 +++-- ...uster-management.io_manifestworks.crd.yaml | 372 +++++++++--------- ...anagement.io_appliedmanifestworks.crd.yaml | 87 ++-- .../api/work/v1/types.go | 15 +- .../v1/zz_generated.swagger_doc_generated.go | 2 +- 10 files changed, 426 insertions(+), 381 deletions(-) diff --git a/go.mod b/go.mod index 6dc0e4cfc..9b76ba3e5 100644 --- a/go.mod +++ b/go.mod @@ -29,7 +29,7 @@ require ( k8s.io/klog/v2 v2.130.1 k8s.io/kubectl v0.32.0 k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738 - open-cluster-management.io/api v0.13.0 + open-cluster-management.io/api v0.15.0 sigs.k8s.io/controller-runtime v0.19.4 sigs.k8s.io/yaml v1.4.0 ) diff --git a/go.sum b/go.sum index cba92f02c..f942e9860 100644 --- a/go.sum +++ b/go.sum @@ -301,8 +301,8 @@ k8s.io/kubectl v0.32.0 h1:rpxl+ng9qeG79YA4Em9tLSfX0G8W0vfaiPVrc/WR7Xw= k8s.io/kubectl v0.32.0/go.mod h1:qIjSX+QgPQUgdy8ps6eKsYNF+YmFOAO3WygfucIqFiE= k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738 h1:M3sRQVHv7vB20Xc2ybTt7ODCeFj6JSWYFzOFnYeS6Ro= k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= -open-cluster-management.io/api v0.13.0 h1:dlcJEZlNlE0DmSDctK2s7iWKg9l+Tgb0V78Z040nMuk= -open-cluster-management.io/api v0.13.0/go.mod h1:CuCPEzXDvOyxBB0H1d1eSeajbHqaeGEKq9c63vQc63w= +open-cluster-management.io/api v0.15.0 h1:lRee1KOlGHZb2scTA7ff9E9Fxt2hJc7jpkHnaCbvkOU= +open-cluster-management.io/api v0.15.0/go.mod h1:9erZEWEn4bEqh0nIX2wA7f/s3KCuFycQdBrPrRzi0QM= sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.30.3 h1:2770sDpzrjjsAtVhSeUFseziht227YAWYHLGNM8QPwY= sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.30.3/go.mod h1:Ve9uj1L+deCXFrPOk1LpFXqTg7LCFzFso6PA48q/XZw= sigs.k8s.io/controller-runtime v0.19.4 h1:SUmheabttt0nx8uJtoII4oIP27BVVvAKFvdvGFwV/Qo= diff --git a/vendor/modules.txt b/vendor/modules.txt index 445ffaad4..e04941c7f 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -1168,8 +1168,8 @@ k8s.io/utils/path k8s.io/utils/pointer k8s.io/utils/ptr k8s.io/utils/trace -# open-cluster-management.io/api v0.13.0 -## explicit; go 1.21 +# open-cluster-management.io/api v0.15.0 +## explicit; go 1.22.0 open-cluster-management.io/api/cluster/v1 open-cluster-management.io/api/cluster/v1alpha1 open-cluster-management.io/api/work/v1 diff --git a/vendor/open-cluster-management.io/api/cluster/v1/0000_00_clusters.open-cluster-management.io_managedclusters.crd.yaml b/vendor/open-cluster-management.io/api/cluster/v1/0000_00_clusters.open-cluster-management.io_managedclusters.crd.yaml index 9bd0cb68b..1b8766eb4 100644 --- a/vendor/open-cluster-management.io/api/cluster/v1/0000_00_clusters.open-cluster-management.io_managedclusters.crd.yaml +++ b/vendor/open-cluster-management.io/api/cluster/v1/0000_00_clusters.open-cluster-management.io_managedclusters.crd.yaml @@ -34,29 +34,39 @@ spec: name: v1 schema: openAPIV3Schema: - description: "ManagedCluster represents the desired state and current status + description: |- + ManagedCluster represents the desired state and current status of a managed cluster. ManagedCluster is a cluster-scoped resource. The name - is the cluster UID. \n The cluster join process is a double opt-in process. - See the following join process steps: \n 1. The agent on the managed cluster - creates a CSR on the hub with the cluster UID and agent name. 2. The agent - on the managed cluster creates a ManagedCluster on the hub. 3. The cluster - admin on the hub cluster approves the CSR for the UID and agent name of - the ManagedCluster. 4. The cluster admin sets the spec.acceptClient of the - ManagedCluster to true. 5. The cluster admin on the managed cluster creates - a credential of the kubeconfig for the hub cluster. \n After the hub cluster - creates the cluster namespace, the klusterlet agent on the ManagedCluster - pushes the credential to the hub cluster to use against the kube-apiserver - of the ManagedCluster." + is the cluster UID. + + + The cluster join process is a double opt-in process. See the following join process steps: + + + 1. The agent on the managed cluster creates a CSR on the hub with the cluster UID and agent name. + 2. The agent on the managed cluster creates a ManagedCluster on the hub. + 3. The cluster admin on the hub cluster approves the CSR for the UID and agent name of the ManagedCluster. + 4. The cluster admin sets the spec.acceptClient of the ManagedCluster to true. + 5. The cluster admin on the managed cluster creates a credential of the kubeconfig for the hub cluster. + + + After the hub cluster creates the cluster namespace, the klusterlet agent on the ManagedCluster pushes + the credential to the hub cluster to use against the kube-apiserver of the ManagedCluster. properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -65,38 +75,37 @@ spec: the managed cluster. properties: hubAcceptsClient: - description: hubAcceptsClient represents that hub accepts the joining - of Klusterlet agent on the managed cluster with the hub. The default - value is false, and can only be set true when the user on hub has - an RBAC rule to UPDATE on the virtual subresource of managedclusters/accept. - When the value is set true, a namespace whose name is the same as - the name of ManagedCluster is created on the hub. This namespace - represents the managed cluster, also role/rolebinding is created - on the namespace to grant the permision of access from the agent - on the managed cluster. When the value is set to false, the namespace - representing the managed cluster is deleted. + description: |- + hubAcceptsClient represents that hub accepts the joining of Klusterlet agent on + the managed cluster with the hub. The default value is false, and can only be set + true when the user on hub has an RBAC rule to UPDATE on the virtual subresource + of managedclusters/accept. + When the value is set true, a namespace whose name is the same as the name of ManagedCluster + is created on the hub. This namespace represents the managed cluster, also role/rolebinding is created on + the namespace to grant the permision of access from the agent on the managed cluster. + When the value is set to false, the namespace representing the managed cluster is + deleted. type: boolean leaseDurationSeconds: default: 60 - description: LeaseDurationSeconds is used to coordinate the lease - update time of Klusterlet agents on the managed cluster. If its - value is zero, the Klusterlet agent will update its lease every - 60 seconds by default + description: |- + LeaseDurationSeconds is used to coordinate the lease update time of Klusterlet agents on the managed cluster. + If its value is zero, the Klusterlet agent will update its lease every 60 seconds by default format: int32 type: integer managedClusterClientConfigs: - description: ManagedClusterClientConfigs represents a list of the - apiserver address of the managed cluster. If it is empty, the managed - cluster has no accessible address for the hub to connect with it. + description: |- + ManagedClusterClientConfigs represents a list of the apiserver address of the managed cluster. + If it is empty, the managed cluster has no accessible address for the hub to connect with it. items: - description: ClientConfig represents the apiserver address of the - managed cluster. TODO include credential to connect to managed - cluster kube-apiserver + description: |- + ClientConfig represents the apiserver address of the managed cluster. + TODO include credential to connect to managed cluster kube-apiserver properties: caBundle: - description: CABundle is the ca bundle to connect to apiserver - of the managed cluster. System certs are used if it is not - set. + description: |- + CABundle is the ca bundle to connect to apiserver of the managed cluster. + System certs are used if it is not set. format: byte type: string url: @@ -106,27 +115,28 @@ spec: type: object type: array taints: - description: Taints is a property of managed cluster that allow the - cluster to be repelled when scheduling. Taints, including 'ManagedClusterUnavailable' - and 'ManagedClusterUnreachable', can not be added/removed by agent - running on the managed cluster; while it's fine to add/remove other - taints from either hub cluser or managed cluster. + description: |- + Taints is a property of managed cluster that allow the cluster to be repelled when scheduling. + Taints, including 'ManagedClusterUnavailable' and 'ManagedClusterUnreachable', can not be added/removed by agent + running on the managed cluster; while it's fine to add/remove other taints from either hub cluser or managed cluster. items: - description: The managed cluster this Taint is attached to has the - "effect" on any placement that does not tolerate the Taint. + description: |- + The managed cluster this Taint is attached to has the "effect" on + any placement that does not tolerate the Taint. properties: effect: - description: Effect indicates the effect of the taint on placements - that do not tolerate the taint. Valid effects are NoSelect, - PreferNoSelect and NoSelectIfNew. + description: |- + Effect indicates the effect of the taint on placements that do not tolerate the taint. + Valid effects are NoSelect, PreferNoSelect and NoSelectIfNew. enum: - NoSelect - PreferNoSelect - NoSelectIfNew type: string key: - description: Key is the taint key applied to a cluster. e.g. - bar or foo.example.com/bar. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) + description: |- + Key is the taint key applied to a cluster. e.g. bar or foo.example.com/bar. + The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) maxLength: 316 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])$ type: string @@ -167,24 +177,25 @@ spec: - type: string pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ x-kubernetes-int-or-string: true - description: Capacity represents the total resource capacity from - all nodeStatuses on the managed cluster. + description: |- + Capacity represents the total resource capacity from all nodeStatuses + on the managed cluster. type: object clusterClaims: - description: ClusterClaims represents cluster information that a managed - cluster claims, for example a unique cluster identifier (id.k8s.io) - and kubernetes version (kubeversion.open-cluster-management.io). - They are written from the managed cluster. The set of claims is - not uniform across a fleet, some claims can be vendor or version - specific and may not be included from all managed clusters. + description: |- + ClusterClaims represents cluster information that a managed cluster claims, + for example a unique cluster identifier (id.k8s.io) and kubernetes version + (kubeversion.open-cluster-management.io). They are written from the managed + cluster. The set of claims is not uniform across a fleet, some claims can be + vendor or version specific and may not be included from all managed clusters. items: description: ManagedClusterClaim represents a ClusterClaim collected from a managed cluster. properties: name: - description: Name is the name of a ClusterClaim resource on - managed cluster. It's a well known or customized name to identify - the claim. + description: |- + Name is the name of a ClusterClaim resource on managed cluster. It's a well known + or customized name to identify the claim. maxLength: 253 minLength: 1 type: string @@ -200,42 +211,42 @@ spec: for this managed cluster. items: description: "Condition contains details for one aspect of the current - state of this API Resource. --- This struct is intended for direct - use as an array at the field path .status.conditions. For example, - \n type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: \"Available\", - \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge - // +listType=map // +listMapKey=type Conditions []metav1.Condition - `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" - protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" + state of this API Resource.\n---\nThis struct is intended for + direct use as an array at the field path .status.conditions. For + example,\n\n\n\ttype FooStatus struct{\n\t // Represents the + observations of a foo's current state.\n\t // Known .status.conditions.type + are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // + +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t + \ // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" + patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t + \ // other fields\n\t}" properties: lastTransitionTime: - description: lastTransitionTime is the last time the condition - transitioned from one status to another. This should be when - the underlying condition changed. If that is not known, then - using the time when the API field changed is acceptable. + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. format: date-time type: string message: - description: message is a human readable message indicating - details about the transition. This may be an empty string. + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. maxLength: 32768 type: string observedGeneration: - description: observedGeneration represents the .metadata.generation - that the condition was set based upon. For instance, if .metadata.generation - is currently 12, but the .status.conditions[x].observedGeneration - is 9, the condition is out of date with respect to the current - state of the instance. + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. format: int64 minimum: 0 type: integer reason: - description: reason contains a programmatic identifier indicating - the reason for the condition's last transition. Producers - of specific condition types may define expected values and - meanings for this field, and whether the values are considered - a guaranteed API. The value should be a CamelCase string. + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. This field may not be empty. maxLength: 1024 minLength: 1 @@ -249,11 +260,12 @@ spec: - Unknown type: string type: - description: type of condition in CamelCase or in foo.example.com/CamelCase. - --- Many .condition.type values are consistent across resources - like Available, but because arbitrary conditions can be useful - (see .node.status.conditions), the ability to deconflict is - important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) + description: |- + type of condition in CamelCase or in foo.example.com/CamelCase. + --- + Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be + useful (see .node.status.conditions), the ability to deconflict is important. + The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) maxLength: 316 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])$ type: string diff --git a/vendor/open-cluster-management.io/api/cluster/v1alpha1/0000_02_clusters.open-cluster-management.io_clusterclaims.crd.yaml b/vendor/open-cluster-management.io/api/cluster/v1alpha1/0000_02_clusters.open-cluster-management.io_clusterclaims.crd.yaml index 5355bb16d..4359dcadb 100644 --- a/vendor/open-cluster-management.io/api/cluster/v1alpha1/0000_02_clusters.open-cluster-management.io_clusterclaims.crd.yaml +++ b/vendor/open-cluster-management.io/api/cluster/v1alpha1/0000_02_clusters.open-cluster-management.io_clusterclaims.crd.yaml @@ -15,22 +15,31 @@ spec: - name: v1alpha1 schema: openAPIV3Schema: - description: "ClusterClaim represents cluster information that a managed cluster - claims ClusterClaims with well known names include, 1. id.k8s.io, it contains - a unique identifier for the cluster. 2. clusterset.k8s.io, it contains an - identifier that relates the cluster to the ClusterSet in which it belongs. - \n ClusterClaims created on a managed cluster will be collected and saved - into the status of the corresponding ManagedCluster on hub." + description: |- + ClusterClaim represents cluster information that a managed cluster claims + ClusterClaims with well known names include, + 1. id.k8s.io, it contains a unique identifier for the cluster. + 2. clusterset.k8s.io, it contains an identifier that relates the cluster + to the ClusterSet in which it belongs. + + + ClusterClaims created on a managed cluster will be collected and saved into + the status of the corresponding ManagedCluster on hub. properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object diff --git a/vendor/open-cluster-management.io/api/cluster/v1alpha1/0000_05_clusters.open-cluster-management.io_addonplacementscores.crd.yaml b/vendor/open-cluster-management.io/api/cluster/v1alpha1/0000_05_clusters.open-cluster-management.io_addonplacementscores.crd.yaml index 1cfba5564..24d2d6c01 100644 --- a/vendor/open-cluster-management.io/api/cluster/v1alpha1/0000_05_clusters.open-cluster-management.io_addonplacementscores.crd.yaml +++ b/vendor/open-cluster-management.io/api/cluster/v1alpha1/0000_05_clusters.open-cluster-management.io_addonplacementscores.crd.yaml @@ -15,19 +15,24 @@ spec: - name: v1alpha1 schema: openAPIV3Schema: - description: AddOnPlacementScore represents a bundle of scores of one managed - cluster, which could be used by placement. AddOnPlacementScore is a namespace - scoped resource. The namespace of the resource is the cluster namespace. + description: |- + AddOnPlacementScore represents a bundle of scores of one managed cluster, which could be used by placement. + AddOnPlacementScore is a namespace scoped resource. The namespace of the resource is the cluster namespace. properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -39,42 +44,42 @@ spec: this AddOnPlacementScore. items: description: "Condition contains details for one aspect of the current - state of this API Resource. --- This struct is intended for direct - use as an array at the field path .status.conditions. For example, - \n type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: \"Available\", - \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge - // +listType=map // +listMapKey=type Conditions []metav1.Condition - `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" - protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" + state of this API Resource.\n---\nThis struct is intended for + direct use as an array at the field path .status.conditions. For + example,\n\n\n\ttype FooStatus struct{\n\t // Represents the + observations of a foo's current state.\n\t // Known .status.conditions.type + are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // + +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t + \ // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" + patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t + \ // other fields\n\t}" properties: lastTransitionTime: - description: lastTransitionTime is the last time the condition - transitioned from one status to another. This should be when - the underlying condition changed. If that is not known, then - using the time when the API field changed is acceptable. + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. format: date-time type: string message: - description: message is a human readable message indicating - details about the transition. This may be an empty string. + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. maxLength: 32768 type: string observedGeneration: - description: observedGeneration represents the .metadata.generation - that the condition was set based upon. For instance, if .metadata.generation - is currently 12, but the .status.conditions[x].observedGeneration - is 9, the condition is out of date with respect to the current - state of the instance. + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. format: int64 minimum: 0 type: integer reason: - description: reason contains a programmatic identifier indicating - the reason for the condition's last transition. Producers - of specific condition types may define expected values and - meanings for this field, and whether the values are considered - a guaranteed API. The value should be a CamelCase string. + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. This field may not be empty. maxLength: 1024 minLength: 1 @@ -88,11 +93,12 @@ spec: - Unknown type: string type: - description: type of condition in CamelCase or in foo.example.com/CamelCase. - --- Many .condition.type values are consistent across resources - like Available, but because arbitrary conditions can be useful - (see .node.status.conditions), the ability to deconflict is - important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) + description: |- + type of condition in CamelCase or in foo.example.com/CamelCase. + --- + Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be + useful (see .node.status.conditions), the ability to deconflict is important. + The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) maxLength: 316 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])$ type: string @@ -133,10 +139,10 @@ spec: - name x-kubernetes-list-type: map validUntil: - description: ValidUntil defines the valid time of the scores. After - this time, the scores are considered to be invalid by placement. - nil means never expire. The controller owning this resource should - keep the scores up-to-date. + description: |- + ValidUntil defines the valid time of the scores. + After this time, the scores are considered to be invalid by placement. nil means never expire. + The controller owning this resource should keep the scores up-to-date. format: date-time type: string type: object diff --git a/vendor/open-cluster-management.io/api/work/v1/0000_00_work.open-cluster-management.io_manifestworks.crd.yaml b/vendor/open-cluster-management.io/api/work/v1/0000_00_work.open-cluster-management.io_manifestworks.crd.yaml index c3b0133ec..efb889f9d 100644 --- a/vendor/open-cluster-management.io/api/work/v1/0000_00_work.open-cluster-management.io_manifestworks.crd.yaml +++ b/vendor/open-cluster-management.io/api/work/v1/0000_00_work.open-cluster-management.io_manifestworks.crd.yaml @@ -15,21 +15,27 @@ spec: - name: v1 schema: openAPIV3Schema: - description: ManifestWork represents a manifests workload that hub wants to - deploy on the managed cluster. A manifest workload is defined as a set of - Kubernetes resources. ManifestWork must be created in the cluster namespace - on the hub, so that agent on the corresponding managed cluster can access - this resource and deploy on the managed cluster. + description: |- + ManifestWork represents a manifests workload that hub wants to deploy on the managed cluster. + A manifest workload is defined as a set of Kubernetes resources. + ManifestWork must be created in the cluster namespace on the hub, so that agent on the + corresponding managed cluster can access this resource and deploy on the managed + cluster. properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -38,20 +44,20 @@ spec: on the managed cluster. properties: deleteOption: - description: DeleteOption represents deletion strategy when the manifestwork - is deleted. Foreground deletion strategy is applied to all the resource - in this manifestwork if it is not set. + description: |- + DeleteOption represents deletion strategy when the manifestwork is deleted. + Foreground deletion strategy is applied to all the resource in this manifestwork if it is not set. properties: propagationPolicy: default: Foreground - description: propagationPolicy can be Foreground, Orphan or SelectivelyOrphan - SelectivelyOrphan should be rarely used. It is provided for - cases where particular resources is transfering ownership from - one ManifestWork to another or another management unit. Setting - this value will allow a flow like 1. create manifestwork/2 to - manage foo 2. update manifestwork/1 to selectively orphan foo - 3. remove foo from manifestwork/1 without impacting continuity - because manifestwork/2 adopts it. + description: |- + propagationPolicy can be Foreground, Orphan or SelectivelyOrphan + SelectivelyOrphan should be rarely used. It is provided for cases where particular resources is transfering + ownership from one ManifestWork to another or another management unit. + Setting this value will allow a flow like + 1. create manifestwork/2 to manage foo + 2. update manifestwork/1 to selectively orphan foo + 3. remove foo from manifestwork/1 without impacting continuity because manifestwork/2 adopts it. enum: - Foreground - Orphan @@ -62,24 +68,25 @@ spec: following orphan deletion stratecy properties: orphaningRules: - description: orphaningRules defines a slice of orphaningrule. - Each orphaningrule identifies a single resource included - in this manifestwork + description: |- + orphaningRules defines a slice of orphaningrule. + Each orphaningrule identifies a single resource included in this manifestwork items: description: OrphaningRule identifies a single resource included in this manifestwork to be orphaned properties: group: - description: Group is the API Group of the Kubernetes - resource, empty string indicates it is in core group. + description: |- + Group is the API Group of the Kubernetes resource, + empty string indicates it is in core group. type: string name: description: Name is the name of the Kubernetes resource. type: string namespace: - description: Name is the namespace of the Kubernetes - resource, empty string indicates it is a cluster scoped - resource. + description: |- + Name is the namespace of the Kubernetes resource, empty string indicates + it is a cluster scoped resource. type: string resource: description: Resource is the resource name of the Kubernetes @@ -93,22 +100,22 @@ spec: type: object type: object executor: - description: Executor is the configuration that makes the work agent - to perform some pre-request processing/checking. e.g. the executor - identity tells the work agent to check the executor has sufficient - permission to write the workloads to the local managed cluster. - Note that nil executor is still supported for backward-compatibility - which indicates that the work agent will not perform any additional - actions before applying resources. + description: |- + Executor is the configuration that makes the work agent to perform some pre-request processing/checking. + e.g. the executor identity tells the work agent to check the executor has sufficient permission to write + the workloads to the local managed cluster. + Note that nil executor is still supported for backward-compatibility which indicates that the work agent + will not perform any additional actions before applying resources. properties: subject: - description: Subject is the subject identity which the work agent - uses to talk to the local cluster when applying the resources. + description: |- + Subject is the subject identity which the work agent uses to talk to the + local cluster when applying the resources. properties: serviceAccount: - description: ServiceAccount is for identifying which service - account to use by the work agent. Only required if the type - is "ServiceAccount". + description: |- + ServiceAccount is for identifying which service account to use by the work agent. + Only required if the type is "ServiceAccount". properties: name: description: Name is the name of the service account. @@ -128,8 +135,9 @@ spec: - namespace type: object type: - description: 'Type is the type of the subject identity. Supported - types are: "ServiceAccount".' + description: |- + Type is the type of the subject identity. + Supported types are: "ServiceAccount". enum: - ServiceAccount type: string @@ -145,9 +153,9 @@ spec: of a manifest defined in workload field. properties: feedbackRules: - description: FeedbackRules defines what resource status field - should be returned. If it is not set or empty, no feedback - rules will be honored. + description: |- + FeedbackRules defines what resource status field should be returned. If it is not set or empty, + no feedback rules will be honored. items: properties: jsonPaths: @@ -160,22 +168,19 @@ spec: this field type: string path: - description: Path represents the json path of the - field under status. The path must point to a field - with single value in the type of integer, bool - or string. If the path points to a non-existing - field, no value will be returned. If the path - points to a structure, map or slice, no value - will be returned and the status conddition of - StatusFeedBackSynced will be set as false. Ref - to https://kubernetes.io/docs/reference/kubectl/jsonpath/ - on how to write a jsonPath. + description: |- + Path represents the json path of the field under status. + The path must point to a field with single value in the type of integer, bool or string. + If the path points to a non-existing field, no value will be returned. + If the path points to a structure, map or slice, no value will be returned and the status conddition + of StatusFeedBackSynced will be set as false. + Ref to https://kubernetes.io/docs/reference/kubectl/jsonpath/ on how to write a jsonPath. type: string version: - description: Version is the version of the Kubernetes - resource. If it is not specified, the resource - with the semantically latest version is used to - resolve the path. + description: |- + Version is the version of the Kubernetes resource. + If it is not specified, the resource with the semantically latest version is + used to resolve the path. type: string required: - name @@ -183,14 +188,13 @@ spec: type: object type: array type: - description: Type defines the option of how status can - be returned. It can be jsonPaths or wellKnownStatus. - If the type is JSONPaths, user should specify the jsonPaths - field If the type is WellKnownStatus, certain common - fields of status defined by a rule only for types in - in k8s.io/api and open-cluster-management/api will be - reported, If these status fields do not exist, no values - will be reported. + description: |- + Type defines the option of how status can be returned. + It can be jsonPaths or wellKnownStatus. + If the type is JSONPaths, user should specify the jsonPaths field + If the type is WellKnownStatus, certain common fields of status defined by a rule only + for types in in k8s.io/api and open-cluster-management/api will be reported, + If these status fields do not exist, no values will be reported. enum: - WellKnownStatus - JSONPaths @@ -200,21 +204,22 @@ spec: type: object type: array resourceIdentifier: - description: ResourceIdentifier represents the group, resource, - name and namespace of a resoure. iff this refers to a resource - not created by this manifest work, the related rules will - not be executed. + description: |- + ResourceIdentifier represents the group, resource, name and namespace of a resoure. + iff this refers to a resource not created by this manifest work, the related rules will not be executed. properties: group: - description: Group is the API Group of the Kubernetes resource, + description: |- + Group is the API Group of the Kubernetes resource, empty string indicates it is in core group. type: string name: description: Name is the name of the Kubernetes resource. type: string namespace: - description: Name is the namespace of the Kubernetes resource, - empty string indicates it is a cluster scoped resource. + description: |- + Name is the namespace of the Kubernetes resource, empty string indicates + it is a cluster scoped resource. type: string resource: description: Resource is the resource name of the Kubernetes @@ -225,19 +230,20 @@ spec: - resource type: object updateStrategy: - description: UpdateStrategy defines the strategy to update this - manifest. UpdateStrategy is Update if it is not set. + description: |- + UpdateStrategy defines the strategy to update this manifest. UpdateStrategy is Update + if it is not set. properties: serverSideApply: - description: serverSideApply defines the configuration for - server side apply. It is honored only when type of updateStrategy - is ServerSideApply + description: |- + serverSideApply defines the configuration for server side apply. It is honored only when + type of updateStrategy is ServerSideApply properties: fieldManager: default: work-agent - description: FieldManager is the manager to apply the - resource. It is work-agent by default, but can be - other name with work-agent as the prefix. + description: |- + FieldManager is the manager to apply the resource. It is work-agent by default, but can be other name with work-agent + as the prefix. pattern: ^work-agent type: string force: @@ -246,18 +252,20 @@ spec: type: object type: default: Update - description: type defines the strategy to update this manifest, - default value is Update. Update type means to update resource - by an update call. CreateOnly type means do not update - resource based on current manifest. ServerSideApply type - means to update resource using server side apply with - work-controller as the field manager. If there is conflict, - the related Applied condition of manifest will be in the - status of False with the reason of ApplyConflict. + description: |- + type defines the strategy to update this manifest, default value is Update. + Update type means to update resource by an update call. + CreateOnly type means do not update resource based on current manifest. + ServerSideApply type means to update resource using server side apply with work-controller as the field manager. + If there is conflict, the related Applied condition of manifest will be in the status of False with the + reason of ApplyConflict. + ReadOnly type means the agent will only check the existence of the resource based on its metadata, + statusFeedBackRules can still be used to get feedbackResults. enum: - Update - CreateOnly - ServerSideApply + - ReadOnly type: string required: - type @@ -286,52 +294,52 @@ spec: description: Status represents the current status of work. properties: conditions: - description: 'Conditions contains the different condition statuses - for this work. Valid condition types are: 1. Applied represents - workload in ManifestWork is applied successfully on managed cluster. - 2. Progressing represents workload in ManifestWork is being applied - on managed cluster. 3. Available represents workload in ManifestWork - exists on the managed cluster. 4. Degraded represents the current - state of workload does not match the desired state for a certain - period.' + description: |- + Conditions contains the different condition statuses for this work. + Valid condition types are: + 1. Applied represents workload in ManifestWork is applied successfully on managed cluster. + 2. Progressing represents workload in ManifestWork is being applied on managed cluster. + 3. Available represents workload in ManifestWork exists on the managed cluster. + 4. Degraded represents the current state of workload does not match the desired + state for a certain period. items: description: "Condition contains details for one aspect of the current - state of this API Resource. --- This struct is intended for direct - use as an array at the field path .status.conditions. For example, - \n type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: \"Available\", - \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge - // +listType=map // +listMapKey=type Conditions []metav1.Condition - `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" - protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" + state of this API Resource.\n---\nThis struct is intended for + direct use as an array at the field path .status.conditions. For + example,\n\n\n\ttype FooStatus struct{\n\t // Represents the + observations of a foo's current state.\n\t // Known .status.conditions.type + are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // + +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t + \ // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" + patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t + \ // other fields\n\t}" properties: lastTransitionTime: - description: lastTransitionTime is the last time the condition - transitioned from one status to another. This should be when - the underlying condition changed. If that is not known, then - using the time when the API field changed is acceptable. + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. format: date-time type: string message: - description: message is a human readable message indicating - details about the transition. This may be an empty string. + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. maxLength: 32768 type: string observedGeneration: - description: observedGeneration represents the .metadata.generation - that the condition was set based upon. For instance, if .metadata.generation - is currently 12, but the .status.conditions[x].observedGeneration - is 9, the condition is out of date with respect to the current - state of the instance. + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. format: int64 minimum: 0 type: integer reason: - description: reason contains a programmatic identifier indicating - the reason for the condition's last transition. Producers - of specific condition types may define expected values and - meanings for this field, and whether the values are considered - a guaranteed API. The value should be a CamelCase string. + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. This field may not be empty. maxLength: 1024 minLength: 1 @@ -345,11 +353,12 @@ spec: - Unknown type: string type: - description: type of condition in CamelCase or in foo.example.com/CamelCase. - --- Many .condition.type values are consistent across resources - like Available, but because arbitrary conditions can be useful - (see .node.status.conditions), the ability to deconflict is - important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) + description: |- + type of condition in CamelCase or in foo.example.com/CamelCase. + --- + Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be + useful (see .node.status.conditions), the ability to deconflict is important. + The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) maxLength: 316 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])$ type: string @@ -362,71 +371,68 @@ spec: type: object type: array resourceStatus: - description: ResourceStatus represents the status of each resource - in manifestwork deployed on a managed cluster. The Klusterlet agent - on managed cluster syncs the condition from the managed cluster - to the hub. + description: |- + ResourceStatus represents the status of each resource in manifestwork deployed on a + managed cluster. The Klusterlet agent on managed cluster syncs the condition from the managed cluster to the hub. properties: manifests: - description: 'Manifests represents the condition of manifests - deployed on managed cluster. Valid condition types are: 1. Progressing - represents the resource is being applied on managed cluster. - 2. Applied represents the resource is applied successfully on - managed cluster. 3. Available represents the resource exists - on the managed cluster. 4. Degraded represents the current state - of resource does not match the desired state for a certain period.' + description: |- + Manifests represents the condition of manifests deployed on managed cluster. + Valid condition types are: + 1. Progressing represents the resource is being applied on managed cluster. + 2. Applied represents the resource is applied successfully on managed cluster. + 3. Available represents the resource exists on the managed cluster. + 4. Degraded represents the current state of resource does not match the desired + state for a certain period. items: - description: ManifestCondition represents the conditions of - the resources deployed on a managed cluster. + description: |- + ManifestCondition represents the conditions of the resources deployed on a + managed cluster. properties: conditions: description: Conditions represents the conditions of this resource on a managed cluster. items: description: "Condition contains details for one aspect - of the current state of this API Resource. --- This + of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the - field path .status.conditions. For example, \n type - FooStatus struct{ // Represents the observations of - a foo's current state. // Known .status.conditions.type - are: \"Available\", \"Progressing\", and \"Degraded\" - // +patchMergeKey=type // +patchStrategy=merge // +listType=map - // +listMapKey=type Conditions []metav1.Condition `json:\"conditions,omitempty\" - patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` - \n // other fields }" + field path .status.conditions. For example,\n\n\n\ttype + FooStatus struct{\n\t // Represents the observations + of a foo's current state.\n\t // Known .status.conditions.type + are: \"Available\", \"Progressing\", and \"Degraded\"\n\t + \ // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t + \ // +listType=map\n\t // +listMapKey=type\n\t + \ Conditions []metav1.Condition `json:\"conditions,omitempty\" + patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t + \ // other fields\n\t}" properties: lastTransitionTime: - description: lastTransitionTime is the last time the - condition transitioned from one status to another. - This should be when the underlying condition changed. If - that is not known, then using the time when the - API field changed is acceptable. + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. format: date-time type: string message: - description: message is a human readable message indicating - details about the transition. This may be an empty - string. + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. maxLength: 32768 type: string observedGeneration: - description: observedGeneration represents the .metadata.generation - that the condition was set based upon. For instance, - if .metadata.generation is currently 12, but the - .status.conditions[x].observedGeneration is 9, the - condition is out of date with respect to the current - state of the instance. + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. format: int64 minimum: 0 type: integer reason: - description: reason contains a programmatic identifier - indicating the reason for the condition's last transition. - Producers of specific condition types may define - expected values and meanings for this field, and - whether the values are considered a guaranteed API. - The value should be a CamelCase string. This field - may not be empty. + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. maxLength: 1024 minLength: 1 pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ @@ -440,12 +446,12 @@ spec: - Unknown type: string type: - description: type of condition in CamelCase or in - foo.example.com/CamelCase. --- Many .condition.type - values are consistent across resources like Available, - but because arbitrary conditions can be useful (see - .node.status.conditions), the ability to deconflict - is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) + description: |- + type of condition in CamelCase or in foo.example.com/CamelCase. + --- + Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be + useful (see .node.status.conditions), the ability to deconflict is important. + The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) maxLength: 316 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])$ type: string @@ -499,9 +505,9 @@ spec: items: properties: fieldValue: - description: Value is the value of the status - field. The value of the status field can only - be integer, string or boolean. + description: |- + Value is the value of the status field. + The value of the status field can only be integer, string or boolean. properties: boolean: description: Boolean is bool value when type @@ -534,8 +540,8 @@ spec: - type type: object name: - description: Name represents the alias name for - this field. It is the same as what is specified + description: |- + Name represents the alias name for this field. It is the same as what is specified in StatuFeedbackRule in the spec. type: string required: diff --git a/vendor/open-cluster-management.io/api/work/v1/0000_01_work.open-cluster-management.io_appliedmanifestworks.crd.yaml b/vendor/open-cluster-management.io/api/work/v1/0000_01_work.open-cluster-management.io_appliedmanifestworks.crd.yaml index 99ef00b4b..bd1e27810 100644 --- a/vendor/open-cluster-management.io/api/work/v1/0000_01_work.open-cluster-management.io_appliedmanifestworks.crd.yaml +++ b/vendor/open-cluster-management.io/api/work/v1/0000_01_work.open-cluster-management.io_appliedmanifestworks.crd.yaml @@ -15,23 +15,29 @@ spec: - name: v1 schema: openAPIV3Schema: - description: AppliedManifestWork represents an applied manifestwork on managed - cluster that is placed on a managed cluster. An AppliedManifestWork links - to a manifestwork on a hub recording resources deployed in the managed cluster. - When the agent is removed from managed cluster, cluster-admin on managed - cluster can delete appliedmanifestwork to remove resources deployed by the - agent. The name of the appliedmanifestwork must be in the format of {hash - of hub's first kube-apiserver url}-{manifestwork name} + description: |- + AppliedManifestWork represents an applied manifestwork on managed cluster that is placed + on a managed cluster. An AppliedManifestWork links to a manifestwork on a hub recording resources + deployed in the managed cluster. + When the agent is removed from managed cluster, cluster-admin on managed cluster + can delete appliedmanifestwork to remove resources deployed by the agent. + The name of the appliedmanifestwork must be in the format of + {hash of hub's first kube-apiserver url}-{manifestwork name} properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -43,8 +49,9 @@ spec: handle this AppliedManifestWork. type: string hubHash: - description: HubHash represents the hash of the first hub kube apiserver - to identify which hub this AppliedManifestWork links to. + description: |- + HubHash represents the hash of the first hub kube apiserver to identify which hub + this AppliedManifestWork links to. type: string manifestWorkName: description: ManifestWorkName represents the name of the related manifestwork @@ -55,41 +62,40 @@ spec: description: Status represents the current status of AppliedManifestWork. properties: appliedResources: - description: AppliedResources represents a list of resources defined - within the manifestwork that are applied. Only resources with valid - GroupVersionResource, namespace, and name are suitable. An item - in this slice is deleted when there is no mapped manifest in manifestwork.Spec - or by finalizer. The resource relating to the item will also be - removed from managed cluster. The deleted resource may still be - present until the finalizers for that resource are finished. However, - the resource will not be undeleted, so it can be removed from this - list and eventual consistency is preserved. + description: |- + AppliedResources represents a list of resources defined within the manifestwork that are applied. + Only resources with valid GroupVersionResource, namespace, and name are suitable. + An item in this slice is deleted when there is no mapped manifest in manifestwork.Spec or by finalizer. + The resource relating to the item will also be removed from managed cluster. + The deleted resource may still be present until the finalizers for that resource are finished. + However, the resource will not be undeleted, so it can be removed from this list and eventual consistency is preserved. items: - description: AppliedManifestResourceMeta represents the group, version, - resource, name and namespace of a resource. Since these resources - have been created, they must have valid group, version, resource, - namespace, and name. + description: |- + AppliedManifestResourceMeta represents the group, version, resource, name and namespace of a resource. + Since these resources have been created, they must have valid group, version, resource, namespace, and name. properties: group: - description: Group is the API Group of the Kubernetes resource, + description: |- + Group is the API Group of the Kubernetes resource, empty string indicates it is in core group. type: string name: description: Name is the name of the Kubernetes resource. type: string namespace: - description: Name is the namespace of the Kubernetes resource, - empty string indicates it is a cluster scoped resource. + description: |- + Name is the namespace of the Kubernetes resource, empty string indicates + it is a cluster scoped resource. type: string resource: description: Resource is the resource name of the Kubernetes resource. type: string uid: - description: UID is set on successful deletion of the Kubernetes - resource by controller. The resource might be still visible - on the managed cluster after this field is set. It is not - directly settable by a client. + description: |- + UID is set on successful deletion of the Kubernetes resource by controller. The + resource might be still visible on the managed cluster after this field is set. + It is not directly settable by a client. type: string version: description: Version is the version of the Kubernetes resource. @@ -101,12 +107,11 @@ spec: type: object type: array evictionStartTime: - description: 'EvictionStartTime represents the current appliedmanifestwork - will be evicted after a grace period. An appliedmanifestwork will - be evicted from the managed cluster in the following two scenarios: - - the manifestwork of the current appliedmanifestwork is missing - on the hub, or - the appliedmanifestwork hub hash does not match - the current hub hash of the work agent.' + description: |- + EvictionStartTime represents the current appliedmanifestwork will be evicted after a grace period. + An appliedmanifestwork will be evicted from the managed cluster in the following two scenarios: + - the manifestwork of the current appliedmanifestwork is missing on the hub, or + - the appliedmanifestwork hub hash does not match the current hub hash of the work agent. format: date-time type: string type: object diff --git a/vendor/open-cluster-management.io/api/work/v1/types.go b/vendor/open-cluster-management.io/api/work/v1/types.go index 39b8ec2b2..0a66a837d 100644 --- a/vendor/open-cluster-management.io/api/work/v1/types.go +++ b/vendor/open-cluster-management.io/api/work/v1/types.go @@ -162,8 +162,10 @@ type UpdateStrategy struct { // ServerSideApply type means to update resource using server side apply with work-controller as the field manager. // If there is conflict, the related Applied condition of manifest will be in the status of False with the // reason of ApplyConflict. + // ReadOnly type means the agent will only check the existence of the resource based on its metadata, + // statusFeedBackRules can still be used to get feedbackResults. // +kubebuilder:default=Update - // +kubebuilder:validation:Enum=Update;CreateOnly;ServerSideApply + // +kubebuilder:validation:Enum=Update;CreateOnly;ServerSideApply;ReadOnly // +kubebuilder:validation:Required // +required Type UpdateStrategyType `json:"type,omitempty"` @@ -177,18 +179,23 @@ type UpdateStrategy struct { type UpdateStrategyType string const ( - // Update type means to update resource by an update call. + // UpdateStrategyTypeUpdate means to update resource by an update call. UpdateStrategyTypeUpdate UpdateStrategyType = "Update" - // CreateOnly type means do not update resource based on current manifest. This should be used only when + // UpdateStrategyTypeCreateOnly means do not update resource based on current manifest. This should be used only when // ServerSideApply type is not support on the spoke, and the user on hub would like some other controller // on the spoke to own the control of the resource. UpdateStrategyTypeCreateOnly UpdateStrategyType = "CreateOnly" - // ServerSideApply type means to update resource using server side apply with work-controller as the field manager. + // UpdateStrategyTypeServerSideApply means to update resource using server side apply with work-controller as the field manager. // If there is conflict, the related Applied condition of manifest will be in the status of False with the // reason of ApplyConflict. This type allows another controller on the spoke to control certain field of the resource. UpdateStrategyTypeServerSideApply UpdateStrategyType = "ServerSideApply" + + // UpdateStrategyTypeReadOnly type means only check the existence of the resource based on the resource's metadata. + // If the statusFeedBackRules are set, the feedbackResult will also be returned. + // The resource will not be removed when the type is ReadOnly, and only resource metadata is required. + UpdateStrategyTypeReadOnly UpdateStrategyType = "ReadOnly" ) type ServerSideApplyConfig struct { diff --git a/vendor/open-cluster-management.io/api/work/v1/zz_generated.swagger_doc_generated.go b/vendor/open-cluster-management.io/api/work/v1/zz_generated.swagger_doc_generated.go index 8689d32f8..0b4e308dc 100644 --- a/vendor/open-cluster-management.io/api/work/v1/zz_generated.swagger_doc_generated.go +++ b/vendor/open-cluster-management.io/api/work/v1/zz_generated.swagger_doc_generated.go @@ -287,7 +287,7 @@ func (StatusFeedbackResult) SwaggerDoc() map[string]string { var map_UpdateStrategy = map[string]string{ "": "UpdateStrategy defines the strategy to update this manifest", - "type": "type defines the strategy to update this manifest, default value is Update. Update type means to update resource by an update call. CreateOnly type means do not update resource based on current manifest. ServerSideApply type means to update resource using server side apply with work-controller as the field manager. If there is conflict, the related Applied condition of manifest will be in the status of False with the reason of ApplyConflict.", + "type": "type defines the strategy to update this manifest, default value is Update. Update type means to update resource by an update call. CreateOnly type means do not update resource based on current manifest. ServerSideApply type means to update resource using server side apply with work-controller as the field manager. If there is conflict, the related Applied condition of manifest will be in the status of False with the reason of ApplyConflict. ReadOnly type means the agent will only check the existence of the resource based on its metadata, statusFeedBackRules can still be used to get feedbackResults.", "serverSideApply": "serverSideApply defines the configuration for server side apply. It is honored only when type of updateStrategy is ServerSideApply", }