kops
@@ -21,12 +21,70 @@
-
-apiVersion: kops/v1alpha2
-kind: Cluster
-metadata:
- name: cluster-example
-spec:
+
+apiVersion : kops/v1alpha2
+kind : Cluster
+metadata :
+ creationTimestamp : "2019-12-10T22:42:27Z"
+ name : test.example.com
+spec :
+ api :
+ loadBalancer :
+ type : Public
+ additionalSecurityGroups :
+ - sg-exampleid3
+ - sg-exampleid4
+ authorization :
+ rbac : {}
+ kubernetesApiAccess :
+ - 0.0 .0.0 /0
+ channel : stable
+ cloudProvider : aws
+ cloudLabels :
+ Owner : John Doe
+ foo/bar : fib+baz
+ configBase : s3 :
+ etcdClusters :
+ - etcdMembers :
+ - instanceGroup : master-us-test-1 a
+ name : us-test-1 a
+ name : main
+ version : 3.0 .17
+ - etcdMembers :
+ - instanceGroup : master-us-test-1 a
+ name : us-test-1 a
+ name : events
+ version : 3.0 .17
+ kubeAPIServer :
+ serviceNodePortRange : 28000 -32767
+ kubernetesVersion : 1.8 .5
+ masterInternalName : api.internal.test.example.com
+ masterPublicName : api.test.example.com
+ networkCIDR : 172.20 .0.0 /16
+ networkID : vpc-12345678
+ networking :
+ weave :
+ mtu : 8912
+ nodePortAccess :
+ - 1.2 .3.4 /32
+ - 10.20 .30.0 /24
+ nonMasqueradeCIDR : 100.64 .0.0 /10
+ sshAccess :
+ - 0.0 .0.0 /0
+ subnets :
+ - cidr : 172.20 .32.0 /19
+ id : subnet-12345678
+ name : us-test-1 a
+ type : Public
+ zone : us-test-1 a
+ - cidr : 172.20 .4.0 /22
+ name : utility-us-test-1 a
+ type : Utility
+ zone : us-test-1 a
+ id : subnet-12345679
+ topology :
+ masters : private
+ nodes : private
@@ -227,7 +285,7 @@ Appears In:
kubernetesVersion string
-The version of kubernetes to install (optional, and can be a "spec" like stable)
+The version of kubernetes to install (optional, and can be a "spec" like stable)
masterInternalName string
@@ -259,7 +317,7 @@ Appears In:
nonMasqueradeCIDR string
-MasterIPRange string json:",omitempty"
NonMasqueradeCIDR is the CIDR for the internal k8s network (on which pods & services live) It cannot overlap ServiceClusterIPRange
+MasterIPRange string json:",omitempty"
NonMasqueradeCIDR is the CIDR for the internal k8s network (on which pods & services live) It cannot overlap ServiceClusterIPRange
project string
@@ -286,6 +344,10 @@ Appears In:
Configuration of subnets we are targeting
+target TargetSpec
+Target allows for us to nest extra config for targets such as terraform
+
+
topology TopologySpec
Topology defines the type of network topology to use on the cluster - default public This is heavily weighted towards AWS for the time being, but should also be agnostic enough to port out to GCE later if needed
@@ -327,12 +389,33 @@ Appears In:
-
-apiVersion: kops/v1alpha2
-kind: InstanceGroup
-metadata:
- name: instancegroup-example
-spec:
+
+apiVersion: kops/v1alpha2
+kind: InstanceGroup
+metadata:
+ creationTimestamp: null
+ labels:
+ kops.k8s.io/cluster: test.aws.k8spro.com
+ name: nodes
+spec:
+ image: kope.io/k8s-1.8-debian-jessie-amd64-hvm-ebs-2017-12-02
+ machineType: t2.medium
+ maxSize: 2
+ minSize: 2
+ minPrice: "0.2"
+ cloudLabels:
+ team: me
+ project: ion
+ nodeLabels:
+ kops.k8s.io/instancegroup: nodes
+ role: Node
+ rootVolumeSize: 200
+ rootVolumeOptimization: true
+ subnets:
+ - us-west-2a
+ taints:
+ - dedicated=gpu:NoSchedule
+ - team=search:PreferNoSchedule
@@ -617,7 +700,7 @@ Appears In:
group string
-group is the preferred group of the resource. Empty implies the group of the containing resource list. For subresources, this may have a different value, for example: Scale".
+group is the preferred group of the resource. Empty implies the group of the containing resource list. For subresources, this may have a different value, for example: Scale".
kind string
@@ -645,7 +728,7 @@ Appears In:
version string
-version is the preferred version of the resource. Empty implies the version of the containing resource list For subresources, this may have a different value, for example: v1 (while inside a v1beta1 version of the core resource's group)".
+version is the preferred version of the resource. Empty implies the version of the containing resource list For subresources, this may have a different value, for example: v1 (while inside a v1beta1 version of the core resource's group)".
@@ -1440,7 +1523,7 @@ Appears In:
orphanDependents boolean
-Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the "orphan" finalizer will be added to/removed from the object's finalizers list. Either this field or PropagationPolicy may be set, but not both.
+Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the "orphan" finalizer will be added to/removed from the object's finalizers list. Either this field or PropagationPolicy may be set, but not both.
preconditions Preconditions
@@ -1448,7 +1531,7 @@ Appears In:
propagationPolicy string
-Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy.
+Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: 'Orphan' - orphan the dependents; 'Background' - allow the garbage collector to delete the dependents in the background; 'Foreground' - a cascading policy that deletes all dependents in the foreground.
@@ -1515,11 +1598,11 @@ Appears In:
logDriver string
-LogDriver is the defailt driver for container logs (default "json-file")
+LogDriver is the defailt driver for container logs (default "json-file")
logLevel string
-LogLevel is the logging level ("debug", "info", "warn", "error", "fatal") (default "info")
+LogLevel is the logging level ("debug", "info", "warn", "error", "fatal") (default "info")
logOpt string array
@@ -1677,6 +1760,10 @@ Appears In:
HeartbeatInterval is the time (in milliseconds) for an etcd heartbeat interval
+image string
+Image is the etcd docker image to use. Setting this will ignore the Version specified.
+
+
leaderElectionTimeout Duration
LeaderElectionTimeout is the time (in milliseconds) for an etcd leader election timeout
@@ -1993,7 +2080,7 @@ Appears In:
-GroupVersion contains the "group/version" and "version" string of a version. It is made a struct to keep extensibility.
+GroupVersion contains the "group/version" and "version" string of a version. It is made a struct to keep extensibility.
Appears In:
@@ -2011,11 +2098,11 @@ Appears In:
groupVersion string
-groupVersion specifies the API group and version in the form "group/version"
+groupVersion specifies the API group and version in the form "group/version"
version string
-version specifies the version in the form of "version". This is to save the clients the trouble of splitting the GroupVersion.
+version specifies the version in the form of "version". This is to save the clients the trouble of splitting the GroupVersion.
@@ -2113,7 +2200,7 @@ Appears In:
name string
-Name is an optional name for the hook, otherwise the name is kops-hook-
+Name is an optional name for the hook, otherwise the name is kops-hook-<index>
requires string array
@@ -2483,6 +2570,10 @@ Appears In:
LogLevel is the logging level of the api
+maxRequestsInflight integer
+MaxRequestsInflight The maximum number of non-mutating requests in flight at a given time.
+
+
oidcCAFile string
OIDCCAFile if set, the OpenID server's certificate will be verified by one of the authorities in the oidc-ca-file
@@ -2970,12 +3061,16 @@ Appears In:
Comma-delimited list of grace periods for each soft eviction signal. For example, 'memory.available=30s'.
+failSwapOn boolean
+Tells the Kubelet to fail to start if swap is enabled on the node.
+
+
featureGates object
FeatureGates is set of key=value pairs that describe feature gates for alpha/experimental features.
hairpinMode string
-How should the kubelet configure the container bridge for hairpin packets. Setting this flag allows endpoints in a Service to loadbalance back to themselves if they should try to access their own Service. Values: "promiscuous-bridge": make the container bridge promiscuous. "hairpin-veth": set the hairpin flag on container veth interfaces. "none": do nothing. Setting --configure-cbr0 to false implies that to achieve hairpin NAT one must set --hairpin-mode=veth-flag, because bridge assumes the existence of a container bridge named cbr0.
+How should the kubelet configure the container bridge for hairpin packets. Setting this flag allows endpoints in a Service to loadbalance back to themselves if they should try to access their own Service. Values: "promiscuous-bridge": make the container bridge promiscuous. "hairpin-veth": set the hairpin flag on container veth interfaces. "none": do nothing. Setting --configure-cbr0 to false implies that to achieve hairpin NAT one must set --hairpin-mode=veth-flag, because bridge assumes the existence of a container bridge named cbr0.
hostnameOverride string
@@ -3071,7 +3166,7 @@ Appears In:
resolvConf string
-ResolverConfig is the resolver configuration file used as the basis for the container DNS resolution configuration."), []
+ResolverConfig is the resolver configuration file used as the basis for the container DNS resolution configuration."), []
runtimeCgroups string
@@ -3463,7 +3558,7 @@ Appears In:
deletionTimestamp Time
-DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This field is set by the server when a graceful deletion is requested by the user, and is not directly settable by a client. The resource is expected to be deleted (no longer visible from resource lists, and not reachable by name) after the time in this field. Once set, this value may not be unset or be set further into the future, although it may be shortened or the resource may be deleted prior to this time. For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, remove the pod from the API. In the presence of network partitions, this object may still exist after this timestamp, until an administrator or automated process can determine the resource is fully terminated. If not set, graceful deletion of the object has not been requested. Populated by the system when a graceful deletion is requested. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
+DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This field is set by the server when a graceful deletion is requested by the user, and is not directly settable by a client. The resource is expected to be deleted (no longer visible from resource lists, and not reachable by name) after the time in this field, once the finalizers list is empty. As long as the finalizers list contains items, deletion is blocked. Once the deletionTimestamp is set, this value may not be unset or be set further into the future, although it may be shortened or the resource may be deleted prior to this time. For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, remove the pod from the API. In the presence of network partitions, this object may still exist after this timestamp, until an administrator or automated process can determine the resource is fully terminated. If not set, graceful deletion of the object has not been requested. Populated by the system when a graceful deletion is requested. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
finalizers string array patch type : merge
@@ -3491,7 +3586,7 @@ Appears In:
namespace string
-Namespace defines the space within each name must be unique. An empty namespace is equivalent to the "default" namespace, but "default" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty. Must be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces
+Namespace defines the space within each name must be unique. An empty namespace is equivalent to the "default" namespace, but "default" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty. Must be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces
ownerReferences OwnerReference array patch type : merge patch merge key : uid
@@ -3550,7 +3645,7 @@ Appears In:
blockOwnerDeletion boolean
-If true, AND if the owner has the "foregroundDeletion" finalizer, then the owner cannot be deleted from the key-value store until this reference is removed. Defaults to false. To set this field, a user needs "delete" permission of the owner, otherwise 422 (Unprocessable Entity) will be returned.
+If true, AND if the owner has the "foregroundDeletion" finalizer, then the owner cannot be deleted from the key-value store until this reference is removed. Defaults to false. To set this field, a user needs "delete" permission of the owner, otherwise 422 (Unprocessable Entity) will be returned.
controller boolean
@@ -3822,11 +3917,11 @@ Appears In:
reason string
-A machine-readable description of why this operation is in the "Failure" status. If this value is empty there is no information available. A Reason clarifies an HTTP status code but does not override it.
+A machine-readable description of why this operation is in the "Failure" status. If this value is empty there is no information available. A Reason clarifies an HTTP status code but does not override it.
status string
-Status of the operation. One of: "Success" or "Failure". More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status
+Status of the operation. One of: "Success" or "Failure". More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status
@@ -3865,7 +3960,7 @@ Appears In:
field string
-The field of the resource that has caused this error, as named by its JSON serialization. May include dot and postfix notation for nested attributes. Arrays are zero-indexed. Fields may appear more than once in an array of causes due to fields having multiple errors. Optional. Examples: "name" - the field "name" on the current resource "items[0].name" - the field "name" on the first array entry in "items"
+The field of the resource that has caused this error, as named by its JSON serialization. May include dot and postfix notation for nested attributes. Arrays are zero-indexed. Fields may appear more than once in an array of causes due to fields having multiple errors. Optional. Examples: "name" - the field "name" on the current resource "items[0].name" - the field "name" on the first array entry in "items"
message string
@@ -3936,6 +4031,84 @@ Appears In:
+TargetSpec v1alpha2 kops
+
+
+
+Group
+Version
+Kind
+
+
+
+
+kops
+v1alpha2
+TargetSpec
+
+
+
+TargetSpec allows for specifying target config in an extensible way
+
+
+
+
+
+
+
+Group
+Version
+Kind
+
+
+
+
+kops
+v1alpha2
+TerraformSpec
+
+
+
+TerraformSpec allows us to specify terraform config in an extensible way
+
+
+
+
+
+Field
+Description
+
+
+
+
+providerExtraConfig object
+ProviderExtraConfig contains key/value pairs to add to the rendered terraform "provider" block
+
+
+
@@ -4007,7 +4180,7 @@ Appears In:
bastion BastionSpec
-Bastion provide an external facing point of entry into a network containing private network instances. This host can provide a single point of fortification or audit and can be started and stopped to enable or disable inbound SSH communication from the Internet, some call bastion as the "jump server".
+Bastion provide an external facing point of entry into a network containing private network instances. This host can provide a single point of fortification or audit and can be started and stopped to enable or disable inbound SSH communication from the Internet, some call bastion as the "jump server".
dns DNSSpec
diff --git a/docs/apireference/build/manifest.json b/docs/apireference/build/manifest.json
index 5d697045b9..bb81e090ab 100644
--- a/docs/apireference/build/manifest.json
+++ b/docs/apireference/build/manifest.json
@@ -190,6 +190,12 @@
{
"filename": "_generated_statusdetails_v1_meta_definition.md"
},
+ {
+ "filename": "_generated_targetspec_v1alpha2_kops_definition.md"
+ },
+ {
+ "filename": "_generated_terraformspec_v1alpha2_kops_definition.md"
+ },
{
"filename": "_generated_time_v1_meta_definition.md"
},
diff --git a/docs/apireference/build/navData.js b/docs/apireference/build/navData.js
index 4e432a37c0..5f3242e05d 100644
--- a/docs/apireference/build/navData.js
+++ b/docs/apireference/build/navData.js
@@ -1 +1 @@
-(function(){navData = {"toc":[{"section":"-strong-old-versions-strong-","subsections":[]},{"section":"-strong-definitions-strong-","subsections":[{"section":"weavenetworkingspec-v1alpha2-kops"},{"section":"watchevent-v1-meta"},{"section":"userdata-v1alpha2-kops"},{"section":"topologyspec-v1alpha2-kops"},{"section":"time-v1-meta"},{"section":"statusdetails-v1-meta"},{"section":"statuscause-v1-meta"},{"section":"status-v1-meta"},{"section":"serveraddressbyclientcidr-v1-meta"},{"section":"romananetworkingspec-v1alpha2-kops"},{"section":"rbacauthorizationspec-v1alpha2-kops"},{"section":"preconditions-v1-meta"},{"section":"patch-v1-meta"},{"section":"ownerreference-v1-meta"},{"section":"objectmeta-v1-meta"},{"section":"networkingspec-v1alpha2-kops"},{"section":"loadbalanceraccessspec-v1alpha2-kops"},{"section":"listmeta-v1-meta"},{"section":"leaderelectionconfiguration-v1alpha2-kops"},{"section":"kuberouternetworkingspec-v1alpha2-kops"},{"section":"kubenetnetworkingspec-v1alpha2-kops"},{"section":"kubeletconfigspec-v1alpha2-kops"},{"section":"kubeschedulerconfig-v1alpha2-kops"},{"section":"kubeproxyconfig-v1alpha2-kops"},{"section":"kubednsconfig-v1alpha2-kops"},{"section":"kubecontrollermanagerconfig-v1alpha2-kops"},{"section":"kubeapiserverconfig-v1alpha2-kops"},{"section":"kopeionetworkingspec-v1alpha2-kops"},{"section":"kopeioauthenticationspec-v1alpha2-kops"},{"section":"initializers-v1-meta"},{"section":"initializer-v1-meta"},{"section":"iamspec-v1alpha2-kops"},{"section":"hookspec-v1alpha2-kops"},{"section":"httpproxy-v1alpha2-kops"},{"section":"groupversionfordiscovery-v1-meta"},{"section":"flannelnetworkingspec-v1alpha2-kops"},{"section":"fileassetspec-v1alpha2-kops"},{"section":"externalnetworkingspec-v1alpha2-kops"},{"section":"externaldnsconfig-v1alpha2-kops"},{"section":"execcontaineraction-v1alpha2-kops"},{"section":"etcdmemberspec-v1alpha2-kops"},{"section":"etcdclusterspec-v1alpha2-kops"},{"section":"egressproxyspec-v1alpha2-kops"},{"section":"duration-v1-meta"},{"section":"dockerconfig-v1alpha2-kops"},{"section":"deleteoptions-v1-meta"},{"section":"dnsspec-v1alpha2-kops"},{"section":"dnsaccessspec-v1alpha2-kops"},{"section":"clustersubnetspec-v1alpha2-kops"},{"section":"cloudcontrollermanagerconfig-v1alpha2-kops"},{"section":"cloudconfiguration-v1alpha2-kops"},{"section":"classicnetworkingspec-v1alpha2-kops"},{"section":"canalnetworkingspec-v1alpha2-kops"},{"section":"caliconetworkingspec-v1alpha2-kops"},{"section":"cninetworkingspec-v1alpha2-kops"},{"section":"bastionspec-v1alpha2-kops"},{"section":"authorizationspec-v1alpha2-kops"},{"section":"authenticationspec-v1alpha2-kops"},{"section":"assets-v1alpha2-kops"},{"section":"amazonvpcnetworkingspec-v1alpha2-kops"},{"section":"alwaysallowauthorizationspec-v1alpha2-kops"},{"section":"accessspec-v1alpha2-kops"},{"section":"apiresource-v1-meta"},{"section":"apigroup-v1-meta"}]},{"section":"instancegroup-v1alpha2-kops","subsections":[]},{"section":"cluster-v1alpha2-kops","subsections":[]},{"section":"-strong-kops-strong-","subsections":[]}],"flatToc":["-strong-old-versions-strong-","weavenetworkingspec-v1alpha2-kops","watchevent-v1-meta","userdata-v1alpha2-kops","topologyspec-v1alpha2-kops","time-v1-meta","statusdetails-v1-meta","statuscause-v1-meta","status-v1-meta","serveraddressbyclientcidr-v1-meta","romananetworkingspec-v1alpha2-kops","rbacauthorizationspec-v1alpha2-kops","preconditions-v1-meta","patch-v1-meta","ownerreference-v1-meta","objectmeta-v1-meta","networkingspec-v1alpha2-kops","loadbalanceraccessspec-v1alpha2-kops","listmeta-v1-meta","leaderelectionconfiguration-v1alpha2-kops","kuberouternetworkingspec-v1alpha2-kops","kubenetnetworkingspec-v1alpha2-kops","kubeletconfigspec-v1alpha2-kops","kubeschedulerconfig-v1alpha2-kops","kubeproxyconfig-v1alpha2-kops","kubednsconfig-v1alpha2-kops","kubecontrollermanagerconfig-v1alpha2-kops","kubeapiserverconfig-v1alpha2-kops","kopeionetworkingspec-v1alpha2-kops","kopeioauthenticationspec-v1alpha2-kops","initializers-v1-meta","initializer-v1-meta","iamspec-v1alpha2-kops","hookspec-v1alpha2-kops","httpproxy-v1alpha2-kops","groupversionfordiscovery-v1-meta","flannelnetworkingspec-v1alpha2-kops","fileassetspec-v1alpha2-kops","externalnetworkingspec-v1alpha2-kops","externaldnsconfig-v1alpha2-kops","execcontaineraction-v1alpha2-kops","etcdmemberspec-v1alpha2-kops","etcdclusterspec-v1alpha2-kops","egressproxyspec-v1alpha2-kops","duration-v1-meta","dockerconfig-v1alpha2-kops","deleteoptions-v1-meta","dnsspec-v1alpha2-kops","dnsaccessspec-v1alpha2-kops","clustersubnetspec-v1alpha2-kops","cloudcontrollermanagerconfig-v1alpha2-kops","cloudconfiguration-v1alpha2-kops","classicnetworkingspec-v1alpha2-kops","canalnetworkingspec-v1alpha2-kops","caliconetworkingspec-v1alpha2-kops","cninetworkingspec-v1alpha2-kops","bastionspec-v1alpha2-kops","authorizationspec-v1alpha2-kops","authenticationspec-v1alpha2-kops","assets-v1alpha2-kops","amazonvpcnetworkingspec-v1alpha2-kops","alwaysallowauthorizationspec-v1alpha2-kops","accessspec-v1alpha2-kops","apiresource-v1-meta","apigroup-v1-meta","-strong-definitions-strong-","instancegroup-v1alpha2-kops","cluster-v1alpha2-kops","-strong-kops-strong-"]};})();
\ No newline at end of file
+(function(){navData = {"toc":[{"section":"-strong-old-versions-strong-","subsections":[]},{"section":"-strong-definitions-strong-","subsections":[{"section":"weavenetworkingspec-v1alpha2-kops"},{"section":"watchevent-v1-meta"},{"section":"userdata-v1alpha2-kops"},{"section":"topologyspec-v1alpha2-kops"},{"section":"time-v1-meta"},{"section":"terraformspec-v1alpha2-kops"},{"section":"targetspec-v1alpha2-kops"},{"section":"statusdetails-v1-meta"},{"section":"statuscause-v1-meta"},{"section":"status-v1-meta"},{"section":"serveraddressbyclientcidr-v1-meta"},{"section":"romananetworkingspec-v1alpha2-kops"},{"section":"rbacauthorizationspec-v1alpha2-kops"},{"section":"preconditions-v1-meta"},{"section":"patch-v1-meta"},{"section":"ownerreference-v1-meta"},{"section":"objectmeta-v1-meta"},{"section":"networkingspec-v1alpha2-kops"},{"section":"loadbalanceraccessspec-v1alpha2-kops"},{"section":"listmeta-v1-meta"},{"section":"leaderelectionconfiguration-v1alpha2-kops"},{"section":"kuberouternetworkingspec-v1alpha2-kops"},{"section":"kubenetnetworkingspec-v1alpha2-kops"},{"section":"kubeletconfigspec-v1alpha2-kops"},{"section":"kubeschedulerconfig-v1alpha2-kops"},{"section":"kubeproxyconfig-v1alpha2-kops"},{"section":"kubednsconfig-v1alpha2-kops"},{"section":"kubecontrollermanagerconfig-v1alpha2-kops"},{"section":"kubeapiserverconfig-v1alpha2-kops"},{"section":"kopeionetworkingspec-v1alpha2-kops"},{"section":"kopeioauthenticationspec-v1alpha2-kops"},{"section":"initializers-v1-meta"},{"section":"initializer-v1-meta"},{"section":"iamspec-v1alpha2-kops"},{"section":"hookspec-v1alpha2-kops"},{"section":"httpproxy-v1alpha2-kops"},{"section":"groupversionfordiscovery-v1-meta"},{"section":"flannelnetworkingspec-v1alpha2-kops"},{"section":"fileassetspec-v1alpha2-kops"},{"section":"externalnetworkingspec-v1alpha2-kops"},{"section":"externaldnsconfig-v1alpha2-kops"},{"section":"execcontaineraction-v1alpha2-kops"},{"section":"etcdmemberspec-v1alpha2-kops"},{"section":"etcdclusterspec-v1alpha2-kops"},{"section":"egressproxyspec-v1alpha2-kops"},{"section":"duration-v1-meta"},{"section":"dockerconfig-v1alpha2-kops"},{"section":"deleteoptions-v1-meta"},{"section":"dnsspec-v1alpha2-kops"},{"section":"dnsaccessspec-v1alpha2-kops"},{"section":"clustersubnetspec-v1alpha2-kops"},{"section":"cloudcontrollermanagerconfig-v1alpha2-kops"},{"section":"cloudconfiguration-v1alpha2-kops"},{"section":"classicnetworkingspec-v1alpha2-kops"},{"section":"canalnetworkingspec-v1alpha2-kops"},{"section":"caliconetworkingspec-v1alpha2-kops"},{"section":"cninetworkingspec-v1alpha2-kops"},{"section":"bastionspec-v1alpha2-kops"},{"section":"authorizationspec-v1alpha2-kops"},{"section":"authenticationspec-v1alpha2-kops"},{"section":"assets-v1alpha2-kops"},{"section":"amazonvpcnetworkingspec-v1alpha2-kops"},{"section":"alwaysallowauthorizationspec-v1alpha2-kops"},{"section":"accessspec-v1alpha2-kops"},{"section":"apiresource-v1-meta"},{"section":"apigroup-v1-meta"}]},{"section":"instancegroup-v1alpha2-kops","subsections":[]},{"section":"cluster-v1alpha2-kops","subsections":[]},{"section":"-strong-kops-strong-","subsections":[]}],"flatToc":["-strong-old-versions-strong-","weavenetworkingspec-v1alpha2-kops","watchevent-v1-meta","userdata-v1alpha2-kops","topologyspec-v1alpha2-kops","time-v1-meta","terraformspec-v1alpha2-kops","targetspec-v1alpha2-kops","statusdetails-v1-meta","statuscause-v1-meta","status-v1-meta","serveraddressbyclientcidr-v1-meta","romananetworkingspec-v1alpha2-kops","rbacauthorizationspec-v1alpha2-kops","preconditions-v1-meta","patch-v1-meta","ownerreference-v1-meta","objectmeta-v1-meta","networkingspec-v1alpha2-kops","loadbalanceraccessspec-v1alpha2-kops","listmeta-v1-meta","leaderelectionconfiguration-v1alpha2-kops","kuberouternetworkingspec-v1alpha2-kops","kubenetnetworkingspec-v1alpha2-kops","kubeletconfigspec-v1alpha2-kops","kubeschedulerconfig-v1alpha2-kops","kubeproxyconfig-v1alpha2-kops","kubednsconfig-v1alpha2-kops","kubecontrollermanagerconfig-v1alpha2-kops","kubeapiserverconfig-v1alpha2-kops","kopeionetworkingspec-v1alpha2-kops","kopeioauthenticationspec-v1alpha2-kops","initializers-v1-meta","initializer-v1-meta","iamspec-v1alpha2-kops","hookspec-v1alpha2-kops","httpproxy-v1alpha2-kops","groupversionfordiscovery-v1-meta","flannelnetworkingspec-v1alpha2-kops","fileassetspec-v1alpha2-kops","externalnetworkingspec-v1alpha2-kops","externaldnsconfig-v1alpha2-kops","execcontaineraction-v1alpha2-kops","etcdmemberspec-v1alpha2-kops","etcdclusterspec-v1alpha2-kops","egressproxyspec-v1alpha2-kops","duration-v1-meta","dockerconfig-v1alpha2-kops","deleteoptions-v1-meta","dnsspec-v1alpha2-kops","dnsaccessspec-v1alpha2-kops","clustersubnetspec-v1alpha2-kops","cloudcontrollermanagerconfig-v1alpha2-kops","cloudconfiguration-v1alpha2-kops","classicnetworkingspec-v1alpha2-kops","canalnetworkingspec-v1alpha2-kops","caliconetworkingspec-v1alpha2-kops","cninetworkingspec-v1alpha2-kops","bastionspec-v1alpha2-kops","authorizationspec-v1alpha2-kops","authenticationspec-v1alpha2-kops","assets-v1alpha2-kops","amazonvpcnetworkingspec-v1alpha2-kops","alwaysallowauthorizationspec-v1alpha2-kops","accessspec-v1alpha2-kops","apiresource-v1-meta","apigroup-v1-meta","-strong-definitions-strong-","instancegroup-v1alpha2-kops","cluster-v1alpha2-kops","-strong-kops-strong-"]};})();
\ No newline at end of file
diff --git a/docs/cluster_spec.md b/docs/cluster_spec.md
index 441b0a277a..1582a33d88 100644
--- a/docs/cluster_spec.md
+++ b/docs/cluster_spec.md
@@ -164,6 +164,16 @@ You could use the [fileAssets](https://github.com/kubernetes/kops/blob/master/do
Example policy file can be found [here]( https://raw.githubusercontent.com/kubernetes/website/master/docs/tasks/debug-application-cluster/audit-policy.yaml)
+#### Max Requests Inflight
+
+The maximum number of non-mutating requests in flight at a given time. When the server exceeds this, it rejects requests. Zero for no limit. (default 400)
+
+```yaml
+spec:
+ kubeAPIServer:
+ maxRequestsInflight: 1000
+```
+
#### runtimeConfig
Keys and values here are translated into `--runtime-config` values for `kube-apiserver`, separated by commas.
diff --git a/nodeup/pkg/model/kube_apiserver_test.go b/nodeup/pkg/model/kube_apiserver_test.go
index dd6c15ab07..840d9f25f3 100644
--- a/nodeup/pkg/model/kube_apiserver_test.go
+++ b/nodeup/pkg/model/kube_apiserver_test.go
@@ -39,6 +39,12 @@ func Test_KubeAPIServer_BuildFlags(t *testing.T) {
},
"--insecure-port=0 --secure-port=443",
},
+ {
+ kops.KubeAPIServerConfig{
+ MaxRequestsInflight: 1000,
+ },
+ "--insecure-port=0 --max-requests-inflight=1000 --secure-port=0",
+ },
{
kops.KubeAPIServerConfig{
InsecurePort: 8080,
@@ -46,6 +52,14 @@ func Test_KubeAPIServer_BuildFlags(t *testing.T) {
},
"--insecure-port=8080 --secure-port=443",
},
+ {
+ kops.KubeAPIServerConfig{
+ InsecurePort: 8080,
+ SecurePort: 443,
+ MaxRequestsInflight: 1000,
+ },
+ "--insecure-port=8080 --max-requests-inflight=1000 --secure-port=443",
+ },
{
kops.KubeAPIServerConfig{
InsecurePort: 8080,
diff --git a/pkg/apis/kops/componentconfig.go b/pkg/apis/kops/componentconfig.go
index 80fe759d51..770cd3911a 100644
--- a/pkg/apis/kops/componentconfig.go
+++ b/pkg/apis/kops/componentconfig.go
@@ -293,6 +293,8 @@ type KubeAPIServerConfig struct {
RequestheaderAllowedNames []string `json:"requestheaderAllowedNames,omitempty" flag:"requestheader-allowed-names"`
// FeatureGates is set of key=value pairs that describe feature gates for alpha/experimental features.
FeatureGates map[string]string `json:"featureGates,omitempty" flag:"feature-gates"`
+ // MaxRequestsInflight The maximum number of non-mutating requests in flight at a given time.
+ MaxRequestsInflight int32 `json:"maxRequestsInflight,omitempty" flag:"max-requests-inflight" flag-empty:"0"`
}
// KubeControllerManagerConfig is the configuration for the controller
diff --git a/pkg/apis/kops/v1alpha1/componentconfig.go b/pkg/apis/kops/v1alpha1/componentconfig.go
index 0e47fc747b..502586d724 100644
--- a/pkg/apis/kops/v1alpha1/componentconfig.go
+++ b/pkg/apis/kops/v1alpha1/componentconfig.go
@@ -293,6 +293,8 @@ type KubeAPIServerConfig struct {
RequestheaderAllowedNames []string `json:"requestheaderAllowedNames,omitempty" flag:"requestheader-allowed-names"`
// FeatureGates is set of key=value pairs that describe feature gates for alpha/experimental features.
FeatureGates map[string]string `json:"featureGates,omitempty" flag:"feature-gates"`
+ // MaxRequestsInflight The maximum number of non-mutating requests in flight at a given time.
+ MaxRequestsInflight int32 `json:"maxRequestsInflight,omitempty" flag:"max-requests-inflight" flag-empty:"0"`
}
// KubeControllerManagerConfig is the configuration for the controller
diff --git a/pkg/apis/kops/v1alpha1/zz_generated.conversion.go b/pkg/apis/kops/v1alpha1/zz_generated.conversion.go
index 7cee469fa7..70b7b3bfb6 100644
--- a/pkg/apis/kops/v1alpha1/zz_generated.conversion.go
+++ b/pkg/apis/kops/v1alpha1/zz_generated.conversion.go
@@ -1804,6 +1804,7 @@ func autoConvert_v1alpha1_KubeAPIServerConfig_To_kops_KubeAPIServerConfig(in *Ku
out.RequestheaderClientCAFile = in.RequestheaderClientCAFile
out.RequestheaderAllowedNames = in.RequestheaderAllowedNames
out.FeatureGates = in.FeatureGates
+ out.MaxRequestsInflight = in.MaxRequestsInflight
return nil
}
@@ -1866,6 +1867,7 @@ func autoConvert_kops_KubeAPIServerConfig_To_v1alpha1_KubeAPIServerConfig(in *ko
out.RequestheaderClientCAFile = in.RequestheaderClientCAFile
out.RequestheaderAllowedNames = in.RequestheaderAllowedNames
out.FeatureGates = in.FeatureGates
+ out.MaxRequestsInflight = in.MaxRequestsInflight
return nil
}
diff --git a/pkg/apis/kops/v1alpha2/componentconfig.go b/pkg/apis/kops/v1alpha2/componentconfig.go
index 77b22586d0..15c204f283 100644
--- a/pkg/apis/kops/v1alpha2/componentconfig.go
+++ b/pkg/apis/kops/v1alpha2/componentconfig.go
@@ -293,6 +293,8 @@ type KubeAPIServerConfig struct {
RequestheaderAllowedNames []string `json:"requestheaderAllowedNames,omitempty" flag:"requestheader-allowed-names"`
// FeatureGates is set of key=value pairs that describe feature gates for alpha/experimental features.
FeatureGates map[string]string `json:"featureGates,omitempty" flag:"feature-gates"`
+ // MaxRequestsInflight The maximum number of non-mutating requests in flight at a given time.
+ MaxRequestsInflight int32 `json:"maxRequestsInflight,omitempty" flag:"max-requests-inflight" flag-empty:"0"`
}
// KubeControllerManagerConfig is the configuration for the controller
diff --git a/pkg/apis/kops/v1alpha2/zz_generated.conversion.go b/pkg/apis/kops/v1alpha2/zz_generated.conversion.go
index 92fcabf2db..1f3d7d94d9 100644
--- a/pkg/apis/kops/v1alpha2/zz_generated.conversion.go
+++ b/pkg/apis/kops/v1alpha2/zz_generated.conversion.go
@@ -2066,6 +2066,7 @@ func autoConvert_v1alpha2_KubeAPIServerConfig_To_kops_KubeAPIServerConfig(in *Ku
out.RequestheaderClientCAFile = in.RequestheaderClientCAFile
out.RequestheaderAllowedNames = in.RequestheaderAllowedNames
out.FeatureGates = in.FeatureGates
+ out.MaxRequestsInflight = in.MaxRequestsInflight
return nil
}
@@ -2128,6 +2129,7 @@ func autoConvert_kops_KubeAPIServerConfig_To_v1alpha2_KubeAPIServerConfig(in *ko
out.RequestheaderClientCAFile = in.RequestheaderClientCAFile
out.RequestheaderAllowedNames = in.RequestheaderAllowedNames
out.FeatureGates = in.FeatureGates
+ out.MaxRequestsInflight = in.MaxRequestsInflight
return nil
}
diff --git a/pkg/openapi/openapi_generated.go b/pkg/openapi/openapi_generated.go
index 815076603a..5c82f5912b 100644
--- a/pkg/openapi/openapi_generated.go
+++ b/pkg/openapi/openapi_generated.go
@@ -1,7 +1,7 @@
// +build !ignore_autogenerated
/*
-Copyright 2017 The Kubernetes Authors.
+Copyright 2018 The Kubernetes Authors.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -30,171 +30,6 @@ import (
func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition {
return map[string]common.OpenAPIDefinition{
- "k8s.io/api/admissionregistration/v1alpha1.AdmissionHookClientConfig": {
- Schema: spec.Schema{
- SchemaProps: spec.SchemaProps{
- Description: "AdmissionHookClientConfig contains the information to make a TLS connection with the webhook",
- Properties: map[string]spec.Schema{
- "service": {
- SchemaProps: spec.SchemaProps{
- Description: "Service is a reference to the service for this webhook. If there is only one port open for the service, that port will be used. If there are multiple ports open, port 443 will be used if it is open, otherwise it is an error. Required",
- Ref: ref("k8s.io/api/admissionregistration/v1alpha1.ServiceReference"),
- },
- },
- "caBundle": {
- SchemaProps: spec.SchemaProps{
- Description: "CABundle is a PEM encoded CA bundle which will be used to validate webhook's server certificate. Required",
- Type: []string{"string"},
- Format: "byte",
- },
- },
- },
- Required: []string{"service", "caBundle"},
- },
- },
- Dependencies: []string{
- "k8s.io/api/admissionregistration/v1alpha1.ServiceReference"},
- },
- "k8s.io/api/admissionregistration/v1alpha1.ExternalAdmissionHook": {
- Schema: spec.Schema{
- SchemaProps: spec.SchemaProps{
- Description: "ExternalAdmissionHook describes an external admission webhook and the resources and operations it applies to.",
- Properties: map[string]spec.Schema{
- "name": {
- SchemaProps: spec.SchemaProps{
- Description: "The name of the external admission webhook. Name should be fully qualified, e.g., imagepolicy.kubernetes.io, where \"imagepolicy\" is the name of the webhook, and kubernetes.io is the name of the organization. Required.",
- Type: []string{"string"},
- Format: "",
- },
- },
- "clientConfig": {
- SchemaProps: spec.SchemaProps{
- Description: "ClientConfig defines how to communicate with the hook. Required",
- Ref: ref("k8s.io/api/admissionregistration/v1alpha1.AdmissionHookClientConfig"),
- },
- },
- "rules": {
- SchemaProps: spec.SchemaProps{
- Description: "Rules describes what operations on what resources/subresources the webhook cares about. The webhook cares about an operation if it matches _any_ Rule.",
- Type: []string{"array"},
- Items: &spec.SchemaOrArray{
- Schema: &spec.Schema{
- SchemaProps: spec.SchemaProps{
- Ref: ref("k8s.io/api/admissionregistration/v1alpha1.RuleWithOperations"),
- },
- },
- },
- },
- },
- "failurePolicy": {
- SchemaProps: spec.SchemaProps{
- Description: "FailurePolicy defines how unrecognized errors from the admission endpoint are handled - allowed values are Ignore or Fail. Defaults to Ignore.",
- Type: []string{"string"},
- Format: "",
- },
- },
- },
- Required: []string{"name", "clientConfig"},
- },
- },
- Dependencies: []string{
- "k8s.io/api/admissionregistration/v1alpha1.AdmissionHookClientConfig", "k8s.io/api/admissionregistration/v1alpha1.RuleWithOperations"},
- },
- "k8s.io/api/admissionregistration/v1alpha1.ExternalAdmissionHookConfiguration": {
- Schema: spec.Schema{
- SchemaProps: spec.SchemaProps{
- Description: "ExternalAdmissionHookConfiguration describes the configuration of initializers.",
- Properties: map[string]spec.Schema{
- "kind": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#types-kinds",
- Type: []string{"string"},
- Format: "",
- },
- },
- "apiVersion": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#resources",
- Type: []string{"string"},
- Format: "",
- },
- },
- "metadata": {
- SchemaProps: spec.SchemaProps{
- Description: "Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata.",
- Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
- },
- },
- "externalAdmissionHooks": {
- VendorExtensible: spec.VendorExtensible{
- Extensions: spec.Extensions{
- "x-kubernetes-patch-merge-key": "name",
- "x-kubernetes-patch-strategy": "merge",
- },
- },
- SchemaProps: spec.SchemaProps{
- Description: "ExternalAdmissionHooks is a list of external admission webhooks and the affected resources and operations.",
- Type: []string{"array"},
- Items: &spec.SchemaOrArray{
- Schema: &spec.Schema{
- SchemaProps: spec.SchemaProps{
- Ref: ref("k8s.io/api/admissionregistration/v1alpha1.ExternalAdmissionHook"),
- },
- },
- },
- },
- },
- },
- },
- },
- Dependencies: []string{
- "k8s.io/api/admissionregistration/v1alpha1.ExternalAdmissionHook", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
- },
- "k8s.io/api/admissionregistration/v1alpha1.ExternalAdmissionHookConfigurationList": {
- Schema: spec.Schema{
- SchemaProps: spec.SchemaProps{
- Description: "ExternalAdmissionHookConfigurationList is a list of ExternalAdmissionHookConfiguration.",
- Properties: map[string]spec.Schema{
- "kind": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#types-kinds",
- Type: []string{"string"},
- Format: "",
- },
- },
- "apiVersion": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#resources",
- Type: []string{"string"},
- Format: "",
- },
- },
- "metadata": {
- SchemaProps: spec.SchemaProps{
- Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds",
- Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
- },
- },
- "items": {
- SchemaProps: spec.SchemaProps{
- Description: "List of ExternalAdmissionHookConfiguration.",
- Type: []string{"array"},
- Items: &spec.SchemaOrArray{
- Schema: &spec.Schema{
- SchemaProps: spec.SchemaProps{
- Ref: ref("k8s.io/api/admissionregistration/v1alpha1.ExternalAdmissionHookConfiguration"),
- },
- },
- },
- },
- },
- },
- Required: []string{"items"},
- },
- },
- Dependencies: []string{
- "k8s.io/api/admissionregistration/v1alpha1.ExternalAdmissionHookConfiguration", "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"},
- },
"k8s.io/api/admissionregistration/v1alpha1.Initializer": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -374,7 +209,154 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
Dependencies: []string{},
},
- "k8s.io/api/admissionregistration/v1alpha1.RuleWithOperations": {
+ "k8s.io/api/admissionregistration/v1beta1.MutatingWebhookConfiguration": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "MutatingWebhookConfiguration describes the configuration of and admission webhook that accept or reject and may change the object.",
+ Properties: map[string]spec.Schema{
+ "kind": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
+ },
+ },
+ "webhooks": {
+ VendorExtensible: spec.VendorExtensible{
+ Extensions: spec.Extensions{
+ "x-kubernetes-patch-merge-key": "name",
+ "x-kubernetes-patch-strategy": "merge",
+ },
+ },
+ SchemaProps: spec.SchemaProps{
+ Description: "Webhooks is a list of webhooks and the affected resources and operations.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/admissionregistration/v1beta1.Webhook"),
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/admissionregistration/v1beta1.Webhook", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
+ },
+ "k8s.io/api/admissionregistration/v1beta1.MutatingWebhookConfigurationList": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "MutatingWebhookConfigurationList is a list of MutatingWebhookConfiguration.",
+ Properties: map[string]spec.Schema{
+ "kind": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
+ },
+ },
+ "items": {
+ SchemaProps: spec.SchemaProps{
+ Description: "List of MutatingWebhookConfiguration.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/admissionregistration/v1beta1.MutatingWebhookConfiguration"),
+ },
+ },
+ },
+ },
+ },
+ },
+ Required: []string{"items"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/admissionregistration/v1beta1.MutatingWebhookConfiguration", "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"},
+ },
+ "k8s.io/api/admissionregistration/v1beta1.Rule": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "Rule is a tuple of APIGroups, APIVersion, and Resources.It is recommended to make sure that all the tuple expansions are valid.",
+ Properties: map[string]spec.Schema{
+ "apiGroups": {
+ SchemaProps: spec.SchemaProps{
+ Description: "APIGroups is the API groups the resources belong to. '*' is all groups. If '*' is present, the length of the slice must be one. Required.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ },
+ },
+ "apiVersions": {
+ SchemaProps: spec.SchemaProps{
+ Description: "APIVersions is the API versions the resources belong to. '*' is all versions. If '*' is present, the length of the slice must be one. Required.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ },
+ },
+ "resources": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Resources is a list of resources this rule applies to.\n\nFor example: 'pods' means pods. 'pods/log' means the log subresource of pods. '*' means all resources, but not subresources. 'pods/*' means all subresources of pods. '*/scale' means all scale subresources. '*/*' means all resources and their subresources.\n\nIf wildcard is present, the validation rule will ensure resources do not overlap with each other.\n\nDepending on the enclosing object, subresources might not be allowed. Required.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{},
+ },
+ "k8s.io/api/admissionregistration/v1beta1.RuleWithOperations": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
Description: "RuleWithOperations is a tuple of Operations and Resources. It is recommended to make sure that all the tuple expansions are valid.",
@@ -440,21 +422,28 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
Dependencies: []string{},
},
- "k8s.io/api/admissionregistration/v1alpha1.ServiceReference": {
+ "k8s.io/api/admissionregistration/v1beta1.ServiceReference": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
Description: "ServiceReference holds a reference to Service.legacy.k8s.io",
Properties: map[string]spec.Schema{
"namespace": {
SchemaProps: spec.SchemaProps{
- Description: "Namespace is the namespace of the service Required",
+ Description: "`namespace` is the namespace of the service. Required",
Type: []string{"string"},
Format: "",
},
},
"name": {
SchemaProps: spec.SchemaProps{
- Description: "Name is the name of the service Required",
+ Description: "`name` is the name of the service. Required",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "path": {
+ SchemaProps: spec.SchemaProps{
+ Description: "`path` is an optional URL path which will be sent in any request to this service.",
Type: []string{"string"},
Format: "",
},
@@ -465,6 +454,1486 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
Dependencies: []string{},
},
+ "k8s.io/api/admissionregistration/v1beta1.ValidatingWebhookConfiguration": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "ValidatingWebhookConfiguration describes the configuration of and admission webhook that accept or reject and object without changing it.",
+ Properties: map[string]spec.Schema{
+ "kind": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
+ },
+ },
+ "webhooks": {
+ VendorExtensible: spec.VendorExtensible{
+ Extensions: spec.Extensions{
+ "x-kubernetes-patch-merge-key": "name",
+ "x-kubernetes-patch-strategy": "merge",
+ },
+ },
+ SchemaProps: spec.SchemaProps{
+ Description: "Webhooks is a list of webhooks and the affected resources and operations.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/admissionregistration/v1beta1.Webhook"),
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/admissionregistration/v1beta1.Webhook", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
+ },
+ "k8s.io/api/admissionregistration/v1beta1.ValidatingWebhookConfigurationList": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "ValidatingWebhookConfigurationList is a list of ValidatingWebhookConfiguration.",
+ Properties: map[string]spec.Schema{
+ "kind": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
+ },
+ },
+ "items": {
+ SchemaProps: spec.SchemaProps{
+ Description: "List of ValidatingWebhookConfiguration.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/admissionregistration/v1beta1.ValidatingWebhookConfiguration"),
+ },
+ },
+ },
+ },
+ },
+ },
+ Required: []string{"items"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/admissionregistration/v1beta1.ValidatingWebhookConfiguration", "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"},
+ },
+ "k8s.io/api/admissionregistration/v1beta1.Webhook": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "Webhook describes an admission webhook and the resources and operations it applies to.",
+ Properties: map[string]spec.Schema{
+ "name": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The name of the admission webhook. Name should be fully qualified, e.g., imagepolicy.kubernetes.io, where \"imagepolicy\" is the name of the webhook, and kubernetes.io is the name of the organization. Required.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "clientConfig": {
+ SchemaProps: spec.SchemaProps{
+ Description: "ClientConfig defines how to communicate with the hook. Required",
+ Ref: ref("k8s.io/api/admissionregistration/v1beta1.WebhookClientConfig"),
+ },
+ },
+ "rules": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Rules describes what operations on what resources/subresources the webhook cares about. The webhook cares about an operation if it matches _any_ Rule.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/admissionregistration/v1beta1.RuleWithOperations"),
+ },
+ },
+ },
+ },
+ },
+ "failurePolicy": {
+ SchemaProps: spec.SchemaProps{
+ Description: "FailurePolicy defines how unrecognized errors from the admission endpoint are handled - allowed values are Ignore or Fail. Defaults to Ignore.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "namespaceSelector": {
+ SchemaProps: spec.SchemaProps{
+ Description: "NamespaceSelector decides whether to run the webhook on an object based on whether the namespace for that object matches the selector. If the object itself is a namespace, the matching is performed on object.metadata.labels. If the object is another cluster scoped resource, it never skips the webhook.\n\nFor example, to run the webhook on any objects whose namespace is not associated with \"runlevel\" of \"0\" or \"1\"; you will set the selector as follows: \"namespaceSelector\": {\n \"matchExpressions\": [\n {\n \"key\": \"runlevel\",\n \"operator\": \"NotIn\",\n \"values\": [\n \"0\",\n \"1\"\n ]\n }\n ]\n}\n\nIf instead you want to only run the webhook on any objects whose namespace is associated with the \"environment\" of \"prod\" or \"staging\"; you will set the selector as follows: \"namespaceSelector\": {\n \"matchExpressions\": [\n {\n \"key\": \"environment\",\n \"operator\": \"In\",\n \"values\": [\n \"prod\",\n \"staging\"\n ]\n }\n ]\n}\n\nSee https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ for more examples of label selectors.\n\nDefault to the empty LabelSelector, which matches everything.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"),
+ },
+ },
+ },
+ Required: []string{"name", "clientConfig"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/admissionregistration/v1beta1.RuleWithOperations", "k8s.io/api/admissionregistration/v1beta1.WebhookClientConfig", "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"},
+ },
+ "k8s.io/api/admissionregistration/v1beta1.WebhookClientConfig": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "WebhookClientConfig contains the information to make a TLS connection with the webhook",
+ Properties: map[string]spec.Schema{
+ "url": {
+ SchemaProps: spec.SchemaProps{
+ Description: "`url` gives the location of the webhook, in standard URL form (`[scheme://]host:port/path`). Exactly one of `url` or `service` must be specified.\n\nThe `host` should not refer to a service running in the cluster; use the `service` field instead. The host might be resolved via external DNS in some apiservers (e.g., `kube-apiserver` cannot resolve in-cluster DNS as that would be a layering violation). `host` may also be an IP address.\n\nPlease note that using `localhost` or `127.0.0.1` as a `host` is risky unless you take great care to run this webhook on all hosts which run an apiserver which might need to make calls to this webhook. Such installs are likely to be non-portable, i.e., not easy to turn up in a new cluster.\n\nThe scheme must be \"https\"; the URL must begin with \"https://\".\n\nA path is optional, and if present may be any string permissible in a URL. You may use the path to pass an arbitrary string to the webhook, for example, a cluster identifier.\n\nAttempting to use a user or basic auth e.g. \"user:password@\" is not allowed. Fragments (\"#...\") and query parameters (\"?...\") are not allowed, either.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "service": {
+ SchemaProps: spec.SchemaProps{
+ Description: "`service` is a reference to the service for this webhook. Either `service` or `url` must be specified.\n\nIf the webhook is running within the cluster, then you should use `service`.\n\nIf there is only one port open for the service, that port will be used. If there are multiple ports open, port 443 will be used if it is open, otherwise it is an error.",
+ Ref: ref("k8s.io/api/admissionregistration/v1beta1.ServiceReference"),
+ },
+ },
+ "caBundle": {
+ SchemaProps: spec.SchemaProps{
+ Description: "`caBundle` is a PEM encoded CA bundle which will be used to validate the webhook's server certificate. Required.",
+ Type: []string{"string"},
+ Format: "byte",
+ },
+ },
+ },
+ Required: []string{"caBundle"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/admissionregistration/v1beta1.ServiceReference"},
+ },
+ "k8s.io/api/apps/v1.ControllerRevision": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "ControllerRevision implements an immutable snapshot of state data. Clients are responsible for serializing and deserializing the objects that contain their internal state. Once a ControllerRevision has been successfully created, it can not be updated. The API Server will fail validation of all requests that attempt to mutate the Data field. ControllerRevisions may, however, be deleted. Note that, due to its use by both the DaemonSet and StatefulSet controllers for update and rollback, this object is beta. However, it may be subject to name and representation changes in future releases, and clients should not depend on its stability. It is primarily for internal use by controllers.",
+ Properties: map[string]spec.Schema{
+ "kind": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
+ },
+ },
+ "data": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Data is the serialized representation of the state.",
+ Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"),
+ },
+ },
+ "revision": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Revision indicates the revision of the state represented by Data.",
+ Type: []string{"integer"},
+ Format: "int64",
+ },
+ },
+ },
+ Required: []string{"revision"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta", "k8s.io/apimachinery/pkg/runtime.RawExtension"},
+ },
+ "k8s.io/api/apps/v1.ControllerRevisionList": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "ControllerRevisionList is a resource containing a list of ControllerRevision objects.",
+ Properties: map[string]spec.Schema{
+ "kind": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Description: "More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
+ },
+ },
+ "items": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Items is the list of ControllerRevisions",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/apps/v1.ControllerRevision"),
+ },
+ },
+ },
+ },
+ },
+ },
+ Required: []string{"items"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.ControllerRevision", "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"},
+ },
+ "k8s.io/api/apps/v1.DaemonSet": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "DaemonSet represents the configuration of a daemon set.",
+ Properties: map[string]spec.Schema{
+ "kind": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
+ },
+ },
+ "spec": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The desired behavior of this daemon set. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status",
+ Ref: ref("k8s.io/api/apps/v1.DaemonSetSpec"),
+ },
+ },
+ "status": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The current status of this daemon set. This data may be out of date by some window of time. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status",
+ Ref: ref("k8s.io/api/apps/v1.DaemonSetStatus"),
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.DaemonSetSpec", "k8s.io/api/apps/v1.DaemonSetStatus", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
+ },
+ "k8s.io/api/apps/v1.DaemonSetCondition": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "DaemonSetCondition describes the state of a DaemonSet at a certain point.",
+ Properties: map[string]spec.Schema{
+ "type": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Type of DaemonSet condition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "status": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Status of the condition, one of True, False, Unknown.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "lastTransitionTime": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Last time the condition transitioned from one status to another.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
+ },
+ },
+ "reason": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The reason for the condition's last transition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "message": {
+ SchemaProps: spec.SchemaProps{
+ Description: "A human readable message indicating details about the transition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ Required: []string{"type", "status"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/apimachinery/pkg/apis/meta/v1.Time"},
+ },
+ "k8s.io/api/apps/v1.DaemonSetList": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "DaemonSetList is a collection of daemon sets.",
+ Properties: map[string]spec.Schema{
+ "kind": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
+ },
+ },
+ "items": {
+ SchemaProps: spec.SchemaProps{
+ Description: "A list of daemon sets.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/apps/v1.DaemonSet"),
+ },
+ },
+ },
+ },
+ },
+ },
+ Required: []string{"items"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.DaemonSet", "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"},
+ },
+ "k8s.io/api/apps/v1.DaemonSetSpec": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "DaemonSetSpec is the specification of a daemon set.",
+ Properties: map[string]spec.Schema{
+ "selector": {
+ SchemaProps: spec.SchemaProps{
+ Description: "A label query over pods that are managed by the daemon set. Must match in order to be controlled. It must match the pod template's labels. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"),
+ },
+ },
+ "template": {
+ SchemaProps: spec.SchemaProps{
+ Description: "An object that describes the pod that will be created. The DaemonSet will create exactly one copy of this pod on every node that matches the template's node selector (or on every node if no node selector is specified). More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template",
+ Ref: ref("k8s.io/api/core/v1.PodTemplateSpec"),
+ },
+ },
+ "updateStrategy": {
+ SchemaProps: spec.SchemaProps{
+ Description: "An update strategy to replace existing DaemonSet pods with new pods.",
+ Ref: ref("k8s.io/api/apps/v1.DaemonSetUpdateStrategy"),
+ },
+ },
+ "minReadySeconds": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The minimum number of seconds for which a newly created DaemonSet pod should be ready without any of its container crashing, for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready).",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "revisionHistoryLimit": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The number of old history to retain to allow rollback. This is a pointer to distinguish between explicit zero and not specified. Defaults to 10.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ },
+ Required: []string{"selector", "template"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.DaemonSetUpdateStrategy", "k8s.io/api/core/v1.PodTemplateSpec", "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"},
+ },
+ "k8s.io/api/apps/v1.DaemonSetStatus": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "DaemonSetStatus represents the current status of a daemon set.",
+ Properties: map[string]spec.Schema{
+ "currentNumberScheduled": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The number of nodes that are running at least 1 daemon pod and are supposed to run the daemon pod. More info: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "numberMisscheduled": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The number of nodes that are running the daemon pod, but are not supposed to run the daemon pod. More info: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "desiredNumberScheduled": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The total number of nodes that should be running the daemon pod (including nodes correctly running the daemon pod). More info: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "numberReady": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The number of nodes that should be running the daemon pod and have one or more of the daemon pod running and ready.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "observedGeneration": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The most recent generation observed by the daemon set controller.",
+ Type: []string{"integer"},
+ Format: "int64",
+ },
+ },
+ "updatedNumberScheduled": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The total number of nodes that are running updated daemon pod",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "numberAvailable": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The number of nodes that should be running the daemon pod and have one or more of the daemon pod running and available (ready for at least spec.minReadySeconds)",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "numberUnavailable": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The number of nodes that should be running the daemon pod and have none of the daemon pod running and available (ready for at least spec.minReadySeconds)",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "collisionCount": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Count of hash collisions for the DaemonSet. The DaemonSet controller uses this field as a collision avoidance mechanism when it needs to create the name for the newest ControllerRevision.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "conditions": {
+ VendorExtensible: spec.VendorExtensible{
+ Extensions: spec.Extensions{
+ "x-kubernetes-patch-merge-key": "type",
+ "x-kubernetes-patch-strategy": "merge",
+ },
+ },
+ SchemaProps: spec.SchemaProps{
+ Description: "Represents the latest available observations of a DaemonSet's current state.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/apps/v1.DaemonSetCondition"),
+ },
+ },
+ },
+ },
+ },
+ },
+ Required: []string{"currentNumberScheduled", "numberMisscheduled", "desiredNumberScheduled", "numberReady"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.DaemonSetCondition"},
+ },
+ "k8s.io/api/apps/v1.DaemonSetUpdateStrategy": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "DaemonSetUpdateStrategy is a struct used to control the update strategy for a DaemonSet.",
+ Properties: map[string]spec.Schema{
+ "type": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Type of daemon set update. Can be \"RollingUpdate\" or \"OnDelete\". Default is RollingUpdate.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "rollingUpdate": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Rolling update config params. Present only if type = \"RollingUpdate\".",
+ Ref: ref("k8s.io/api/apps/v1.RollingUpdateDaemonSet"),
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.RollingUpdateDaemonSet"},
+ },
+ "k8s.io/api/apps/v1.Deployment": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "Deployment enables declarative updates for Pods and ReplicaSets.",
+ Properties: map[string]spec.Schema{
+ "kind": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Standard object metadata.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
+ },
+ },
+ "spec": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Specification of the desired behavior of the Deployment.",
+ Ref: ref("k8s.io/api/apps/v1.DeploymentSpec"),
+ },
+ },
+ "status": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Most recently observed status of the Deployment.",
+ Ref: ref("k8s.io/api/apps/v1.DeploymentStatus"),
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.DeploymentSpec", "k8s.io/api/apps/v1.DeploymentStatus", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
+ },
+ "k8s.io/api/apps/v1.DeploymentCondition": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "DeploymentCondition describes the state of a deployment at a certain point.",
+ Properties: map[string]spec.Schema{
+ "type": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Type of deployment condition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "status": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Status of the condition, one of True, False, Unknown.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "lastUpdateTime": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The last time this condition was updated.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
+ },
+ },
+ "lastTransitionTime": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Last time the condition transitioned from one status to another.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
+ },
+ },
+ "reason": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The reason for the condition's last transition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "message": {
+ SchemaProps: spec.SchemaProps{
+ Description: "A human readable message indicating details about the transition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ Required: []string{"type", "status"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/apimachinery/pkg/apis/meta/v1.Time"},
+ },
+ "k8s.io/api/apps/v1.DeploymentList": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "DeploymentList is a list of Deployments.",
+ Properties: map[string]spec.Schema{
+ "kind": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Standard list metadata.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
+ },
+ },
+ "items": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Items is the list of Deployments.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/apps/v1.Deployment"),
+ },
+ },
+ },
+ },
+ },
+ },
+ Required: []string{"items"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.Deployment", "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"},
+ },
+ "k8s.io/api/apps/v1.DeploymentSpec": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "DeploymentSpec is the specification of the desired behavior of the Deployment.",
+ Properties: map[string]spec.Schema{
+ "replicas": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Number of desired pods. This is a pointer to distinguish between explicit zero and not specified. Defaults to 1.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "selector": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Label selector for pods. Existing ReplicaSets whose pods are selected by this will be the ones affected by this deployment. It must match the pod template's labels.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"),
+ },
+ },
+ "template": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Template describes the pods that will be created.",
+ Ref: ref("k8s.io/api/core/v1.PodTemplateSpec"),
+ },
+ },
+ "strategy": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The deployment strategy to use to replace existing pods with new ones.",
+ Ref: ref("k8s.io/api/apps/v1.DeploymentStrategy"),
+ },
+ },
+ "minReadySeconds": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Minimum number of seconds for which a newly created pod should be ready without any of its container crashing, for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready)",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "revisionHistoryLimit": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The number of old ReplicaSets to retain to allow rollback. This is a pointer to distinguish between explicit zero and not specified. Defaults to 10.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "paused": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Indicates that the deployment is paused.",
+ Type: []string{"boolean"},
+ Format: "",
+ },
+ },
+ "progressDeadlineSeconds": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The maximum time in seconds for a deployment to make progress before it is considered to be failed. The deployment controller will continue to process failed deployments and a condition with a ProgressDeadlineExceeded reason will be surfaced in the deployment status. Note that progress will not be estimated during the time a deployment is paused. Defaults to 600s.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ },
+ Required: []string{"selector", "template"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.DeploymentStrategy", "k8s.io/api/core/v1.PodTemplateSpec", "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"},
+ },
+ "k8s.io/api/apps/v1.DeploymentStatus": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "DeploymentStatus is the most recently observed status of the Deployment.",
+ Properties: map[string]spec.Schema{
+ "observedGeneration": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The generation observed by the deployment controller.",
+ Type: []string{"integer"},
+ Format: "int64",
+ },
+ },
+ "replicas": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Total number of non-terminated pods targeted by this deployment (their labels match the selector).",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "updatedReplicas": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Total number of non-terminated pods targeted by this deployment that have the desired template spec.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "readyReplicas": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Total number of ready pods targeted by this deployment.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "availableReplicas": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Total number of available pods (ready for at least minReadySeconds) targeted by this deployment.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "unavailableReplicas": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Total number of unavailable pods targeted by this deployment. This is the total number of pods that are still required for the deployment to have 100% available capacity. They may either be pods that are running but not yet available or pods that still have not been created.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "conditions": {
+ VendorExtensible: spec.VendorExtensible{
+ Extensions: spec.Extensions{
+ "x-kubernetes-patch-merge-key": "type",
+ "x-kubernetes-patch-strategy": "merge",
+ },
+ },
+ SchemaProps: spec.SchemaProps{
+ Description: "Represents the latest available observations of a deployment's current state.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/apps/v1.DeploymentCondition"),
+ },
+ },
+ },
+ },
+ },
+ "collisionCount": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Count of hash collisions for the Deployment. The Deployment controller uses this field as a collision avoidance mechanism when it needs to create the name for the newest ReplicaSet.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.DeploymentCondition"},
+ },
+ "k8s.io/api/apps/v1.DeploymentStrategy": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "DeploymentStrategy describes how to replace existing pods with new ones.",
+ Properties: map[string]spec.Schema{
+ "type": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Type of deployment. Can be \"Recreate\" or \"RollingUpdate\". Default is RollingUpdate.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "rollingUpdate": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Rolling update config params. Present only if DeploymentStrategyType = RollingUpdate.",
+ Ref: ref("k8s.io/api/apps/v1.RollingUpdateDeployment"),
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.RollingUpdateDeployment"},
+ },
+ "k8s.io/api/apps/v1.ReplicaSet": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "ReplicaSet ensures that a specified number of pod replicas are running at any given time.",
+ Properties: map[string]spec.Schema{
+ "kind": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Description: "If the Labels of a ReplicaSet are empty, they are defaulted to be the same as the Pod(s) that the ReplicaSet manages. Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
+ },
+ },
+ "spec": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Spec defines the specification of the desired behavior of the ReplicaSet. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status",
+ Ref: ref("k8s.io/api/apps/v1.ReplicaSetSpec"),
+ },
+ },
+ "status": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Status is the most recently observed status of the ReplicaSet. This data may be out of date by some window of time. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status",
+ Ref: ref("k8s.io/api/apps/v1.ReplicaSetStatus"),
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.ReplicaSetSpec", "k8s.io/api/apps/v1.ReplicaSetStatus", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
+ },
+ "k8s.io/api/apps/v1.ReplicaSetCondition": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "ReplicaSetCondition describes the state of a replica set at a certain point.",
+ Properties: map[string]spec.Schema{
+ "type": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Type of replica set condition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "status": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Status of the condition, one of True, False, Unknown.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "lastTransitionTime": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The last time the condition transitioned from one status to another.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
+ },
+ },
+ "reason": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The reason for the condition's last transition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "message": {
+ SchemaProps: spec.SchemaProps{
+ Description: "A human readable message indicating details about the transition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ Required: []string{"type", "status"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/apimachinery/pkg/apis/meta/v1.Time"},
+ },
+ "k8s.io/api/apps/v1.ReplicaSetList": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "ReplicaSetList is a collection of ReplicaSets.",
+ Properties: map[string]spec.Schema{
+ "kind": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
+ },
+ },
+ "items": {
+ SchemaProps: spec.SchemaProps{
+ Description: "List of ReplicaSets. More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/apps/v1.ReplicaSet"),
+ },
+ },
+ },
+ },
+ },
+ },
+ Required: []string{"items"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.ReplicaSet", "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"},
+ },
+ "k8s.io/api/apps/v1.ReplicaSetSpec": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "ReplicaSetSpec is the specification of a ReplicaSet.",
+ Properties: map[string]spec.Schema{
+ "replicas": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Replicas is the number of desired replicas. This is a pointer to distinguish between explicit zero and unspecified. Defaults to 1. More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/#what-is-a-replicationcontroller",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "minReadySeconds": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Minimum number of seconds for which a newly created pod should be ready without any of its container crashing, for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready)",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "selector": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Selector is a label query over pods that should match the replica count. Label keys and values that must match in order to be controlled by this replica set. It must match the pod template's labels. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"),
+ },
+ },
+ "template": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Template is the object that describes the pod that will be created if insufficient replicas are detected. More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template",
+ Ref: ref("k8s.io/api/core/v1.PodTemplateSpec"),
+ },
+ },
+ },
+ Required: []string{"selector"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/core/v1.PodTemplateSpec", "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"},
+ },
+ "k8s.io/api/apps/v1.ReplicaSetStatus": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "ReplicaSetStatus represents the current status of a ReplicaSet.",
+ Properties: map[string]spec.Schema{
+ "replicas": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Replicas is the most recently oberved number of replicas. More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/#what-is-a-replicationcontroller",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "fullyLabeledReplicas": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The number of pods that have labels matching the labels of the pod template of the replicaset.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "readyReplicas": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The number of ready replicas for this replica set.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "availableReplicas": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The number of available replicas (ready for at least minReadySeconds) for this replica set.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "observedGeneration": {
+ SchemaProps: spec.SchemaProps{
+ Description: "ObservedGeneration reflects the generation of the most recently observed ReplicaSet.",
+ Type: []string{"integer"},
+ Format: "int64",
+ },
+ },
+ "conditions": {
+ VendorExtensible: spec.VendorExtensible{
+ Extensions: spec.Extensions{
+ "x-kubernetes-patch-merge-key": "type",
+ "x-kubernetes-patch-strategy": "merge",
+ },
+ },
+ SchemaProps: spec.SchemaProps{
+ Description: "Represents the latest available observations of a replica set's current state.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/apps/v1.ReplicaSetCondition"),
+ },
+ },
+ },
+ },
+ },
+ },
+ Required: []string{"replicas"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.ReplicaSetCondition"},
+ },
+ "k8s.io/api/apps/v1.RollingUpdateDaemonSet": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "Spec to control the desired behavior of daemon set rolling update.",
+ Properties: map[string]spec.Schema{
+ "maxUnavailable": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The maximum number of DaemonSet pods that can be unavailable during the update. Value can be an absolute number (ex: 5) or a percentage of total number of DaemonSet pods at the start of the update (ex: 10%). Absolute number is calculated from percentage by rounding up. This cannot be 0. Default value is 1. Example: when this is set to 30%, at most 30% of the total number of nodes that should be running the daemon pod (i.e. status.desiredNumberScheduled) can have their pods stopped for an update at any given time. The update starts by stopping at most 30% of those DaemonSet pods and then brings up new DaemonSet pods in their place. Once the new pods are available, it then proceeds onto other DaemonSet pods, thus ensuring that at least 70% of original number of DaemonSet pods are available at all times during the update.",
+ Ref: ref("k8s.io/apimachinery/pkg/util/intstr.IntOrString"),
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/apimachinery/pkg/util/intstr.IntOrString"},
+ },
+ "k8s.io/api/apps/v1.RollingUpdateDeployment": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "Spec to control the desired behavior of rolling update.",
+ Properties: map[string]spec.Schema{
+ "maxUnavailable": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The maximum number of pods that can be unavailable during the update. Value can be an absolute number (ex: 5) or a percentage of desired pods (ex: 10%). Absolute number is calculated from percentage by rounding down. This can not be 0 if MaxSurge is 0. Defaults to 25%. Example: when this is set to 30%, the old RC can be scaled down to 70% of desired pods immediately when the rolling update starts. Once new pods are ready, old RC can be scaled down further, followed by scaling up the new RC, ensuring that the total number of pods available at all times during the update is at least 70% of desired pods.",
+ Ref: ref("k8s.io/apimachinery/pkg/util/intstr.IntOrString"),
+ },
+ },
+ "maxSurge": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The maximum number of pods that can be scheduled above the desired number of pods. Value can be an absolute number (ex: 5) or a percentage of desired pods (ex: 10%). This can not be 0 if MaxUnavailable is 0. Absolute number is calculated from percentage by rounding up. Defaults to 25%. Example: when this is set to 30%, the new RC can be scaled up immediately when the rolling update starts, such that the total number of old and new pods do not exceed 130% of desired pods. Once old pods have been killed, new RC can be scaled up further, ensuring that total number of pods running at any time during the update is atmost 130% of desired pods.",
+ Ref: ref("k8s.io/apimachinery/pkg/util/intstr.IntOrString"),
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/apimachinery/pkg/util/intstr.IntOrString"},
+ },
+ "k8s.io/api/apps/v1.RollingUpdateStatefulSetStrategy": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "RollingUpdateStatefulSetStrategy is used to communicate parameter for RollingUpdateStatefulSetStrategyType.",
+ Properties: map[string]spec.Schema{
+ "partition": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Partition indicates the ordinal at which the StatefulSet should be partitioned. Default value is 0.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{},
+ },
+ "k8s.io/api/apps/v1.StatefulSet": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "StatefulSet represents a set of pods with consistent identities. Identities are defined as:\n - Network: A single stable DNS and hostname.\n - Storage: As many VolumeClaims as requested.\nThe StatefulSet guarantees that a given network identity will always map to the same storage identity.",
+ Properties: map[string]spec.Schema{
+ "kind": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
+ },
+ },
+ "spec": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Spec defines the desired identities of pods in this set.",
+ Ref: ref("k8s.io/api/apps/v1.StatefulSetSpec"),
+ },
+ },
+ "status": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Status is the current status of Pods in this StatefulSet. This data may be out of date by some window of time.",
+ Ref: ref("k8s.io/api/apps/v1.StatefulSetStatus"),
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.StatefulSetSpec", "k8s.io/api/apps/v1.StatefulSetStatus", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
+ },
+ "k8s.io/api/apps/v1.StatefulSetCondition": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "StatefulSetCondition describes the state of a statefulset at a certain point.",
+ Properties: map[string]spec.Schema{
+ "type": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Type of statefulset condition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "status": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Status of the condition, one of True, False, Unknown.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "lastTransitionTime": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Last time the condition transitioned from one status to another.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
+ },
+ },
+ "reason": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The reason for the condition's last transition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "message": {
+ SchemaProps: spec.SchemaProps{
+ Description: "A human readable message indicating details about the transition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ Required: []string{"type", "status"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/apimachinery/pkg/apis/meta/v1.Time"},
+ },
+ "k8s.io/api/apps/v1.StatefulSetList": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "StatefulSetList is a collection of StatefulSets.",
+ Properties: map[string]spec.Schema{
+ "kind": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
+ },
+ },
+ "items": {
+ SchemaProps: spec.SchemaProps{
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/apps/v1.StatefulSet"),
+ },
+ },
+ },
+ },
+ },
+ },
+ Required: []string{"items"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.StatefulSet", "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"},
+ },
+ "k8s.io/api/apps/v1.StatefulSetSpec": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "A StatefulSetSpec is the specification of a StatefulSet.",
+ Properties: map[string]spec.Schema{
+ "replicas": {
+ SchemaProps: spec.SchemaProps{
+ Description: "replicas is the desired number of replicas of the given Template. These are replicas in the sense that they are instantiations of the same Template, but individual replicas also have a consistent identity. If unspecified, defaults to 1.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "selector": {
+ SchemaProps: spec.SchemaProps{
+ Description: "selector is a label query over pods that should match the replica count. It must match the pod template's labels. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"),
+ },
+ },
+ "template": {
+ SchemaProps: spec.SchemaProps{
+ Description: "template is the object that describes the pod that will be created if insufficient replicas are detected. Each pod stamped out by the StatefulSet will fulfill this Template, but have a unique identity from the rest of the StatefulSet.",
+ Ref: ref("k8s.io/api/core/v1.PodTemplateSpec"),
+ },
+ },
+ "volumeClaimTemplates": {
+ SchemaProps: spec.SchemaProps{
+ Description: "volumeClaimTemplates is a list of claims that pods are allowed to reference. The StatefulSet controller is responsible for mapping network identities to claims in a way that maintains the identity of a pod. Every claim in this list must have at least one matching (by name) volumeMount in one container in the template. A claim in this list takes precedence over any volumes in the template, with the same name.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/core/v1.PersistentVolumeClaim"),
+ },
+ },
+ },
+ },
+ },
+ "serviceName": {
+ SchemaProps: spec.SchemaProps{
+ Description: "serviceName is the name of the service that governs this StatefulSet. This service must exist before the StatefulSet, and is responsible for the network identity of the set. Pods get DNS/hostnames that follow the pattern: pod-specific-string.serviceName.default.svc.cluster.local where \"pod-specific-string\" is managed by the StatefulSet controller.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "podManagementPolicy": {
+ SchemaProps: spec.SchemaProps{
+ Description: "podManagementPolicy controls how pods are created during initial scale up, when replacing pods on nodes, or when scaling down. The default policy is `OrderedReady`, where pods are created in increasing order (pod-0, then pod-1, etc) and the controller will wait until each pod is ready before continuing. When scaling down, the pods are removed in the opposite order. The alternative policy is `Parallel` which will create pods in parallel to match the desired scale without waiting, and on scale down will delete all pods at once.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "updateStrategy": {
+ SchemaProps: spec.SchemaProps{
+ Description: "updateStrategy indicates the StatefulSetUpdateStrategy that will be employed to update Pods in the StatefulSet when a revision is made to Template.",
+ Ref: ref("k8s.io/api/apps/v1.StatefulSetUpdateStrategy"),
+ },
+ },
+ "revisionHistoryLimit": {
+ SchemaProps: spec.SchemaProps{
+ Description: "revisionHistoryLimit is the maximum number of revisions that will be maintained in the StatefulSet's revision history. The revision history consists of all revisions not represented by a currently applied StatefulSetSpec version. The default value is 10.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ },
+ Required: []string{"selector", "template", "serviceName"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.StatefulSetUpdateStrategy", "k8s.io/api/core/v1.PersistentVolumeClaim", "k8s.io/api/core/v1.PodTemplateSpec", "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"},
+ },
+ "k8s.io/api/apps/v1.StatefulSetStatus": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "StatefulSetStatus represents the current state of a StatefulSet.",
+ Properties: map[string]spec.Schema{
+ "observedGeneration": {
+ SchemaProps: spec.SchemaProps{
+ Description: "observedGeneration is the most recent generation observed for this StatefulSet. It corresponds to the StatefulSet's generation, which is updated on mutation by the API Server.",
+ Type: []string{"integer"},
+ Format: "int64",
+ },
+ },
+ "replicas": {
+ SchemaProps: spec.SchemaProps{
+ Description: "replicas is the number of Pods created by the StatefulSet controller.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "readyReplicas": {
+ SchemaProps: spec.SchemaProps{
+ Description: "readyReplicas is the number of Pods created by the StatefulSet controller that have a Ready Condition.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "currentReplicas": {
+ SchemaProps: spec.SchemaProps{
+ Description: "currentReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version indicated by currentRevision.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "updatedReplicas": {
+ SchemaProps: spec.SchemaProps{
+ Description: "updatedReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version indicated by updateRevision.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "currentRevision": {
+ SchemaProps: spec.SchemaProps{
+ Description: "currentRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the sequence [0,currentReplicas).",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "updateRevision": {
+ SchemaProps: spec.SchemaProps{
+ Description: "updateRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the sequence [replicas-updatedReplicas,replicas)",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "collisionCount": {
+ SchemaProps: spec.SchemaProps{
+ Description: "collisionCount is the count of hash collisions for the StatefulSet. The StatefulSet controller uses this field as a collision avoidance mechanism when it needs to create the name for the newest ControllerRevision.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "conditions": {
+ VendorExtensible: spec.VendorExtensible{
+ Extensions: spec.Extensions{
+ "x-kubernetes-patch-merge-key": "type",
+ "x-kubernetes-patch-strategy": "merge",
+ },
+ },
+ SchemaProps: spec.SchemaProps{
+ Description: "Represents the latest available observations of a statefulset's current state.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/apps/v1.StatefulSetCondition"),
+ },
+ },
+ },
+ },
+ },
+ },
+ Required: []string{"replicas"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.StatefulSetCondition"},
+ },
+ "k8s.io/api/apps/v1.StatefulSetUpdateStrategy": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "StatefulSetUpdateStrategy indicates the strategy that the StatefulSet controller will use to perform updates. It includes any additional parameters necessary to perform the update for the indicated strategy.",
+ Properties: map[string]spec.Schema{
+ "type": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Type indicates the type of the StatefulSetUpdateStrategy. Default is RollingUpdate.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "rollingUpdate": {
+ SchemaProps: spec.SchemaProps{
+ Description: "RollingUpdate is used to communicate parameters when Type is RollingUpdateStatefulSetStrategyType.",
+ Ref: ref("k8s.io/api/apps/v1.RollingUpdateStatefulSetStrategy"),
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/apps/v1.RollingUpdateStatefulSetStrategy"},
+ },
"k8s.io/api/apps/v1beta1.ControllerRevision": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -1120,6 +2589,52 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Dependencies: []string{
"k8s.io/api/apps/v1beta1.StatefulSetSpec", "k8s.io/api/apps/v1beta1.StatefulSetStatus", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
},
+ "k8s.io/api/apps/v1beta1.StatefulSetCondition": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "StatefulSetCondition describes the state of a statefulset at a certain point.",
+ Properties: map[string]spec.Schema{
+ "type": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Type of statefulset condition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "status": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Status of the condition, one of True, False, Unknown.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "lastTransitionTime": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Last time the condition transitioned from one status to another.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
+ },
+ },
+ "reason": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The reason for the condition's last transition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "message": {
+ SchemaProps: spec.SchemaProps{
+ Description: "A human readable message indicating details about the transition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ Required: []string{"type", "status"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/apimachinery/pkg/apis/meta/v1.Time"},
+ },
"k8s.io/api/apps/v1beta1.StatefulSetList": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -1295,11 +2810,31 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Format: "int32",
},
},
+ "conditions": {
+ VendorExtensible: spec.VendorExtensible{
+ Extensions: spec.Extensions{
+ "x-kubernetes-patch-merge-key": "type",
+ "x-kubernetes-patch-strategy": "merge",
+ },
+ },
+ SchemaProps: spec.SchemaProps{
+ Description: "Represents the latest available observations of a statefulset's current state.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/apps/v1beta1.StatefulSetCondition"),
+ },
+ },
+ },
+ },
+ },
},
Required: []string{"replicas"},
},
},
- Dependencies: []string{},
+ Dependencies: []string{
+ "k8s.io/api/apps/v1beta1.StatefulSetCondition"},
},
"k8s.io/api/apps/v1beta1.StatefulSetUpdateStrategy": {
Schema: spec.Schema{
@@ -1328,7 +2863,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/api/apps/v1beta2.ControllerRevision": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
- Description: "ControllerRevision implements an immutable snapshot of state data. Clients are responsible for serializing and deserializing the objects that contain their internal state. Once a ControllerRevision has been successfully created, it can not be updated. The API Server will fail validation of all requests that attempt to mutate the Data field. ControllerRevisions may, however, be deleted. Note that, due to its use by both the DaemonSet and StatefulSet controllers for update and rollback, this object is beta. However, it may be subject to name and representation changes in future releases, and clients should not depend on its stability. It is primarily for internal use by controllers.",
+ Description: "DEPRECATED - This group version of ControllerRevision is deprecated by apps/v1/ControllerRevision. See the release notes for more information. ControllerRevision implements an immutable snapshot of state data. Clients are responsible for serializing and deserializing the objects that contain their internal state. Once a ControllerRevision has been successfully created, it can not be updated. The API Server will fail validation of all requests that attempt to mutate the Data field. ControllerRevisions may, however, be deleted. Note that, due to its use by both the DaemonSet and StatefulSet controllers for update and rollback, this object is beta. However, it may be subject to name and representation changes in future releases, and clients should not depend on its stability. It is primarily for internal use by controllers.",
Properties: map[string]spec.Schema{
"kind": {
SchemaProps: spec.SchemaProps{
@@ -1418,7 +2953,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/api/apps/v1beta2.DaemonSet": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
- Description: "DaemonSet represents the configuration of a daemon set.",
+ Description: "DEPRECATED - This group version of DaemonSet is deprecated by apps/v1/DaemonSet. See the release notes for more information. DaemonSet represents the configuration of a daemon set.",
Properties: map[string]spec.Schema{
"kind": {
SchemaProps: spec.SchemaProps{
@@ -1458,6 +2993,52 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Dependencies: []string{
"k8s.io/api/apps/v1beta2.DaemonSetSpec", "k8s.io/api/apps/v1beta2.DaemonSetStatus", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
},
+ "k8s.io/api/apps/v1beta2.DaemonSetCondition": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "DaemonSetCondition describes the state of a DaemonSet at a certain point.",
+ Properties: map[string]spec.Schema{
+ "type": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Type of DaemonSet condition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "status": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Status of the condition, one of True, False, Unknown.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "lastTransitionTime": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Last time the condition transitioned from one status to another.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
+ },
+ },
+ "reason": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The reason for the condition's last transition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "message": {
+ SchemaProps: spec.SchemaProps{
+ Description: "A human readable message indicating details about the transition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ Required: []string{"type", "status"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/apimachinery/pkg/apis/meta/v1.Time"},
+ },
"k8s.io/api/apps/v1beta2.DaemonSetList": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -1510,7 +3091,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Properties: map[string]spec.Schema{
"selector": {
SchemaProps: spec.SchemaProps{
- Description: "A label query over pods that are managed by the daemon set. Must match in order to be controlled. If empty, defaulted to labels on Pod template. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors",
+ Description: "A label query over pods that are managed by the daemon set. Must match in order to be controlled. It must match the pod template's labels. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors",
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"),
},
},
@@ -1541,7 +3122,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
},
},
- Required: []string{"template"},
+ Required: []string{"selector", "template"},
},
},
Dependencies: []string{
@@ -1615,11 +3196,31 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Format: "int32",
},
},
+ "conditions": {
+ VendorExtensible: spec.VendorExtensible{
+ Extensions: spec.Extensions{
+ "x-kubernetes-patch-merge-key": "type",
+ "x-kubernetes-patch-strategy": "merge",
+ },
+ },
+ SchemaProps: spec.SchemaProps{
+ Description: "Represents the latest available observations of a DaemonSet's current state.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/apps/v1beta2.DaemonSetCondition"),
+ },
+ },
+ },
+ },
+ },
},
Required: []string{"currentNumberScheduled", "numberMisscheduled", "desiredNumberScheduled", "numberReady"},
},
},
- Dependencies: []string{},
+ Dependencies: []string{
+ "k8s.io/api/apps/v1beta2.DaemonSetCondition"},
},
"k8s.io/api/apps/v1beta2.DaemonSetUpdateStrategy": {
Schema: spec.Schema{
@@ -1648,7 +3249,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/api/apps/v1beta2.Deployment": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
- Description: "Deployment enables declarative updates for Pods and ReplicaSets.",
+ Description: "DEPRECATED - This group version of Deployment is deprecated by apps/v1/Deployment. See the release notes for more information. Deployment enables declarative updates for Pods and ReplicaSets.",
Properties: map[string]spec.Schema{
"kind": {
SchemaProps: spec.SchemaProps{
@@ -1799,7 +3400,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"selector": {
SchemaProps: spec.SchemaProps{
- Description: "Label selector for pods. Existing ReplicaSets whose pods are selected by this will be the ones affected by this deployment.",
+ Description: "Label selector for pods. Existing ReplicaSets whose pods are selected by this will be the ones affected by this deployment. It must match the pod template's labels.",
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"),
},
},
@@ -1844,7 +3445,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
},
},
- Required: []string{"template"},
+ Required: []string{"selector", "template"},
},
},
Dependencies: []string{
@@ -1956,7 +3557,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/api/apps/v1beta2.ReplicaSet": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
- Description: "ReplicaSet represents the configuration of a ReplicaSet.",
+ Description: "DEPRECATED - This group version of ReplicaSet is deprecated by apps/v1/ReplicaSet. See the release notes for more information. ReplicaSet ensures that a specified number of pod replicas are running at any given time.",
Properties: map[string]spec.Schema{
"kind": {
SchemaProps: spec.SchemaProps{
@@ -2108,7 +3709,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"selector": {
SchemaProps: spec.SchemaProps{
- Description: "Selector is a label query over pods that should match the replica count. If the selector is empty, it is defaulted to the labels present on the pod template. Label keys and values that must match in order to be controlled by this replica set. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors",
+ Description: "Selector is a label query over pods that should match the replica count. Label keys and values that must match in order to be controlled by this replica set. It must match the pod template's labels. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors",
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"),
},
},
@@ -2119,6 +3720,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
},
},
+ Required: []string{"selector"},
},
},
Dependencies: []string{
@@ -2349,7 +3951,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/api/apps/v1beta2.StatefulSet": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
- Description: "StatefulSet represents a set of pods with consistent identities. Identities are defined as:\n - Network: A single stable DNS and hostname.\n - Storage: As many VolumeClaims as requested.\nThe StatefulSet guarantees that a given network identity will always map to the same storage identity.",
+ Description: "DEPRECATED - This group version of StatefulSet is deprecated by apps/v1/StatefulSet. See the release notes for more information. StatefulSet represents a set of pods with consistent identities. Identities are defined as:\n - Network: A single stable DNS and hostname.\n - Storage: As many VolumeClaims as requested.\nThe StatefulSet guarantees that a given network identity will always map to the same storage identity.",
Properties: map[string]spec.Schema{
"kind": {
SchemaProps: spec.SchemaProps{
@@ -2388,6 +3990,52 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Dependencies: []string{
"k8s.io/api/apps/v1beta2.StatefulSetSpec", "k8s.io/api/apps/v1beta2.StatefulSetStatus", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
},
+ "k8s.io/api/apps/v1beta2.StatefulSetCondition": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "StatefulSetCondition describes the state of a statefulset at a certain point.",
+ Properties: map[string]spec.Schema{
+ "type": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Type of statefulset condition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "status": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Status of the condition, one of True, False, Unknown.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "lastTransitionTime": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Last time the condition transitioned from one status to another.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
+ },
+ },
+ "reason": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The reason for the condition's last transition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "message": {
+ SchemaProps: spec.SchemaProps{
+ Description: "A human readable message indicating details about the transition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ Required: []string{"type", "status"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/apimachinery/pkg/apis/meta/v1.Time"},
+ },
"k8s.io/api/apps/v1beta2.StatefulSetList": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -2445,7 +4093,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"selector": {
SchemaProps: spec.SchemaProps{
- Description: "selector is a label query over pods that should match the replica count. If empty, defaulted to labels on the pod template. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors",
+ Description: "selector is a label query over pods that should match the replica count. It must match the pod template's labels. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors",
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"),
},
},
@@ -2496,7 +4144,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
},
},
- Required: []string{"template", "serviceName"},
+ Required: []string{"selector", "template", "serviceName"},
},
},
Dependencies: []string{
@@ -2563,11 +4211,31 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Format: "int32",
},
},
+ "conditions": {
+ VendorExtensible: spec.VendorExtensible{
+ Extensions: spec.Extensions{
+ "x-kubernetes-patch-merge-key": "type",
+ "x-kubernetes-patch-strategy": "merge",
+ },
+ },
+ SchemaProps: spec.SchemaProps{
+ Description: "Represents the latest available observations of a statefulset's current state.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/apps/v1beta2.StatefulSetCondition"),
+ },
+ },
+ },
+ },
+ },
},
Required: []string{"replicas"},
},
},
- Dependencies: []string{},
+ Dependencies: []string{
+ "k8s.io/api/apps/v1beta2.StatefulSetCondition"},
},
"k8s.io/api/apps/v1beta2.StatefulSetUpdateStrategy": {
Schema: spec.Schema{
@@ -3093,7 +4761,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"resources": {
SchemaProps: spec.SchemaProps{
- Description: "Resources is a list of resources this rule applies to. ResourceAll represents all resources. \"*\" means all.",
+ Description: "Resources is a list of resources this rule applies to. \"*\" means all in the specified apiGroups.\n \"*/foo\" represents the subresource 'foo' for all resources in the specified apiGroups.",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
@@ -3372,7 +5040,14 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Properties: map[string]spec.Schema{
"allowed": {
SchemaProps: spec.SchemaProps{
- Description: "Allowed is required. True if the action would be allowed, false otherwise.",
+ Description: "Allowed is required. True if the action would be allowed, false otherwise.",
+ Type: []string{"boolean"},
+ Format: "",
+ },
+ },
+ "denied": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Denied is optional. True if the action would be denied, otherwise false. If both allowed is false and denied is false, then the authorizer has no opinion on whether to authorize the action. Denied may not be true if Allowed is true.",
Type: []string{"boolean"},
Format: "",
},
@@ -3649,7 +5324,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"resources": {
SchemaProps: spec.SchemaProps{
- Description: "Resources is a list of resources this rule applies to. ResourceAll represents all resources. \"*\" means all.",
+ Description: "Resources is a list of resources this rule applies to. \"*\" means all in the specified apiGroups.\n \"*/foo\" represents the subresource 'foo' for all resources in the specified apiGroups.",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
@@ -3928,7 +5603,14 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Properties: map[string]spec.Schema{
"allowed": {
SchemaProps: spec.SchemaProps{
- Description: "Allowed is required. True if the action would be allowed, false otherwise.",
+ Description: "Allowed is required. True if the action would be allowed, false otherwise.",
+ Type: []string{"boolean"},
+ Format: "",
+ },
+ },
+ "denied": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Denied is optional. True if the action would be denied, otherwise false. If both allowed is false and denied is false, then the authorizer has no opinion on whether to authorize the action. Denied may not be true if Allowed is true.",
Type: []string{"boolean"},
Format: "",
},
@@ -5298,7 +6980,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"manualSelector": {
SchemaProps: spec.SchemaProps{
- Description: "manualSelector controls generation of pod labels and pod selectors. Leave `manualSelector` unset unless you are certain what you are doing. When false or unset, the system pick labels unique to this job and appends those labels to the pod template. When true, the user is responsible for picking unique labels and specifying the selector. Failure to pick a unique label may cause this and other jobs to not function correctly. However, You may see `manualSelector=true` in jobs that were created with the old `extensions/v1beta1` API. More info: https://git.k8s.io/community/contributors/design-proposals/selector-generation.md",
+ Description: "manualSelector controls generation of pod labels and pod selectors. Leave `manualSelector` unset unless you are certain what you are doing. When false or unset, the system pick labels unique to this job and appends those labels to the pod template. When true, the user is responsible for picking unique labels and specifying the selector. Failure to pick a unique label may cause this and other jobs to not function correctly. However, You may see `manualSelector=true` in jobs that were created with the old `extensions/v1beta1` API. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/#specifying-your-own-pod-selector",
Type: []string{"boolean"},
Format: "",
},
@@ -5488,7 +7170,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"concurrencyPolicy": {
SchemaProps: spec.SchemaProps{
- Description: "Specifies how to treat concurrent executions of a Job. Defaults to Allow.",
+ Description: "Specifies how to treat concurrent executions of a Job. Valid values are: - \"Allow\" (default): allows CronJobs to run concurrently; - \"Forbid\": forbids concurrent runs, skipping next run if previous run hasn't finished yet; - \"Replace\": cancels currently running job and replaces it with a new one",
Type: []string{"string"},
Format: "",
},
@@ -5726,7 +7408,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"concurrencyPolicy": {
SchemaProps: spec.SchemaProps{
- Description: "Specifies how to treat concurrent executions of a Job. Defaults to Allow.",
+ Description: "Specifies how to treat concurrent executions of a Job. Valid values are: - \"Allow\" (default): allows CronJobs to run concurrently; - \"Forbid\": forbids concurrent runs, skipping next run if previous run hasn't finished yet; - \"Replace\": cancels currently running job and replaces it with a new one",
Type: []string{"string"},
Format: "",
},
@@ -6247,7 +7929,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"kind": {
SchemaProps: spec.SchemaProps{
- Description: "Expected values Shared: mulitple blob disks per storage account Dedicated: single blob disk per storage account Managed: azure managed data disk (only in managed availability set). defaults to shared",
+ Description: "Expected values Shared: multiple blob disks per storage account Dedicated: single blob disk per storage account Managed: azure managed data disk (only in managed availability set). defaults to shared",
Type: []string{"string"},
Format: "",
},
@@ -6367,6 +8049,38 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Dependencies: []string{
"k8s.io/api/core/v1.ObjectReference", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
},
+ "k8s.io/api/core/v1.CSIPersistentVolumeSource": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "Represents storage that is managed by an external CSI volume driver",
+ Properties: map[string]spec.Schema{
+ "driver": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Driver is the name of the driver to use for this volume. Required.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "volumeHandle": {
+ SchemaProps: spec.SchemaProps{
+ Description: "VolumeHandle is the unique volume name returned by the CSI volume plugin’s CreateVolume to refer to the volume on all subsequent calls. Required.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "readOnly": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Optional: The value to pass to ControllerPublishVolumeRequest. Defaults to false (read/write).",
+ Type: []string{"boolean"},
+ Format: "",
+ },
+ },
+ },
+ Required: []string{"driver", "volumeHandle"},
+ },
+ },
+ Dependencies: []string{},
+ },
"k8s.io/api/core/v1.Capabilities": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -7067,6 +8781,25 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
},
},
+ "volumeDevices": {
+ VendorExtensible: spec.VendorExtensible{
+ Extensions: spec.Extensions{
+ "x-kubernetes-patch-merge-key": "devicePath",
+ "x-kubernetes-patch-strategy": "merge",
+ },
+ },
+ SchemaProps: spec.SchemaProps{
+ Description: "volumeDevices is the list of block devices to be used by the container. This is an alpha feature and may change in the future.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/core/v1.VolumeDevice"),
+ },
+ },
+ },
+ },
+ },
"livenessProbe": {
SchemaProps: spec.SchemaProps{
Description: "Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes",
@@ -7108,7 +8841,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"securityContext": {
SchemaProps: spec.SchemaProps{
- Description: "Security options the pod should run with. More info: https://kubernetes.io/docs/concepts/policy/security-context/ More info: https://git.k8s.io/community/contributors/design-proposals/security_context.md",
+ Description: "Security options the pod should run with. More info: https://kubernetes.io/docs/concepts/policy/security-context/ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
Ref: ref("k8s.io/api/core/v1.SecurityContext"),
},
},
@@ -7138,7 +8871,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
},
Dependencies: []string{
- "k8s.io/api/core/v1.ContainerPort", "k8s.io/api/core/v1.EnvFromSource", "k8s.io/api/core/v1.EnvVar", "k8s.io/api/core/v1.Lifecycle", "k8s.io/api/core/v1.Probe", "k8s.io/api/core/v1.ResourceRequirements", "k8s.io/api/core/v1.SecurityContext", "k8s.io/api/core/v1.VolumeMount"},
+ "k8s.io/api/core/v1.ContainerPort", "k8s.io/api/core/v1.EnvFromSource", "k8s.io/api/core/v1.EnvVar", "k8s.io/api/core/v1.Lifecycle", "k8s.io/api/core/v1.Probe", "k8s.io/api/core/v1.ResourceRequirements", "k8s.io/api/core/v1.SecurityContext", "k8s.io/api/core/v1.VolumeDevice", "k8s.io/api/core/v1.VolumeMount"},
},
"k8s.io/api/core/v1.ContainerImage": {
Schema: spec.Schema{
@@ -7933,12 +9666,51 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Format: "",
},
},
+ "eventTime": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Time when this Event was first observed.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime"),
+ },
+ },
+ "series": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Data about the Event series this event represents or nil if it's a singleton Event.",
+ Ref: ref("k8s.io/api/core/v1.EventSeries"),
+ },
+ },
+ "action": {
+ SchemaProps: spec.SchemaProps{
+ Description: "What action was taken/failed regarding to the Regarding object.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "related": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Optional secondary object for more complex actions.",
+ Ref: ref("k8s.io/api/core/v1.ObjectReference"),
+ },
+ },
+ "reportingComponent": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Name of the controller that emitted this Event, e.g. `kubernetes.io/kubelet`.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "reportingInstance": {
+ SchemaProps: spec.SchemaProps{
+ Description: "ID of the controller instance, e.g. `kubelet-xyzf`.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
},
Required: []string{"metadata", "involvedObject"},
},
},
Dependencies: []string{
- "k8s.io/api/core/v1.EventSource", "k8s.io/api/core/v1.ObjectReference", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta", "k8s.io/apimachinery/pkg/apis/meta/v1.Time"},
+ "k8s.io/api/core/v1.EventSeries", "k8s.io/api/core/v1.EventSource", "k8s.io/api/core/v1.ObjectReference", "k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta", "k8s.io/apimachinery/pkg/apis/meta/v1.Time"},
},
"k8s.io/api/core/v1.EventList": {
Schema: spec.Schema{
@@ -7985,6 +9757,37 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Dependencies: []string{
"k8s.io/api/core/v1.Event", "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"},
},
+ "k8s.io/api/core/v1.EventSeries": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "EventSeries contain information on series of events, i.e. thing that was/is happening continously for some time.",
+ Properties: map[string]spec.Schema{
+ "count": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Number of occurrences in this series up to the last heartbeat time",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "lastObservedTime": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Time of the last occurence observed",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime"),
+ },
+ },
+ "state": {
+ SchemaProps: spec.SchemaProps{
+ Description: "State of this Series: Ongoing or Finished",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime"},
+ },
"k8s.io/api/core/v1.EventSource": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -8095,7 +9898,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/api/core/v1.FlexVolumeSource": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
- Description: "FlexVolume represents a generic volume resource that is provisioned/attached using an exec based plugin. This is an alpha feature and may change in future.",
+ Description: "FlexVolume represents a generic volume resource that is provisioned/attached using an exec based plugin.",
Properties: map[string]spec.Schema{
"driver": {
SchemaProps: spec.SchemaProps{
@@ -8434,14 +10237,14 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
Dependencies: []string{},
},
- "k8s.io/api/core/v1.ISCSIVolumeSource": {
+ "k8s.io/api/core/v1.ISCSIPersistentVolumeSource": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
- Description: "Represents an ISCSI disk. ISCSI volumes can only be mounted as read/write once. ISCSI volumes support ownership management and SELinux relabeling.",
+ Description: "ISCSIPersistentVolumeSource represents an ISCSI disk. ISCSI volumes can only be mounted as read/write once. ISCSI volumes support ownership management and SELinux relabeling.",
Properties: map[string]spec.Schema{
"targetPortal": {
SchemaProps: spec.SchemaProps{
- Description: "iSCSI target portal. The portal is either an IP or ip_addr:port if the port is other than default (typically TCP ports 860 and 3260).",
+ Description: "iSCSI Target Portal. The Portal is either an IP or ip_addr:port if the port is other than default (typically TCP ports 860 and 3260).",
Type: []string{"string"},
Format: "",
},
@@ -8455,14 +10258,14 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"lun": {
SchemaProps: spec.SchemaProps{
- Description: "iSCSI target lun number.",
+ Description: "iSCSI Target Lun number.",
Type: []string{"integer"},
Format: "int32",
},
},
"iscsiInterface": {
SchemaProps: spec.SchemaProps{
- Description: "Optional: Defaults to 'default' (tcp). iSCSI interface name that uses an iSCSI transport.",
+ Description: "iSCSI Interface Name that uses an iSCSI transport. Defaults to 'default' (tcp).",
Type: []string{"string"},
Format: "",
},
@@ -8483,7 +10286,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"portals": {
SchemaProps: spec.SchemaProps{
- Description: "iSCSI target portal List. The portal is either an IP or ip_addr:port if the port is other than default (typically TCP ports 860 and 3260).",
+ Description: "iSCSI Target Portal List. The Portal is either an IP or ip_addr:port if the port is other than default (typically TCP ports 860 and 3260).",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
@@ -8511,13 +10314,108 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"secretRef": {
SchemaProps: spec.SchemaProps{
- Description: "CHAP secret for iSCSI target and initiator authentication",
+ Description: "CHAP Secret for iSCSI target and initiator authentication",
+ Ref: ref("k8s.io/api/core/v1.SecretReference"),
+ },
+ },
+ "initiatorName": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Custom iSCSI Initiator Name. If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface : will be created for the connection.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ Required: []string{"targetPortal", "iqn", "lun"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/core/v1.SecretReference"},
+ },
+ "k8s.io/api/core/v1.ISCSIVolumeSource": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "Represents an ISCSI disk. ISCSI volumes can only be mounted as read/write once. ISCSI volumes support ownership management and SELinux relabeling.",
+ Properties: map[string]spec.Schema{
+ "targetPortal": {
+ SchemaProps: spec.SchemaProps{
+ Description: "iSCSI Target Portal. The Portal is either an IP or ip_addr:port if the port is other than default (typically TCP ports 860 and 3260).",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "iqn": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Target iSCSI Qualified Name.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "lun": {
+ SchemaProps: spec.SchemaProps{
+ Description: "iSCSI Target Lun number.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "iscsiInterface": {
+ SchemaProps: spec.SchemaProps{
+ Description: "iSCSI Interface Name that uses an iSCSI transport. Defaults to 'default' (tcp).",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "fsType": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Filesystem type of the volume that you want to mount. Tip: Ensure that the filesystem type is supported by the host operating system. Examples: \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified. More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "readOnly": {
+ SchemaProps: spec.SchemaProps{
+ Description: "ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false.",
+ Type: []string{"boolean"},
+ Format: "",
+ },
+ },
+ "portals": {
+ SchemaProps: spec.SchemaProps{
+ Description: "iSCSI Target Portal List. The portal is either an IP or ip_addr:port if the port is other than default (typically TCP ports 860 and 3260).",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ },
+ },
+ "chapAuthDiscovery": {
+ SchemaProps: spec.SchemaProps{
+ Description: "whether support iSCSI Discovery CHAP authentication",
+ Type: []string{"boolean"},
+ Format: "",
+ },
+ },
+ "chapAuthSession": {
+ SchemaProps: spec.SchemaProps{
+ Description: "whether support iSCSI Session CHAP authentication",
+ Type: []string{"boolean"},
+ Format: "",
+ },
+ },
+ "secretRef": {
+ SchemaProps: spec.SchemaProps{
+ Description: "CHAP Secret for iSCSI target and initiator authentication",
Ref: ref("k8s.io/api/core/v1.LocalObjectReference"),
},
},
"initiatorName": {
SchemaProps: spec.SchemaProps{
- Description: "Custom iSCSI initiator name. If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface : will be created for the connection.",
+ Description: "Custom iSCSI Initiator Name. If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface : will be created for the connection.",
Type: []string{"string"},
Format: "",
},
@@ -8731,7 +10629,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"items": {
SchemaProps: spec.SchemaProps{
- Description: "Items is a list of LimitRange objects. More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_limit_range.md",
+ Description: "Items is a list of LimitRange objects. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
@@ -9029,7 +10927,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Properties: map[string]spec.Schema{
"finalizers": {
SchemaProps: spec.SchemaProps{
- Description: "Finalizers is an opaque list of values that must be empty to permanently remove object from storage. More info: https://git.k8s.io/community/contributors/design-proposals/namespaces.md#finalizers",
+ Description: "Finalizers is an opaque list of values that must be empty to permanently remove object from storage. More info: https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
@@ -9053,7 +10951,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Properties: map[string]spec.Schema{
"phase": {
SchemaProps: spec.SchemaProps{
- Description: "Phase is the current lifecycle phase of the namespace. More info: https://git.k8s.io/community/contributors/design-proposals/namespaces.md#phases",
+ Description: "Phase is the current lifecycle phase of the namespace. More info: https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
Type: []string{"string"},
Format: "",
},
@@ -10033,6 +11931,13 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Format: "",
},
},
+ "volumeMode": {
+ SchemaProps: spec.SchemaProps{
+ Description: "volumeMode defines what type of volume is required by the claim. Value of Filesystem is implied when not included in claim spec. This is an alpha feature and may change in the future.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
},
},
},
@@ -10211,13 +12116,13 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"rbd": {
SchemaProps: spec.SchemaProps{
Description: "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md",
- Ref: ref("k8s.io/api/core/v1.RBDVolumeSource"),
+ Ref: ref("k8s.io/api/core/v1.RBDPersistentVolumeSource"),
},
},
"iscsi": {
SchemaProps: spec.SchemaProps{
Description: "ISCSI represents an ISCSI Disk resource that is attached to a kubelet's host machine and then exposed to the pod. Provisioned by an admin.",
- Ref: ref("k8s.io/api/core/v1.ISCSIVolumeSource"),
+ Ref: ref("k8s.io/api/core/v1.ISCSIPersistentVolumeSource"),
},
},
"cinder": {
@@ -10246,7 +12151,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"flexVolume": {
SchemaProps: spec.SchemaProps{
- Description: "FlexVolume represents a generic volume resource that is provisioned/attached using an exec based plugin. This is an alpha feature and may change in future.",
+ Description: "FlexVolume represents a generic volume resource that is provisioned/attached using an exec based plugin.",
Ref: ref("k8s.io/api/core/v1.FlexVolumeSource"),
},
},
@@ -10289,7 +12194,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"scaleIO": {
SchemaProps: spec.SchemaProps{
Description: "ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes.",
- Ref: ref("k8s.io/api/core/v1.ScaleIOVolumeSource"),
+ Ref: ref("k8s.io/api/core/v1.ScaleIOPersistentVolumeSource"),
},
},
"local": {
@@ -10304,11 +12209,17 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Ref: ref("k8s.io/api/core/v1.StorageOSPersistentVolumeSource"),
},
},
+ "csi": {
+ SchemaProps: spec.SchemaProps{
+ Description: "CSI represents storage that handled by an external CSI driver",
+ Ref: ref("k8s.io/api/core/v1.CSIPersistentVolumeSource"),
+ },
+ },
},
},
},
Dependencies: []string{
- "k8s.io/api/core/v1.AWSElasticBlockStoreVolumeSource", "k8s.io/api/core/v1.AzureDiskVolumeSource", "k8s.io/api/core/v1.AzureFilePersistentVolumeSource", "k8s.io/api/core/v1.CephFSPersistentVolumeSource", "k8s.io/api/core/v1.CinderVolumeSource", "k8s.io/api/core/v1.FCVolumeSource", "k8s.io/api/core/v1.FlexVolumeSource", "k8s.io/api/core/v1.FlockerVolumeSource", "k8s.io/api/core/v1.GCEPersistentDiskVolumeSource", "k8s.io/api/core/v1.GlusterfsVolumeSource", "k8s.io/api/core/v1.HostPathVolumeSource", "k8s.io/api/core/v1.ISCSIVolumeSource", "k8s.io/api/core/v1.LocalVolumeSource", "k8s.io/api/core/v1.NFSVolumeSource", "k8s.io/api/core/v1.PhotonPersistentDiskVolumeSource", "k8s.io/api/core/v1.PortworxVolumeSource", "k8s.io/api/core/v1.QuobyteVolumeSource", "k8s.io/api/core/v1.RBDVolumeSource", "k8s.io/api/core/v1.ScaleIOVolumeSource", "k8s.io/api/core/v1.StorageOSPersistentVolumeSource", "k8s.io/api/core/v1.VsphereVirtualDiskVolumeSource"},
+ "k8s.io/api/core/v1.AWSElasticBlockStoreVolumeSource", "k8s.io/api/core/v1.AzureDiskVolumeSource", "k8s.io/api/core/v1.AzureFilePersistentVolumeSource", "k8s.io/api/core/v1.CSIPersistentVolumeSource", "k8s.io/api/core/v1.CephFSPersistentVolumeSource", "k8s.io/api/core/v1.CinderVolumeSource", "k8s.io/api/core/v1.FCVolumeSource", "k8s.io/api/core/v1.FlexVolumeSource", "k8s.io/api/core/v1.FlockerVolumeSource", "k8s.io/api/core/v1.GCEPersistentDiskVolumeSource", "k8s.io/api/core/v1.GlusterfsVolumeSource", "k8s.io/api/core/v1.HostPathVolumeSource", "k8s.io/api/core/v1.ISCSIPersistentVolumeSource", "k8s.io/api/core/v1.LocalVolumeSource", "k8s.io/api/core/v1.NFSVolumeSource", "k8s.io/api/core/v1.PhotonPersistentDiskVolumeSource", "k8s.io/api/core/v1.PortworxVolumeSource", "k8s.io/api/core/v1.QuobyteVolumeSource", "k8s.io/api/core/v1.RBDPersistentVolumeSource", "k8s.io/api/core/v1.ScaleIOPersistentVolumeSource", "k8s.io/api/core/v1.StorageOSPersistentVolumeSource", "k8s.io/api/core/v1.VsphereVirtualDiskVolumeSource"},
},
"k8s.io/api/core/v1.PersistentVolumeSpec": {
Schema: spec.Schema{
@@ -10361,13 +12272,13 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"rbd": {
SchemaProps: spec.SchemaProps{
Description: "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md",
- Ref: ref("k8s.io/api/core/v1.RBDVolumeSource"),
+ Ref: ref("k8s.io/api/core/v1.RBDPersistentVolumeSource"),
},
},
"iscsi": {
SchemaProps: spec.SchemaProps{
Description: "ISCSI represents an ISCSI Disk resource that is attached to a kubelet's host machine and then exposed to the pod. Provisioned by an admin.",
- Ref: ref("k8s.io/api/core/v1.ISCSIVolumeSource"),
+ Ref: ref("k8s.io/api/core/v1.ISCSIPersistentVolumeSource"),
},
},
"cinder": {
@@ -10396,7 +12307,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"flexVolume": {
SchemaProps: spec.SchemaProps{
- Description: "FlexVolume represents a generic volume resource that is provisioned/attached using an exec based plugin. This is an alpha feature and may change in future.",
+ Description: "FlexVolume represents a generic volume resource that is provisioned/attached using an exec based plugin.",
Ref: ref("k8s.io/api/core/v1.FlexVolumeSource"),
},
},
@@ -10439,7 +12350,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"scaleIO": {
SchemaProps: spec.SchemaProps{
Description: "ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes.",
- Ref: ref("k8s.io/api/core/v1.ScaleIOVolumeSource"),
+ Ref: ref("k8s.io/api/core/v1.ScaleIOPersistentVolumeSource"),
},
},
"local": {
@@ -10454,6 +12365,12 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Ref: ref("k8s.io/api/core/v1.StorageOSPersistentVolumeSource"),
},
},
+ "csi": {
+ SchemaProps: spec.SchemaProps{
+ Description: "CSI represents storage that handled by an external CSI driver",
+ Ref: ref("k8s.io/api/core/v1.CSIPersistentVolumeSource"),
+ },
+ },
"accessModes": {
SchemaProps: spec.SchemaProps{
Description: "AccessModes contains all ways the volume can be mounted. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes",
@@ -10502,11 +12419,18 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
},
},
+ "volumeMode": {
+ SchemaProps: spec.SchemaProps{
+ Description: "volumeMode defines if a volume is intended to be used with a formatted filesystem or to remain in raw block state. Value of Filesystem is implied when not included in spec. This is an alpha feature and may change in the future.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
},
},
},
Dependencies: []string{
- "k8s.io/api/core/v1.AWSElasticBlockStoreVolumeSource", "k8s.io/api/core/v1.AzureDiskVolumeSource", "k8s.io/api/core/v1.AzureFilePersistentVolumeSource", "k8s.io/api/core/v1.CephFSPersistentVolumeSource", "k8s.io/api/core/v1.CinderVolumeSource", "k8s.io/api/core/v1.FCVolumeSource", "k8s.io/api/core/v1.FlexVolumeSource", "k8s.io/api/core/v1.FlockerVolumeSource", "k8s.io/api/core/v1.GCEPersistentDiskVolumeSource", "k8s.io/api/core/v1.GlusterfsVolumeSource", "k8s.io/api/core/v1.HostPathVolumeSource", "k8s.io/api/core/v1.ISCSIVolumeSource", "k8s.io/api/core/v1.LocalVolumeSource", "k8s.io/api/core/v1.NFSVolumeSource", "k8s.io/api/core/v1.ObjectReference", "k8s.io/api/core/v1.PhotonPersistentDiskVolumeSource", "k8s.io/api/core/v1.PortworxVolumeSource", "k8s.io/api/core/v1.QuobyteVolumeSource", "k8s.io/api/core/v1.RBDVolumeSource", "k8s.io/api/core/v1.ScaleIOVolumeSource", "k8s.io/api/core/v1.StorageOSPersistentVolumeSource", "k8s.io/api/core/v1.VsphereVirtualDiskVolumeSource", "k8s.io/apimachinery/pkg/api/resource.Quantity"},
+ "k8s.io/api/core/v1.AWSElasticBlockStoreVolumeSource", "k8s.io/api/core/v1.AzureDiskVolumeSource", "k8s.io/api/core/v1.AzureFilePersistentVolumeSource", "k8s.io/api/core/v1.CSIPersistentVolumeSource", "k8s.io/api/core/v1.CephFSPersistentVolumeSource", "k8s.io/api/core/v1.CinderVolumeSource", "k8s.io/api/core/v1.FCVolumeSource", "k8s.io/api/core/v1.FlexVolumeSource", "k8s.io/api/core/v1.FlockerVolumeSource", "k8s.io/api/core/v1.GCEPersistentDiskVolumeSource", "k8s.io/api/core/v1.GlusterfsVolumeSource", "k8s.io/api/core/v1.HostPathVolumeSource", "k8s.io/api/core/v1.ISCSIPersistentVolumeSource", "k8s.io/api/core/v1.LocalVolumeSource", "k8s.io/api/core/v1.NFSVolumeSource", "k8s.io/api/core/v1.ObjectReference", "k8s.io/api/core/v1.PhotonPersistentDiskVolumeSource", "k8s.io/api/core/v1.PortworxVolumeSource", "k8s.io/api/core/v1.QuobyteVolumeSource", "k8s.io/api/core/v1.RBDPersistentVolumeSource", "k8s.io/api/core/v1.ScaleIOPersistentVolumeSource", "k8s.io/api/core/v1.StorageOSPersistentVolumeSource", "k8s.io/api/core/v1.VsphereVirtualDiskVolumeSource", "k8s.io/apimachinery/pkg/api/resource.Quantity"},
},
"k8s.io/api/core/v1.PersistentVolumeStatus": {
Schema: spec.Schema{
@@ -10647,7 +12571,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/api/core/v1.PodAffinityTerm": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
- Description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key tches that of any node on which a pod of the set of pods is running",
+ Description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running",
Properties: map[string]spec.Schema{
"labelSelector": {
SchemaProps: spec.SchemaProps{
@@ -10671,12 +12595,13 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"topologyKey": {
SchemaProps: spec.SchemaProps{
- Description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. For PreferredDuringScheduling pod anti-affinity, empty topologyKey is interpreted as \"all topologies\" (\"all topologies\" here means all the topologyKeys indicated by scheduler command-line argument --failure-domains); for affinity and for RequiredDuringScheduling pod anti-affinity, empty topologyKey is not allowed.",
+ Description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed.",
Type: []string{"string"},
Format: "",
},
},
},
+ Required: []string{"topologyKey"},
},
},
Dependencies: []string{
@@ -10830,6 +12755,81 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Dependencies: []string{
"k8s.io/apimachinery/pkg/apis/meta/v1.Time"},
},
+ "k8s.io/api/core/v1.PodDNSConfig": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "PodDNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy.",
+ Properties: map[string]spec.Schema{
+ "nameservers": {
+ SchemaProps: spec.SchemaProps{
+ Description: "A list of DNS name server IP addresses. This will be appended to the base nameservers generated from DNSPolicy. Duplicated nameservers will be removed.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ },
+ },
+ "searches": {
+ SchemaProps: spec.SchemaProps{
+ Description: "A list of DNS search domains for host-name lookup. This will be appended to the base search paths generated from DNSPolicy. Duplicated search paths will be removed.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ },
+ },
+ "options": {
+ SchemaProps: spec.SchemaProps{
+ Description: "A list of DNS resolver options. This will be merged with the base options generated from DNSPolicy. Duplicated entries will be removed. Resolution options given in Options will override those that appear in the base DNSPolicy.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/core/v1.PodDNSConfigOption"),
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/core/v1.PodDNSConfigOption"},
+ },
+ "k8s.io/api/core/v1.PodDNSConfigOption": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "PodDNSConfigOption defines DNS resolver options of a pod.",
+ Properties: map[string]spec.Schema{
+ "name": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Required.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "value": {
+ SchemaProps: spec.SchemaProps{
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{},
+ },
"k8s.io/api/core/v1.PodExecOptions": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -11252,7 +13252,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"dnsPolicy": {
SchemaProps: spec.SchemaProps{
- Description: "Set DNS policy for containers within the pod. One of 'ClusterFirstWithHostNet', 'ClusterFirst' or 'Default'. Defaults to \"ClusterFirst\". To have DNS options set along with hostNetwork, you have to specify DNS policy explicitly to 'ClusterFirstWithHostNet'.",
+ Description: "Set DNS policy for the pod. Defaults to \"ClusterFirst\". Valid values are 'ClusterFirstWithHostNet', 'ClusterFirst', 'Default' or 'None'. DNS parameters given in DNSConfig will be merged with the policy selected with DNSPolicy. To have DNS options set along with hostNetwork, you have to specify DNS policy explicitly to 'ClusterFirstWithHostNet'. Note that 'None' policy is an alpha feature introduced in v1.9 and CustomPodDNS feature gate must be enabled to use it.",
Type: []string{"string"},
Format: "",
},
@@ -11418,12 +13418,18 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Format: "int32",
},
},
+ "dnsConfig": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Specifies the DNS parameters of a pod. Parameters specified here will be merged to the generated DNS configuration based on DNSPolicy. This is an alpha feature introduced in v1.9 and CustomPodDNS feature gate must be enabled to use it.",
+ Ref: ref("k8s.io/api/core/v1.PodDNSConfig"),
+ },
+ },
},
Required: []string{"containers"},
},
},
Dependencies: []string{
- "k8s.io/api/core/v1.Affinity", "k8s.io/api/core/v1.Container", "k8s.io/api/core/v1.HostAlias", "k8s.io/api/core/v1.LocalObjectReference", "k8s.io/api/core/v1.PodSecurityContext", "k8s.io/api/core/v1.Toleration", "k8s.io/api/core/v1.Volume"},
+ "k8s.io/api/core/v1.Affinity", "k8s.io/api/core/v1.Container", "k8s.io/api/core/v1.HostAlias", "k8s.io/api/core/v1.LocalObjectReference", "k8s.io/api/core/v1.PodDNSConfig", "k8s.io/api/core/v1.PodSecurityContext", "k8s.io/api/core/v1.Toleration", "k8s.io/api/core/v1.Volume"},
},
"k8s.io/api/core/v1.PodStatus": {
Schema: spec.Schema{
@@ -11908,6 +13914,80 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
Dependencies: []string{},
},
+ "k8s.io/api/core/v1.RBDPersistentVolumeSource": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "Represents a Rados Block Device mount that lasts the lifetime of a pod. RBD volumes support ownership management and SELinux relabeling.",
+ Properties: map[string]spec.Schema{
+ "monitors": {
+ SchemaProps: spec.SchemaProps{
+ Description: "A collection of Ceph monitors. More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ },
+ },
+ "image": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The rados image name. More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "fsType": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Filesystem type of the volume that you want to mount. Tip: Ensure that the filesystem type is supported by the host operating system. Examples: \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified. More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "pool": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The rados pool name. Default is rbd. More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "user": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The rados user name. Default is admin. More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "keyring": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "secretRef": {
+ SchemaProps: spec.SchemaProps{
+ Description: "SecretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it",
+ Ref: ref("k8s.io/api/core/v1.SecretReference"),
+ },
+ },
+ "readOnly": {
+ SchemaProps: spec.SchemaProps{
+ Description: "ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it",
+ Type: []string{"boolean"},
+ Format: "",
+ },
+ },
+ },
+ Required: []string{"monitors", "image"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/core/v1.SecretReference"},
+ },
"k8s.io/api/core/v1.RBDVolumeSource": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -12375,7 +14455,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"items": {
SchemaProps: spec.SchemaProps{
- Description: "Items is a list of ResourceQuota objects. More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md",
+ Description: "Items is a list of ResourceQuota objects. More info: https://kubernetes.io/docs/concepts/policy/resource-quotas/",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
@@ -12400,7 +14480,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Properties: map[string]spec.Schema{
"hard": {
SchemaProps: spec.SchemaProps{
- Description: "Hard is the set of desired hard limits for each named resource. More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md",
+ Description: "Hard is the set of desired hard limits for each named resource. More info: https://kubernetes.io/docs/concepts/policy/resource-quotas/",
Type: []string{"object"},
AdditionalProperties: &spec.SchemaOrBool{
Schema: &spec.Schema{
@@ -12438,7 +14518,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Properties: map[string]spec.Schema{
"hard": {
SchemaProps: spec.SchemaProps{
- Description: "Hard is the set of enforced hard limits for each named resource. More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md",
+ Description: "Hard is the set of enforced hard limits for each named resource. More info: https://kubernetes.io/docs/concepts/policy/resource-quotas/",
Type: []string{"object"},
AdditionalProperties: &spec.SchemaOrBool{
Schema: &spec.Schema{
@@ -12543,6 +14623,87 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
Dependencies: []string{},
},
+ "k8s.io/api/core/v1.ScaleIOPersistentVolumeSource": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "ScaleIOPersistentVolumeSource represents a persistent ScaleIO volume",
+ Properties: map[string]spec.Schema{
+ "gateway": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The host address of the ScaleIO API Gateway.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "system": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The name of the storage system as configured in ScaleIO.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "secretRef": {
+ SchemaProps: spec.SchemaProps{
+ Description: "SecretRef references to the secret for ScaleIO user and other sensitive information. If this is not provided, Login operation will fail.",
+ Ref: ref("k8s.io/api/core/v1.SecretReference"),
+ },
+ },
+ "sslEnabled": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Flag to enable/disable SSL communication with Gateway, default false",
+ Type: []string{"boolean"},
+ Format: "",
+ },
+ },
+ "protectionDomain": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The name of the ScaleIO Protection Domain for the configured storage.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "storagePool": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The ScaleIO Storage Pool associated with the protection domain.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "storageMode": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "volumeName": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The name of a volume already created in the ScaleIO system that is associated with this volume source.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "fsType": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Filesystem type to mount. Must be a filesystem type supported by the host operating system. Ex. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "readOnly": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts.",
+ Type: []string{"boolean"},
+ Format: "",
+ },
+ },
+ },
+ Required: []string{"gateway", "system", "secretRef"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/core/v1.SecretReference"},
+ },
"k8s.io/api/core/v1.ScaleIOVolumeSource": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -12577,21 +14738,21 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"protectionDomain": {
SchemaProps: spec.SchemaProps{
- Description: "The name of the Protection Domain for the configured storage (defaults to \"default\").",
+ Description: "The name of the ScaleIO Protection Domain for the configured storage.",
Type: []string{"string"},
Format: "",
},
},
"storagePool": {
SchemaProps: spec.SchemaProps{
- Description: "The Storage Pool associated with the protection domain (defaults to \"default\").",
+ Description: "The ScaleIO Storage Pool associated with the protection domain.",
Type: []string{"string"},
Format: "",
},
},
"storageMode": {
SchemaProps: spec.SchemaProps{
- Description: "Indicates whether the storage for a volume should be thick or thin (defaults to \"thin\").",
+ Description: "Indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.",
Type: []string{"string"},
Format: "",
},
@@ -13363,7 +15524,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"externalName": {
SchemaProps: spec.SchemaProps{
- Description: "externalName is the external reference that kubedns or equivalent will return as a CNAME record for this service. No proxying will be involved. Must be a valid DNS name and requires Type to be ExternalName.",
+ Description: "externalName is the external reference that kubedns or equivalent will return as a CNAME record for this service. No proxying will be involved. Must be a valid RFC-1123 hostname (https://tools.ietf.org/html/rfc1123) and requires Type to be ExternalName.",
Type: []string{"string"},
Format: "",
},
@@ -13739,7 +15900,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"flexVolume": {
SchemaProps: spec.SchemaProps{
- Description: "FlexVolume represents a generic volume resource that is provisioned/attached using an exec based plugin. This is an alpha feature and may change in future.",
+ Description: "FlexVolume represents a generic volume resource that is provisioned/attached using an exec based plugin.",
Ref: ref("k8s.io/api/core/v1.FlexVolumeSource"),
},
},
@@ -13840,6 +16001,31 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Dependencies: []string{
"k8s.io/api/core/v1.AWSElasticBlockStoreVolumeSource", "k8s.io/api/core/v1.AzureDiskVolumeSource", "k8s.io/api/core/v1.AzureFileVolumeSource", "k8s.io/api/core/v1.CephFSVolumeSource", "k8s.io/api/core/v1.CinderVolumeSource", "k8s.io/api/core/v1.ConfigMapVolumeSource", "k8s.io/api/core/v1.DownwardAPIVolumeSource", "k8s.io/api/core/v1.EmptyDirVolumeSource", "k8s.io/api/core/v1.FCVolumeSource", "k8s.io/api/core/v1.FlexVolumeSource", "k8s.io/api/core/v1.FlockerVolumeSource", "k8s.io/api/core/v1.GCEPersistentDiskVolumeSource", "k8s.io/api/core/v1.GitRepoVolumeSource", "k8s.io/api/core/v1.GlusterfsVolumeSource", "k8s.io/api/core/v1.HostPathVolumeSource", "k8s.io/api/core/v1.ISCSIVolumeSource", "k8s.io/api/core/v1.NFSVolumeSource", "k8s.io/api/core/v1.PersistentVolumeClaimVolumeSource", "k8s.io/api/core/v1.PhotonPersistentDiskVolumeSource", "k8s.io/api/core/v1.PortworxVolumeSource", "k8s.io/api/core/v1.ProjectedVolumeSource", "k8s.io/api/core/v1.QuobyteVolumeSource", "k8s.io/api/core/v1.RBDVolumeSource", "k8s.io/api/core/v1.ScaleIOVolumeSource", "k8s.io/api/core/v1.SecretVolumeSource", "k8s.io/api/core/v1.StorageOSVolumeSource", "k8s.io/api/core/v1.VsphereVirtualDiskVolumeSource"},
},
+ "k8s.io/api/core/v1.VolumeDevice": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "volumeDevice describes a mapping of a raw block device within a container.",
+ Properties: map[string]spec.Schema{
+ "name": {
+ SchemaProps: spec.SchemaProps{
+ Description: "name must match the name of a persistentVolumeClaim in the pod",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "devicePath": {
+ SchemaProps: spec.SchemaProps{
+ Description: "devicePath is the path inside of the container that the device will be mapped to.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ Required: []string{"name", "devicePath"},
+ },
+ },
+ Dependencies: []string{},
+ },
"k8s.io/api/core/v1.VolumeMount": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -13988,7 +16174,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"flexVolume": {
SchemaProps: spec.SchemaProps{
- Description: "FlexVolume represents a generic volume resource that is provisioned/attached using an exec based plugin. This is an alpha feature and may change in future.",
+ Description: "FlexVolume represents a generic volume resource that is provisioned/attached using an exec based plugin.",
Ref: ref("k8s.io/api/core/v1.FlexVolumeSource"),
},
},
@@ -14152,19 +16338,219 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Dependencies: []string{
"k8s.io/api/core/v1.PodAffinityTerm"},
},
- "k8s.io/api/extensions/v1beta1.APIVersion": {
+ "k8s.io/api/events/v1beta1.Event": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
- Description: "An APIVersion represents a single concrete version of an object model.",
+ Description: "Event is a report of an event somewhere in the cluster. It generally denotes some state change in the system.",
Properties: map[string]spec.Schema{
- "name": {
+ "kind": {
SchemaProps: spec.SchemaProps{
- Description: "Name of this version (e.g. 'v1').",
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
+ },
+ },
+ "eventTime": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Required. Time when this Event was first observed.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime"),
+ },
+ },
+ "series": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Data about the Event series this event represents or nil if it's a singleton Event.",
+ Ref: ref("k8s.io/api/events/v1beta1.EventSeries"),
+ },
+ },
+ "reportingController": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Name of the controller that emitted this Event, e.g. `kubernetes.io/kubelet`.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "reportingInstance": {
+ SchemaProps: spec.SchemaProps{
+ Description: "ID of the controller instance, e.g. `kubelet-xyzf`.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "action": {
+ SchemaProps: spec.SchemaProps{
+ Description: "What action was taken/failed regarding to the regarding object.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "reason": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Why the action was taken.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "regarding": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The object this Event is about. In most cases it's an Object reporting controller implements. E.g. ReplicaSetController implements ReplicaSets and this event is emitted because it acts on some changes in a ReplicaSet object.",
+ Ref: ref("k8s.io/api/core/v1.ObjectReference"),
+ },
+ },
+ "related": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Optional secondary object for more complex actions. E.g. when regarding object triggers a creation or deletion of related object.",
+ Ref: ref("k8s.io/api/core/v1.ObjectReference"),
+ },
+ },
+ "note": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Optional. A human-readable description of the status of this operation. Maximal length of the note is 1kB, but libraries should be prepared to handle values up to 64kB.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "type": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Type of this event (Normal, Warning), new types could be added in the future.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "deprecatedSource": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Deprecated field assuring backward compatibility with core.v1 Event type",
+ Ref: ref("k8s.io/api/core/v1.EventSource"),
+ },
+ },
+ "deprecatedFirstTimestamp": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Deprecated field assuring backward compatibility with core.v1 Event type",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
+ },
+ },
+ "deprecatedLastTimestamp": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Deprecated field assuring backward compatibility with core.v1 Event type",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
+ },
+ },
+ "deprecatedCount": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Deprecated field assuring backward compatibility with core.v1 Event type",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ },
+ Required: []string{"eventTime"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/core/v1.EventSource", "k8s.io/api/core/v1.ObjectReference", "k8s.io/api/events/v1beta1.EventSeries", "k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta", "k8s.io/apimachinery/pkg/apis/meta/v1.Time"},
+ },
+ "k8s.io/api/events/v1beta1.EventList": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "EventList is a list of Event objects.",
+ Properties: map[string]spec.Schema{
+ "kind": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
+ },
+ },
+ "items": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Items is a list of schema objects.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/events/v1beta1.Event"),
+ },
+ },
+ },
+ },
+ },
+ },
+ Required: []string{"items"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/events/v1beta1.Event", "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"},
+ },
+ "k8s.io/api/events/v1beta1.EventSeries": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "EventSeries contain information on series of events, i.e. thing that was/is happening continously for some time.",
+ Properties: map[string]spec.Schema{
+ "count": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Number of occurrences in this series up to the last heartbeat time",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
+ "lastObservedTime": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Time when last Event from the series was seen before last heartbeat.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime"),
+ },
+ },
+ "state": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Information whether this series is ongoing or finished.",
Type: []string{"string"},
Format: "",
},
},
},
+ Required: []string{"count", "lastObservedTime", "state"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime"},
+ },
+ "k8s.io/api/extensions/v1beta1.AllowedFlexVolume": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "AllowedFlexVolume represents a single Flexvolume that is allowed to be used.",
+ Properties: map[string]spec.Schema{
+ "driver": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Driver is the name of the Flexvolume driver.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ Required: []string{"driver"},
},
},
Dependencies: []string{},
@@ -14324,6 +16710,52 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Dependencies: []string{
"k8s.io/api/extensions/v1beta1.DaemonSetSpec", "k8s.io/api/extensions/v1beta1.DaemonSetStatus", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
},
+ "k8s.io/api/extensions/v1beta1.DaemonSetCondition": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "DaemonSetCondition describes the state of a DaemonSet at a certain point.",
+ Properties: map[string]spec.Schema{
+ "type": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Type of DaemonSet condition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "status": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Status of the condition, one of True, False, Unknown.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "lastTransitionTime": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Last time the condition transitioned from one status to another.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
+ },
+ },
+ "reason": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The reason for the condition's last transition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "message": {
+ SchemaProps: spec.SchemaProps{
+ Description: "A human readable message indicating details about the transition.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ Required: []string{"type", "status"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/apimachinery/pkg/apis/meta/v1.Time"},
+ },
"k8s.io/api/extensions/v1beta1.DaemonSetList": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -14488,11 +16920,31 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Format: "int32",
},
},
+ "conditions": {
+ VendorExtensible: spec.VendorExtensible{
+ Extensions: spec.Extensions{
+ "x-kubernetes-patch-merge-key": "type",
+ "x-kubernetes-patch-strategy": "merge",
+ },
+ },
+ SchemaProps: spec.SchemaProps{
+ Description: "Represents the latest available observations of a DaemonSet's current state.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/extensions/v1beta1.DaemonSetCondition"),
+ },
+ },
+ },
+ },
+ },
},
Required: []string{"currentNumberScheduled", "numberMisscheduled", "desiredNumberScheduled", "numberReady"},
},
},
- Dependencies: []string{},
+ Dependencies: []string{
+ "k8s.io/api/extensions/v1beta1.DaemonSetCondition"},
},
"k8s.io/api/extensions/v1beta1.DaemonSetUpdateStrategy": {
Schema: spec.Schema{
@@ -15023,7 +17475,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/api/extensions/v1beta1.IPBlock": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
- Description: "IPBlock describes a particular CIDR (Ex. \"192.168.1.1/24\") that is allowed to the pods matched by a NetworkPolicySpec's podSelector. The except entry describes CIDRs that should not be included within this rule.",
+ Description: "DEPRECATED 1.9 - This group version of IPBlock is deprecated by networking/v1/IPBlock. IPBlock describes a particular CIDR (Ex. \"192.168.1.1/24\") that is allowed to the pods matched by a NetworkPolicySpec's podSelector. The except entry describes CIDRs that should not be included within this rule.",
Properties: map[string]spec.Schema{
"cidr": {
SchemaProps: spec.SchemaProps{
@@ -15298,7 +17750,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/api/extensions/v1beta1.NetworkPolicy": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
- Description: "NetworkPolicy describes what network traffic is allowed for a set of Pods",
+ Description: "DEPRECATED 1.9 - This group version of NetworkPolicy is deprecated by networking/v1/NetworkPolicy. NetworkPolicy describes what network traffic is allowed for a set of Pods",
Properties: map[string]spec.Schema{
"kind": {
SchemaProps: spec.SchemaProps{
@@ -15335,7 +17787,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/api/extensions/v1beta1.NetworkPolicyEgressRule": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
- Description: "NetworkPolicyEgressRule describes a particular set of traffic that is allowed out of pods matched by a NetworkPolicySpec's podSelector. The traffic must match both ports and to. This type is beta-level in 1.8",
+ Description: "DEPRECATED 1.9 - This group version of NetworkPolicyEgressRule is deprecated by networking/v1/NetworkPolicyEgressRule. NetworkPolicyEgressRule describes a particular set of traffic that is allowed out of pods matched by a NetworkPolicySpec's podSelector. The traffic must match both ports and to. This type is beta-level in 1.8",
Properties: map[string]spec.Schema{
"ports": {
SchemaProps: spec.SchemaProps{
@@ -15372,7 +17824,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/api/extensions/v1beta1.NetworkPolicyIngressRule": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
- Description: "This NetworkPolicyIngressRule matches traffic if and only if the traffic matches both ports AND from.",
+ Description: "DEPRECATED 1.9 - This group version of NetworkPolicyIngressRule is deprecated by networking/v1/NetworkPolicyIngressRule. This NetworkPolicyIngressRule matches traffic if and only if the traffic matches both ports AND from.",
Properties: map[string]spec.Schema{
"ports": {
SchemaProps: spec.SchemaProps{
@@ -15409,7 +17861,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/api/extensions/v1beta1.NetworkPolicyList": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
- Description: "Network Policy List is a list of NetworkPolicy objects.",
+ Description: "DEPRECATED 1.9 - This group version of NetworkPolicyList is deprecated by networking/v1/NetworkPolicyList. Network Policy List is a list of NetworkPolicy objects.",
Properties: map[string]spec.Schema{
"kind": {
SchemaProps: spec.SchemaProps{
@@ -15454,6 +17906,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/api/extensions/v1beta1.NetworkPolicyPeer": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
+ Description: "DEPRECATED 1.9 - This group version of NetworkPolicyPeer is deprecated by networking/v1/NetworkPolicyPeer.",
Properties: map[string]spec.Schema{
"podSelector": {
SchemaProps: spec.SchemaProps{
@@ -15482,6 +17935,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/api/extensions/v1beta1.NetworkPolicyPort": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
+ Description: "DEPRECATED 1.9 - This group version of NetworkPolicyPort is deprecated by networking/v1/NetworkPolicyPort.",
Properties: map[string]spec.Schema{
"protocol": {
SchemaProps: spec.SchemaProps{
@@ -15505,6 +17959,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/api/extensions/v1beta1.NetworkPolicySpec": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
+ Description: "DEPRECATED 1.9 - This group version of NetworkPolicySpec is deprecated by networking/v1/NetworkPolicySpec.",
Properties: map[string]spec.Schema{
"podSelector": {
SchemaProps: spec.SchemaProps{
@@ -15655,7 +18110,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"defaultAddCapabilities": {
SchemaProps: spec.SchemaProps{
- Description: "DefaultAddCapabilities is the default set of capabilities that will be added to the container unless the pod spec specifically drops the capability. You may not list a capabiility in both DefaultAddCapabilities and RequiredDropCapabilities.",
+ Description: "DefaultAddCapabilities is the default set of capabilities that will be added to the container unless the pod spec specifically drops the capability. You may not list a capability in both DefaultAddCapabilities and RequiredDropCapabilities. Capabilities added here are implicitly allowed, and need not be included in the AllowedCapabilities list.",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
@@ -15783,7 +18238,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"allowPrivilegeEscalation": {
SchemaProps: spec.SchemaProps{
- Description: "AllowPrivilegeEscalation determines if a pod can request to allow privilege escalation.",
+ Description: "AllowPrivilegeEscalation determines if a pod can request to allow privilege escalation. If unspecified, defaults to true.",
Type: []string{"boolean"},
Format: "",
},
@@ -15801,17 +18256,30 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
},
},
+ "allowedFlexVolumes": {
+ SchemaProps: spec.SchemaProps{
+ Description: "AllowedFlexVolumes is a whitelist of allowed Flexvolumes. Empty or nil indicates that all Flexvolumes may be used. This parameter is effective only when the usage of the Flexvolumes is allowed in the \"Volumes\" field.",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/extensions/v1beta1.AllowedFlexVolume"),
+ },
+ },
+ },
+ },
+ },
},
Required: []string{"seLinux", "runAsUser", "supplementalGroups", "fsGroup"},
},
},
Dependencies: []string{
- "k8s.io/api/extensions/v1beta1.AllowedHostPath", "k8s.io/api/extensions/v1beta1.FSGroupStrategyOptions", "k8s.io/api/extensions/v1beta1.HostPortRange", "k8s.io/api/extensions/v1beta1.RunAsUserStrategyOptions", "k8s.io/api/extensions/v1beta1.SELinuxStrategyOptions", "k8s.io/api/extensions/v1beta1.SupplementalGroupsStrategyOptions"},
+ "k8s.io/api/extensions/v1beta1.AllowedFlexVolume", "k8s.io/api/extensions/v1beta1.AllowedHostPath", "k8s.io/api/extensions/v1beta1.FSGroupStrategyOptions", "k8s.io/api/extensions/v1beta1.HostPortRange", "k8s.io/api/extensions/v1beta1.RunAsUserStrategyOptions", "k8s.io/api/extensions/v1beta1.SELinuxStrategyOptions", "k8s.io/api/extensions/v1beta1.SupplementalGroupsStrategyOptions"},
},
"k8s.io/api/extensions/v1beta1.ReplicaSet": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
- Description: "DEPRECATED - This group version of ReplicaSet is deprecated by apps/v1beta2/ReplicaSet. See the release notes for more information. ReplicaSet represents the configuration of a ReplicaSet.",
+ Description: "DEPRECATED - This group version of ReplicaSet is deprecated by apps/v1beta2/ReplicaSet. See the release notes for more information. ReplicaSet ensures that a specified number of pod replicas are running at any given time.",
Properties: map[string]spec.Schema{
"kind": {
SchemaProps: spec.SchemaProps{
@@ -16172,7 +18640,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"seLinuxOptions": {
SchemaProps: spec.SchemaProps{
- Description: "seLinuxOptions required to run as; required for MustRunAs More info: https://git.k8s.io/community/contributors/design-proposals/security_context.md",
+ Description: "seLinuxOptions required to run as; required for MustRunAs More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
Ref: ref("k8s.io/api/core/v1.SELinuxOptions"),
},
},
@@ -16313,185 +18781,6 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Dependencies: []string{
"k8s.io/api/extensions/v1beta1.IDRange"},
},
- "k8s.io/api/extensions/v1beta1.ThirdPartyResource": {
- Schema: spec.Schema{
- SchemaProps: spec.SchemaProps{
- Description: "A ThirdPartyResource is a generic representation of a resource, it is used by add-ons and plugins to add new resource types to the API. It consists of one or more Versions of the api.",
- Properties: map[string]spec.Schema{
- "kind": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#types-kinds",
- Type: []string{"string"},
- Format: "",
- },
- },
- "apiVersion": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#resources",
- Type: []string{"string"},
- Format: "",
- },
- },
- "metadata": {
- SchemaProps: spec.SchemaProps{
- Description: "Standard object metadata",
- Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
- },
- },
- "description": {
- SchemaProps: spec.SchemaProps{
- Description: "Description is the description of this object.",
- Type: []string{"string"},
- Format: "",
- },
- },
- "versions": {
- SchemaProps: spec.SchemaProps{
- Description: "Versions are versions for this third party object",
- Type: []string{"array"},
- Items: &spec.SchemaOrArray{
- Schema: &spec.Schema{
- SchemaProps: spec.SchemaProps{
- Ref: ref("k8s.io/api/extensions/v1beta1.APIVersion"),
- },
- },
- },
- },
- },
- },
- },
- },
- Dependencies: []string{
- "k8s.io/api/extensions/v1beta1.APIVersion", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
- },
- "k8s.io/api/extensions/v1beta1.ThirdPartyResourceData": {
- Schema: spec.Schema{
- SchemaProps: spec.SchemaProps{
- Description: "An internal object, used for versioned storage in etcd. Not exposed to the end user.",
- Properties: map[string]spec.Schema{
- "kind": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#types-kinds",
- Type: []string{"string"},
- Format: "",
- },
- },
- "apiVersion": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#resources",
- Type: []string{"string"},
- Format: "",
- },
- },
- "metadata": {
- SchemaProps: spec.SchemaProps{
- Description: "Standard object metadata.",
- Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
- },
- },
- "data": {
- SchemaProps: spec.SchemaProps{
- Description: "Data is the raw JSON data for this data.",
- Type: []string{"string"},
- Format: "byte",
- },
- },
- },
- },
- },
- Dependencies: []string{
- "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
- },
- "k8s.io/api/extensions/v1beta1.ThirdPartyResourceDataList": {
- Schema: spec.Schema{
- SchemaProps: spec.SchemaProps{
- Description: "ThirdPartyResrouceDataList is a list of ThirdPartyResourceData.",
- Properties: map[string]spec.Schema{
- "kind": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#types-kinds",
- Type: []string{"string"},
- Format: "",
- },
- },
- "apiVersion": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#resources",
- Type: []string{"string"},
- Format: "",
- },
- },
- "metadata": {
- SchemaProps: spec.SchemaProps{
- Description: "Standard list metadata More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata",
- Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
- },
- },
- "items": {
- SchemaProps: spec.SchemaProps{
- Description: "Items is the list of ThirdpartyResourceData.",
- Type: []string{"array"},
- Items: &spec.SchemaOrArray{
- Schema: &spec.Schema{
- SchemaProps: spec.SchemaProps{
- Ref: ref("k8s.io/api/extensions/v1beta1.ThirdPartyResourceData"),
- },
- },
- },
- },
- },
- },
- Required: []string{"items"},
- },
- },
- Dependencies: []string{
- "k8s.io/api/extensions/v1beta1.ThirdPartyResourceData", "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"},
- },
- "k8s.io/api/extensions/v1beta1.ThirdPartyResourceList": {
- Schema: spec.Schema{
- SchemaProps: spec.SchemaProps{
- Description: "ThirdPartyResourceList is a list of ThirdPartyResources.",
- Properties: map[string]spec.Schema{
- "kind": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#types-kinds",
- Type: []string{"string"},
- Format: "",
- },
- },
- "apiVersion": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#resources",
- Type: []string{"string"},
- Format: "",
- },
- },
- "metadata": {
- SchemaProps: spec.SchemaProps{
- Description: "Standard list metadata.",
- Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
- },
- },
- "items": {
- SchemaProps: spec.SchemaProps{
- Description: "Items is the list of ThirdPartyResources.",
- Type: []string{"array"},
- Items: &spec.SchemaOrArray{
- Schema: &spec.Schema{
- SchemaProps: spec.SchemaProps{
- Ref: ref("k8s.io/api/extensions/v1beta1.ThirdPartyResource"),
- },
- },
- },
- },
- },
- },
- Required: []string{"items"},
- },
- },
- Dependencies: []string{
- "k8s.io/api/extensions/v1beta1.ThirdPartyResource", "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"},
- },
"k8s.io/api/imagepolicy/v1alpha1.ImageReview": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -17132,6 +19421,30 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Dependencies: []string{
"k8s.io/apimachinery/pkg/apis/meta/v1.Time"},
},
+ "k8s.io/api/rbac/v1.AggregationRule": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "AggregationRule describes how to locate ClusterRoles to aggregate into the ClusterRole",
+ Properties: map[string]spec.Schema{
+ "clusterRoleSelectors": {
+ SchemaProps: spec.SchemaProps{
+ Description: "ClusterRoleSelectors holds a list of selectors which will be used to find ClusterRoles and create the rules. If any of the selectors match, then the ClusterRole's permissions will be added",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"),
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"},
+ },
"k8s.io/api/rbac/v1.ClusterRole": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -17170,12 +19483,18 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
},
},
+ "aggregationRule": {
+ SchemaProps: spec.SchemaProps{
+ Description: "AggregationRule is an optional field that describes how to build the Rules for this ClusterRole. If AggregationRule is set, then the Rules are controller managed and direct changes to Rules will be stomped by the controller.",
+ Ref: ref("k8s.io/api/rbac/v1.AggregationRule"),
+ },
+ },
},
Required: []string{"rules"},
},
},
Dependencies: []string{
- "k8s.io/api/rbac/v1.PolicyRule", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
+ "k8s.io/api/rbac/v1.AggregationRule", "k8s.io/api/rbac/v1.PolicyRule", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
},
"k8s.io/api/rbac/v1.ClusterRoleBinding": {
Schema: spec.Schema{
@@ -17656,6 +19975,30 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
Dependencies: []string{},
},
+ "k8s.io/api/rbac/v1alpha1.AggregationRule": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "AggregationRule describes how to locate ClusterRoles to aggregate into the ClusterRole",
+ Properties: map[string]spec.Schema{
+ "clusterRoleSelectors": {
+ SchemaProps: spec.SchemaProps{
+ Description: "ClusterRoleSelectors holds a list of selectors which will be used to find ClusterRoles and create the rules. If any of the selectors match, then the ClusterRole's permissions will be added",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"),
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"},
+ },
"k8s.io/api/rbac/v1alpha1.ClusterRole": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -17694,12 +20037,18 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
},
},
+ "aggregationRule": {
+ SchemaProps: spec.SchemaProps{
+ Description: "AggregationRule is an optional field that describes how to build the Rules for this ClusterRole. If AggregationRule is set, then the Rules are controller managed and direct changes to Rules will be stomped by the controller.",
+ Ref: ref("k8s.io/api/rbac/v1alpha1.AggregationRule"),
+ },
+ },
},
Required: []string{"rules"},
},
},
Dependencies: []string{
- "k8s.io/api/rbac/v1alpha1.PolicyRule", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
+ "k8s.io/api/rbac/v1alpha1.AggregationRule", "k8s.io/api/rbac/v1alpha1.PolicyRule", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
},
"k8s.io/api/rbac/v1alpha1.ClusterRoleBinding": {
Schema: spec.Schema{
@@ -18180,6 +20529,30 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
Dependencies: []string{},
},
+ "k8s.io/api/rbac/v1beta1.AggregationRule": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "AggregationRule describes how to locate ClusterRoles to aggregate into the ClusterRole",
+ Properties: map[string]spec.Schema{
+ "clusterRoleSelectors": {
+ SchemaProps: spec.SchemaProps{
+ Description: "ClusterRoleSelectors holds a list of selectors which will be used to find ClusterRoles and create the rules. If any of the selectors match, then the ClusterRole's permissions will be added",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"),
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"},
+ },
"k8s.io/api/rbac/v1beta1.ClusterRole": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -18218,12 +20591,18 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
},
},
+ "aggregationRule": {
+ SchemaProps: spec.SchemaProps{
+ Description: "AggregationRule is an optional field that describes how to build the Rules for this ClusterRole. If AggregationRule is set, then the Rules are controller managed and direct changes to Rules will be stomped by the controller.",
+ Ref: ref("k8s.io/api/rbac/v1beta1.AggregationRule"),
+ },
+ },
},
Required: []string{"rules"},
},
},
Dependencies: []string{
- "k8s.io/api/rbac/v1beta1.PolicyRule", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
+ "k8s.io/api/rbac/v1beta1.AggregationRule", "k8s.io/api/rbac/v1beta1.PolicyRule", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
},
"k8s.io/api/rbac/v1beta1.ClusterRoleBinding": {
Schema: spec.Schema{
@@ -18401,7 +20780,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"resources": {
SchemaProps: spec.SchemaProps{
- Description: "Resources is a list of resources this rule applies to. ResourceAll represents all resources.",
+ Description: "Resources is a list of resources this rule applies to. '*' represents all resources in the specified apiGroups. '*/foo' represents the subresource 'foo' for all resources in the specified apiGroups.",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
@@ -19025,6 +21404,13 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Format: "",
},
},
+ "volumeBindingMode": {
+ SchemaProps: spec.SchemaProps{
+ Description: "VolumeBindingMode indicates how PersistentVolumeClaims should be provisioned and bound. When unset, VolumeBindingImmediate is used. This field is alpha-level and is only honored by servers that enable the VolumeScheduling feature.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
},
Required: []string{"provisioner"},
},
@@ -19077,6 +21463,213 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Dependencies: []string{
"k8s.io/api/storage/v1.StorageClass", "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"},
},
+ "k8s.io/api/storage/v1alpha1.VolumeAttachment": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "VolumeAttachment captures the intent to attach or detach the specified volume to/from the specified node.\n\nVolumeAttachment objects are non-namespaced.",
+ Properties: map[string]spec.Schema{
+ "kind": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Standard object metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
+ },
+ },
+ "spec": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Specification of the desired attach/detach volume behavior. Populated by the Kubernetes system.",
+ Ref: ref("k8s.io/api/storage/v1alpha1.VolumeAttachmentSpec"),
+ },
+ },
+ "status": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Status of the VolumeAttachment request. Populated by the entity completing the attach or detach operation, i.e. the external-attacher.",
+ Ref: ref("k8s.io/api/storage/v1alpha1.VolumeAttachmentStatus"),
+ },
+ },
+ },
+ Required: []string{"spec"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/storage/v1alpha1.VolumeAttachmentSpec", "k8s.io/api/storage/v1alpha1.VolumeAttachmentStatus", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
+ },
+ "k8s.io/api/storage/v1alpha1.VolumeAttachmentList": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "VolumeAttachmentList is a collection of VolumeAttachment objects.",
+ Properties: map[string]spec.Schema{
+ "kind": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#types-kinds",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "apiVersion": {
+ SchemaProps: spec.SchemaProps{
+ 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/api-conventions.md#resources",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "metadata": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Standard list metadata More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
+ },
+ },
+ "items": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Items is the list of VolumeAttachments",
+ Type: []string{"array"},
+ Items: &spec.SchemaOrArray{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/api/storage/v1alpha1.VolumeAttachment"),
+ },
+ },
+ },
+ },
+ },
+ },
+ Required: []string{"items"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/storage/v1alpha1.VolumeAttachment", "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"},
+ },
+ "k8s.io/api/storage/v1alpha1.VolumeAttachmentSource": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "VolumeAttachmentSource represents a volume that should be attached. Right now only PersistenVolumes can be attached via external attacher, in future we may allow also inline volumes in pods. Exactly one member can be set.",
+ Properties: map[string]spec.Schema{
+ "persistentVolumeName": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Name of the persistent volume to attach.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{},
+ },
+ "k8s.io/api/storage/v1alpha1.VolumeAttachmentSpec": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "VolumeAttachmentSpec is the specification of a VolumeAttachment request.",
+ Properties: map[string]spec.Schema{
+ "attacher": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Attacher indicates the name of the volume driver that MUST handle this request. This is the name returned by GetPluginName().",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ "source": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Source represents the volume that should be attached.",
+ Ref: ref("k8s.io/api/storage/v1alpha1.VolumeAttachmentSource"),
+ },
+ },
+ "nodeName": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The node that the volume should be attached to.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ Required: []string{"attacher", "source", "nodeName"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/storage/v1alpha1.VolumeAttachmentSource"},
+ },
+ "k8s.io/api/storage/v1alpha1.VolumeAttachmentStatus": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "VolumeAttachmentStatus is the status of a VolumeAttachment request.",
+ Properties: map[string]spec.Schema{
+ "attached": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Indicates the volume is successfully attached. This field must only be set by the entity completing the attach operation, i.e. the external-attacher.",
+ Type: []string{"boolean"},
+ Format: "",
+ },
+ },
+ "attachmentMetadata": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Upon successful attach, this field is populated with any information returned by the attach operation that must be passed into subsequent WaitForAttach or Mount calls. This field must only be set by the entity completing the attach operation, i.e. the external-attacher.",
+ Type: []string{"object"},
+ AdditionalProperties: &spec.SchemaOrBool{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ },
+ },
+ "attachError": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The last error encountered during attach operation, if any. This field must only be set by the entity completing the attach operation, i.e. the external-attacher.",
+ Ref: ref("k8s.io/api/storage/v1alpha1.VolumeError"),
+ },
+ },
+ "detachError": {
+ SchemaProps: spec.SchemaProps{
+ Description: "The last error encountered during detach operation, if any. This field must only be set by the entity completing the detach operation, i.e. the external-attacher.",
+ Ref: ref("k8s.io/api/storage/v1alpha1.VolumeError"),
+ },
+ },
+ },
+ Required: []string{"attached"},
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/api/storage/v1alpha1.VolumeError"},
+ },
+ "k8s.io/api/storage/v1alpha1.VolumeError": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "VolumeError captures an error encountered during a volume operation.",
+ Properties: map[string]spec.Schema{
+ "time": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Time the error was encountered.",
+ Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
+ },
+ },
+ "message": {
+ SchemaProps: spec.SchemaProps{
+ Description: "String detailing the error encountered during Attach or Detach operation. This string maybe logged, so it should not contain sensitive information.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/apimachinery/pkg/apis/meta/v1.Time"},
+ },
"k8s.io/api/storage/v1beta1.StorageClass": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -19151,6 +21744,13 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Format: "",
},
},
+ "volumeBindingMode": {
+ SchemaProps: spec.SchemaProps{
+ Description: "VolumeBindingMode indicates how PersistentVolumeClaims should be provisioned and bound. When unset, VolumeBindingImmediate is used. This field is alpha-level and is only honored by servers that enable the VolumeScheduling feature.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
},
Required: []string{"provisioner"},
},
@@ -19566,7 +22166,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"propagationPolicy": {
SchemaProps: spec.SchemaProps{
- Description: "Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy.",
+ Description: "Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: 'Orphan' - orphan the dependents; 'Background' - allow the garbage collector to delete the dependents in the background; 'Foreground' - a cascading policy that deletes all dependents in the foreground.",
Type: []string{"string"},
Format: "",
},
@@ -20204,7 +22804,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
"deletionTimestamp": {
SchemaProps: spec.SchemaProps{
- Description: "DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This field is set by the server when a graceful deletion is requested by the user, and is not directly settable by a client. The resource is expected to be deleted (no longer visible from resource lists, and not reachable by name) after the time in this field. Once set, this value may not be unset or be set further into the future, although it may be shortened or the resource may be deleted prior to this time. For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, remove the pod from the API. In the presence of network partitions, this object may still exist after this timestamp, until an administrator or automated process can determine the resource is fully terminated. If not set, graceful deletion of the object has not been requested.\n\nPopulated by the system when a graceful deletion is requested. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata",
+ Description: "DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This field is set by the server when a graceful deletion is requested by the user, and is not directly settable by a client. The resource is expected to be deleted (no longer visible from resource lists, and not reachable by name) after the time in this field, once the finalizers list is empty. As long as the finalizers list contains items, deletion is blocked. Once the deletionTimestamp is set, this value may not be unset or be set further into the future, although it may be shortened or the resource may be deleted prior to this time. For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, remove the pod from the API. In the presence of network partitions, this object may still exist after this timestamp, until an administrator or automated process can determine the resource is fully terminated. If not set, graceful deletion of the object has not been requested.\n\nPopulated by the system when a graceful deletion is requested. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata",
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
},
},
@@ -21649,11 +24249,17 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Format: "",
},
},
+ "target": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Target allows for us to nest extra config for targets such as terraform",
+ Ref: ref("k8s.io/kops/pkg/apis/kops/v1alpha1.TargetSpec"),
+ },
+ },
},
},
},
Dependencies: []string{
- "k8s.io/kops/pkg/apis/kops/v1alpha1.AccessSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.Assets", "k8s.io/kops/pkg/apis/kops/v1alpha1.AuthenticationSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.AuthorizationSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.CloudConfiguration", "k8s.io/kops/pkg/apis/kops/v1alpha1.CloudControllerManagerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha1.ClusterZoneSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.DockerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha1.EgressProxySpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.EtcdClusterSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.ExternalDNSConfig", "k8s.io/kops/pkg/apis/kops/v1alpha1.FileAssetSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.HookSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.IAMSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.KubeAPIServerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha1.KubeControllerManagerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha1.KubeDNSConfig", "k8s.io/kops/pkg/apis/kops/v1alpha1.KubeProxyConfig", "k8s.io/kops/pkg/apis/kops/v1alpha1.KubeSchedulerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha1.KubeletConfigSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.NetworkingSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.TopologySpec"},
+ "k8s.io/kops/pkg/apis/kops/v1alpha1.AccessSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.Assets", "k8s.io/kops/pkg/apis/kops/v1alpha1.AuthenticationSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.AuthorizationSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.CloudConfiguration", "k8s.io/kops/pkg/apis/kops/v1alpha1.CloudControllerManagerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha1.ClusterZoneSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.DockerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha1.EgressProxySpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.EtcdClusterSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.ExternalDNSConfig", "k8s.io/kops/pkg/apis/kops/v1alpha1.FileAssetSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.HookSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.IAMSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.KubeAPIServerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha1.KubeControllerManagerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha1.KubeDNSConfig", "k8s.io/kops/pkg/apis/kops/v1alpha1.KubeProxyConfig", "k8s.io/kops/pkg/apis/kops/v1alpha1.KubeSchedulerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha1.KubeletConfigSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.NetworkingSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.TargetSpec", "k8s.io/kops/pkg/apis/kops/v1alpha1.TopologySpec"},
},
"k8s.io/kops/pkg/apis/kops/v1alpha1.ClusterZoneSpec": {
Schema: spec.Schema{
@@ -21941,6 +24547,13 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"),
},
},
+ "image": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Image is the etcd docker image to use. Setting this will ignore the Version specified.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
},
},
},
@@ -22084,124 +24697,6 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
Dependencies: []string{},
},
- "k8s.io/kops/pkg/apis/kops/v1alpha1.Federation": {
- Schema: spec.Schema{
- SchemaProps: spec.SchemaProps{
- Properties: map[string]spec.Schema{
- "kind": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#types-kinds",
- Type: []string{"string"},
- Format: "",
- },
- },
- "apiVersion": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#resources",
- Type: []string{"string"},
- Format: "",
- },
- },
- "metadata": {
- SchemaProps: spec.SchemaProps{
- Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
- },
- },
- "spec": {
- SchemaProps: spec.SchemaProps{
- Ref: ref("k8s.io/kops/pkg/apis/kops/v1alpha1.FederationSpec"),
- },
- },
- },
- Required: []string{"spec"},
- },
- },
- Dependencies: []string{
- "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta", "k8s.io/kops/pkg/apis/kops/v1alpha1.FederationSpec"},
- },
- "k8s.io/kops/pkg/apis/kops/v1alpha1.FederationList": {
- Schema: spec.Schema{
- SchemaProps: spec.SchemaProps{
- Properties: map[string]spec.Schema{
- "kind": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#types-kinds",
- Type: []string{"string"},
- Format: "",
- },
- },
- "apiVersion": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#resources",
- Type: []string{"string"},
- Format: "",
- },
- },
- "metadata": {
- SchemaProps: spec.SchemaProps{
- Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
- },
- },
- "items": {
- SchemaProps: spec.SchemaProps{
- Type: []string{"array"},
- Items: &spec.SchemaOrArray{
- Schema: &spec.Schema{
- SchemaProps: spec.SchemaProps{
- Ref: ref("k8s.io/kops/pkg/apis/kops/v1alpha1.Federation"),
- },
- },
- },
- },
- },
- },
- Required: []string{"items"},
- },
- },
- Dependencies: []string{
- "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta", "k8s.io/kops/pkg/apis/kops/v1alpha1.Federation"},
- },
- "k8s.io/kops/pkg/apis/kops/v1alpha1.FederationSpec": {
- Schema: spec.Schema{
- SchemaProps: spec.SchemaProps{
- Properties: map[string]spec.Schema{
- "controllers": {
- SchemaProps: spec.SchemaProps{
- Type: []string{"array"},
- Items: &spec.SchemaOrArray{
- Schema: &spec.Schema{
- SchemaProps: spec.SchemaProps{
- Type: []string{"string"},
- Format: "",
- },
- },
- },
- },
- },
- "members": {
- SchemaProps: spec.SchemaProps{
- Type: []string{"array"},
- Items: &spec.SchemaOrArray{
- Schema: &spec.Schema{
- SchemaProps: spec.SchemaProps{
- Type: []string{"string"},
- Format: "",
- },
- },
- },
- },
- },
- "dnsName": {
- SchemaProps: spec.SchemaProps{
- Type: []string{"string"},
- Format: "",
- },
- },
- },
- },
- },
- Dependencies: []string{},
- },
"k8s.io/kops/pkg/apis/kops/v1alpha1.FileAssetSpec": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -23139,6 +25634,13 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
},
},
+ "maxRequestsInflight": {
+ SchemaProps: spec.SchemaProps{
+ Description: "MaxRequestsInflight The maximum number of non-mutating requests in flight at a given time.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
},
},
},
@@ -23881,6 +26383,13 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"),
},
},
+ "failSwapOn": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Tells the Kubelet to fail to start if swap is enabled on the node.",
+ Type: []string{"boolean"},
+ Format: "",
+ },
+ },
},
},
},
@@ -24152,6 +26661,46 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
Dependencies: []string{},
},
+ "k8s.io/kops/pkg/apis/kops/v1alpha1.TargetSpec": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "TargetSpec allows for specifying target config in an extensible way",
+ Properties: map[string]spec.Schema{
+ "terraform": {
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/kops/pkg/apis/kops/v1alpha1.TerraformSpec"),
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/kops/pkg/apis/kops/v1alpha1.TerraformSpec"},
+ },
+ "k8s.io/kops/pkg/apis/kops/v1alpha1.TerraformSpec": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "TerraformSpec allows us to specify terraform config in an extensible way",
+ Properties: map[string]spec.Schema{
+ "providerExtraConfig": {
+ SchemaProps: spec.SchemaProps{
+ Description: "ProviderExtraConfig contains key/value pairs to add to the rendered terraform \"provider\" block",
+ Type: []string{"object"},
+ AdditionalProperties: &spec.SchemaOrBool{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{},
+ },
"k8s.io/kops/pkg/apis/kops/v1alpha1.TopologySpec": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -25082,11 +27631,17 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Format: "",
},
},
+ "target": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Target allows for us to nest extra config for targets such as terraform",
+ Ref: ref("k8s.io/kops/pkg/apis/kops/v1alpha2.TargetSpec"),
+ },
+ },
},
},
},
Dependencies: []string{
- "k8s.io/kops/pkg/apis/kops/v1alpha2.AccessSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.Assets", "k8s.io/kops/pkg/apis/kops/v1alpha2.AuthenticationSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.AuthorizationSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.CloudConfiguration", "k8s.io/kops/pkg/apis/kops/v1alpha2.CloudControllerManagerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha2.ClusterSubnetSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.DockerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha2.EgressProxySpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.EtcdClusterSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.ExternalDNSConfig", "k8s.io/kops/pkg/apis/kops/v1alpha2.FileAssetSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.HookSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.IAMSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.KubeAPIServerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha2.KubeControllerManagerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha2.KubeDNSConfig", "k8s.io/kops/pkg/apis/kops/v1alpha2.KubeProxyConfig", "k8s.io/kops/pkg/apis/kops/v1alpha2.KubeSchedulerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha2.KubeletConfigSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.NetworkingSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.TopologySpec"},
+ "k8s.io/kops/pkg/apis/kops/v1alpha2.AccessSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.Assets", "k8s.io/kops/pkg/apis/kops/v1alpha2.AuthenticationSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.AuthorizationSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.CloudConfiguration", "k8s.io/kops/pkg/apis/kops/v1alpha2.CloudControllerManagerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha2.ClusterSubnetSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.DockerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha2.EgressProxySpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.EtcdClusterSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.ExternalDNSConfig", "k8s.io/kops/pkg/apis/kops/v1alpha2.FileAssetSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.HookSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.IAMSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.KubeAPIServerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha2.KubeControllerManagerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha2.KubeDNSConfig", "k8s.io/kops/pkg/apis/kops/v1alpha2.KubeProxyConfig", "k8s.io/kops/pkg/apis/kops/v1alpha2.KubeSchedulerConfig", "k8s.io/kops/pkg/apis/kops/v1alpha2.KubeletConfigSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.NetworkingSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.TargetSpec", "k8s.io/kops/pkg/apis/kops/v1alpha2.TopologySpec"},
},
"k8s.io/kops/pkg/apis/kops/v1alpha2.ClusterSubnetSpec": {
Schema: spec.Schema{
@@ -25388,6 +27943,13 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"),
},
},
+ "image": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Image is the etcd docker image to use. Setting this will ignore the Version specified.",
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
},
},
},
@@ -25531,124 +28093,6 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
Dependencies: []string{},
},
- "k8s.io/kops/pkg/apis/kops/v1alpha2.Federation": {
- Schema: spec.Schema{
- SchemaProps: spec.SchemaProps{
- Description: "Federation represents a federated set of kubernetes clusters",
- Properties: map[string]spec.Schema{
- "kind": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#types-kinds",
- Type: []string{"string"},
- Format: "",
- },
- },
- "apiVersion": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#resources",
- Type: []string{"string"},
- Format: "",
- },
- },
- "metadata": {
- SchemaProps: spec.SchemaProps{
- Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
- },
- },
- "spec": {
- SchemaProps: spec.SchemaProps{
- Ref: ref("k8s.io/kops/pkg/apis/kops/v1alpha2.FederationSpec"),
- },
- },
- },
- },
- },
- Dependencies: []string{
- "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta", "k8s.io/kops/pkg/apis/kops/v1alpha2.FederationSpec"},
- },
- "k8s.io/kops/pkg/apis/kops/v1alpha2.FederationList": {
- Schema: spec.Schema{
- SchemaProps: spec.SchemaProps{
- Properties: map[string]spec.Schema{
- "kind": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#types-kinds",
- Type: []string{"string"},
- Format: "",
- },
- },
- "apiVersion": {
- SchemaProps: spec.SchemaProps{
- 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/api-conventions.md#resources",
- Type: []string{"string"},
- Format: "",
- },
- },
- "metadata": {
- SchemaProps: spec.SchemaProps{
- Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
- },
- },
- "items": {
- SchemaProps: spec.SchemaProps{
- Type: []string{"array"},
- Items: &spec.SchemaOrArray{
- Schema: &spec.Schema{
- SchemaProps: spec.SchemaProps{
- Ref: ref("k8s.io/kops/pkg/apis/kops/v1alpha2.Federation"),
- },
- },
- },
- },
- },
- },
- Required: []string{"items"},
- },
- },
- Dependencies: []string{
- "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta", "k8s.io/kops/pkg/apis/kops/v1alpha2.Federation"},
- },
- "k8s.io/kops/pkg/apis/kops/v1alpha2.FederationSpec": {
- Schema: spec.Schema{
- SchemaProps: spec.SchemaProps{
- Properties: map[string]spec.Schema{
- "controllers": {
- SchemaProps: spec.SchemaProps{
- Type: []string{"array"},
- Items: &spec.SchemaOrArray{
- Schema: &spec.Schema{
- SchemaProps: spec.SchemaProps{
- Type: []string{"string"},
- Format: "",
- },
- },
- },
- },
- },
- "members": {
- SchemaProps: spec.SchemaProps{
- Type: []string{"array"},
- Items: &spec.SchemaOrArray{
- Schema: &spec.Schema{
- SchemaProps: spec.SchemaProps{
- Type: []string{"string"},
- Format: "",
- },
- },
- },
- },
- },
- "dnsName": {
- SchemaProps: spec.SchemaProps{
- Type: []string{"string"},
- Format: "",
- },
- },
- },
- },
- },
- Dependencies: []string{},
- },
"k8s.io/kops/pkg/apis/kops/v1alpha2.FileAssetSpec": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@@ -26740,6 +29184,13 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
},
},
+ "maxRequestsInflight": {
+ SchemaProps: spec.SchemaProps{
+ Description: "MaxRequestsInflight The maximum number of non-mutating requests in flight at a given time.",
+ Type: []string{"integer"},
+ Format: "int32",
+ },
+ },
},
},
},
@@ -27479,6 +29930,13 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"),
},
},
+ "failSwapOn": {
+ SchemaProps: spec.SchemaProps{
+ Description: "Tells the Kubelet to fail to start if swap is enabled on the node.",
+ Type: []string{"boolean"},
+ Format: "",
+ },
+ },
},
},
},
@@ -27750,6 +30208,46 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
},
Dependencies: []string{},
},
+ "k8s.io/kops/pkg/apis/kops/v1alpha2.TargetSpec": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "TargetSpec allows for specifying target config in an extensible way",
+ Properties: map[string]spec.Schema{
+ "terraform": {
+ SchemaProps: spec.SchemaProps{
+ Ref: ref("k8s.io/kops/pkg/apis/kops/v1alpha2.TerraformSpec"),
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{
+ "k8s.io/kops/pkg/apis/kops/v1alpha2.TerraformSpec"},
+ },
+ "k8s.io/kops/pkg/apis/kops/v1alpha2.TerraformSpec": {
+ Schema: spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Description: "TerraformSpec allows us to specify terraform config in an extensible way",
+ Properties: map[string]spec.Schema{
+ "providerExtraConfig": {
+ SchemaProps: spec.SchemaProps{
+ Description: "ProviderExtraConfig contains key/value pairs to add to the rendered terraform \"provider\" block",
+ Type: []string{"object"},
+ AdditionalProperties: &spec.SchemaOrBool{
+ Schema: &spec.Schema{
+ SchemaProps: spec.SchemaProps{
+ Type: []string{"string"},
+ Format: "",
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ Dependencies: []string{},
+ },
"k8s.io/kops/pkg/apis/kops/v1alpha2.TopologySpec": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{