summaryrefslogtreecommitdiff
path: root/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go')
-rw-r--r--vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go66
1 files changed, 44 insertions, 22 deletions
diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go
index d84878d7c..79e2ad48a 100644
--- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go
+++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go
@@ -99,10 +99,16 @@ type ListMeta struct {
RemainingItemCount *int64 `json:"remainingItemCount,omitempty" protobuf:"bytes,4,opt,name=remainingItemCount"`
}
+// Field path constants that are specific to the internal API
+// representation.
+const (
+ ObjectNameField = "metadata.name"
+)
+
// These are internal finalizer values for Kubernetes-like APIs, must be qualified name unless defined here
const (
- FinalizerOrphanDependents string = "orphan"
- FinalizerDeleteDependents string = "foregroundDeletion"
+ FinalizerOrphanDependents = "orphan"
+ FinalizerDeleteDependents = "foregroundDeletion"
)
// ObjectMeta is metadata that all persisted resources must have, which includes all objects
@@ -283,15 +289,15 @@ type ObjectMeta struct {
const (
// NamespaceDefault means the object is in the default namespace which is applied when not specified by clients
- NamespaceDefault string = "default"
+ NamespaceDefault = "default"
// NamespaceAll is the default argument to specify on a context when you want to list or filter resources across all namespaces
- NamespaceAll string = ""
+ NamespaceAll = ""
// NamespaceNone is the argument for a context when there is no namespace.
- NamespaceNone string = ""
+ NamespaceNone = ""
// NamespaceSystem is the system namespace where we place system components.
- NamespaceSystem string = "kube-system"
+ NamespaceSystem = "kube-system"
// NamespacePublic is the namespace where we place public info (ConfigMaps)
- NamespacePublic string = "kube-public"
+ NamespacePublic = "kube-public"
)
// OwnerReference contains enough information to let you identify an owning
@@ -433,21 +439,6 @@ const (
// +k8s:conversion-gen:explicit-from=net/url.Values
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
-// ExportOptions is the query options to the standard REST get call.
-// Deprecated. Planned for removal in 1.18.
-type ExportOptions struct {
- TypeMeta `json:",inline"`
- // Should this value be exported. Export strips fields that a user can not specify.
- // Deprecated. Planned for removal in 1.18.
- Export bool `json:"export" protobuf:"varint,1,opt,name=export"`
- // Should the export be exact. Exact export maintains cluster-specific fields like 'Namespace'.
- // Deprecated. Planned for removal in 1.18.
- Exact bool `json:"exact" protobuf:"varint,2,opt,name=exact"`
-}
-
-// +k8s:conversion-gen:explicit-from=net/url.Values
-// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
-
// GetOptions is the standard query options to the standard REST get call.
type GetOptions struct {
TypeMeta `json:",inline"`
@@ -589,6 +580,37 @@ type PatchOptions struct {
FieldManager string `json:"fieldManager,omitempty" protobuf:"bytes,3,name=fieldManager"`
}
+// ApplyOptions may be provided when applying an API object.
+// FieldManager is required for apply requests.
+// ApplyOptions is equivalent to PatchOptions. It is provided as a convenience with documentation
+// that speaks specifically to how the options fields relate to apply.
+type ApplyOptions struct {
+ TypeMeta `json:",inline"`
+
+ // When present, indicates that modifications should not be
+ // persisted. An invalid or unrecognized dryRun directive will
+ // result in an error response and no further processing of the
+ // request. Valid values are:
+ // - All: all dry run stages will be processed
+ // +optional
+ DryRun []string `json:"dryRun,omitempty" protobuf:"bytes,1,rep,name=dryRun"`
+
+ // Force is going to "force" Apply requests. It means user will
+ // re-acquire conflicting fields owned by other people.
+ Force bool `json:"force" protobuf:"varint,2,opt,name=force"`
+
+ // fieldManager is a name associated with the actor or entity
+ // that is making these changes. The value must be less than or
+ // 128 characters long, and only contain printable characters,
+ // as defined by https://golang.org/pkg/unicode/#IsPrint. This
+ // field is required.
+ FieldManager string `json:"fieldManager" protobuf:"bytes,3,name=fieldManager"`
+}
+
+func (o ApplyOptions) ToPatchOptions() PatchOptions {
+ return PatchOptions{DryRun: o.DryRun, Force: &o.Force, FieldManager: o.FieldManager}
+}
+
// +k8s:conversion-gen:explicit-from=net/url.Values
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object