Update updates a cluster
Body
annotationsobjectShow child attributes
[key: string]stringclusterResourcesbooleanIndicates if cluster level resources should be managed. This setting is used only if cluster is connected in a namespaced mode.
configv1alpha1ClusterConfigClusterConfig is the configuration attributes. This structure is subset of the go-client rest.Config with annotations added for marshalling.
Show child attributes
awsAuthConfigv1alpha1AWSAuthConfigShow child attributes
clusterNamestringprofilestringProfile contains optional role ARN. If set then AWS IAM Authenticator uses the profile to perform cluster operations instead of the default AWS credential provider chain.
roleARNstringRoleARN contains optional role ARN. If set then AWS IAM Authenticator assume a role to perform cluster operations instead of the default AWS credential provider chain.
bearerTokenstringServer requires Bearer authentication. This client will not attempt to use refresh tokens for an OAuth2 flow. TODO: demonstrate an OAuth2 compatible client.
burstinteger<int64>Burst allows extra queries to accumulate for a rapid burst of requests to this cluster.
disableCompressionbooleanDisableCompression bypasses automatic GZip compression requests to the server.
execProviderConfigv1alpha1ExecProviderConfigShow child attributes
apiVersionstringargsArray<string>commandstringconfigruntimeRawExtensionRawExtension is used to hold extensions in external versions.
To use this, make a field which has RawExtension as its type in your external, versioned struct, and Object in your internal struct. You also need to register your various plugin types.
// Internal package:
type MyAPIObject struct {
runtime.TypeMeta `json:""`
MyPlugin runtime.Object `json:"myPlugin"`
}
type PluginA struct {
AOption string `json:"aOption"`
}// External package:
type MyAPIObject struct {
runtime.TypeMeta `json:""`
MyPlugin runtime.RawExtension `json:"myPlugin"`
}
type PluginA struct {
AOption string `json:"aOption"`
}// On the wire, the JSON will look something like this:
{
"kind":"MyAPIObject",
"apiVersion":"v1",
"myPlugin": {
"kind":"PluginA",
"aOption":"foo",
},
}So what happens? Decode first uses json or yaml to unmarshal the serialized data into your external MyAPIObject. That causes the raw JSON to be stored, but not unpacked. The next step is to copy (using pkg/conversion) into the internal struct. The runtime package's DefaultScheme has conversion functions installed which will unpack the JSON stored in RawExtension, turning it into the correct object type, and storing it in the Object. (TODO: In the case where the object is of an unknown type, a runtime.Unknown object will be created and stored.)
+k8s:deepcopy-gen=true +protobuf=true +k8s:openapi-gen=true
Show child attributes
rawstring<byte>Raw is the underlying serialization of this object.
TODO: Determine how to detect ContentType and ContentEncoding of 'Raw' data.
envobjectShow child attributes
[key: string]stringinstallHintstringprovideClusterInfobooleanpasswordstringproxyUrlstringqpsnumber<float>QPS controls the number of queries per second allowed for this cluster.
tlsClientConfigv1alpha1TLSClientConfigShow child attributes
caDatastring<byte>certDatastring<byte>insecurebooleanInsecure specifies that the server should be accessed without verifying the TLS certificate. For testing only.
keyDatastring<byte>serverNamestringServerName is passed to the server for SNI and is used in the client to check server certificates against. If ServerName is empty, the hostname used to contact the server is used.
usernamestringconfigHashstring<uint64>connectionStatev1alpha1ConnectionStateShow child attributes
attemptedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
messagestringstatusstringShow child attributes
apiVersionsArray<string>applicationsCountinteger<int64>cacheInfov1alpha1ClusterCacheInfoShow child attributes
apisCountinteger<int64>lastCacheSyncTimev1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
resourcesCountinteger<int64>connectionStatev1alpha1ConnectionStateShow child attributes
attemptedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
messagestringstatusstringserverVersionstringlabelsobjectShow child attributes
[key: string]stringnamestringnamespacesArray<string>Holds list of namespaces which are accessible in that cluster. Cluster level resources will be ignored if namespace list is not empty.
projectstringrefreshRequestedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
serverstringserverVersionstringshardinteger<int64>Shard contains optional shard number. Calculated on the fly by the application controller if not specified.
Parameters
id.valuestringrequiredpathvalue holds the cluster server URL or cluster name
updatedFieldsArray<string>queryid.typestringquerytype is the type of the specified cluster identifier ( "server" - default, "name" ).
Response
A successful response.
Response fields application/json
annotationsobjectShow child attributes
[key: string]stringclusterResourcesbooleanIndicates if cluster level resources should be managed. This setting is used only if cluster is connected in a namespaced mode.
configv1alpha1ClusterConfigClusterConfig is the configuration attributes. This structure is subset of the go-client rest.Config with annotations added for marshalling.
Show child attributes
awsAuthConfigv1alpha1AWSAuthConfigShow child attributes
clusterNamestringprofilestringProfile contains optional role ARN. If set then AWS IAM Authenticator uses the profile to perform cluster operations instead of the default AWS credential provider chain.
roleARNstringRoleARN contains optional role ARN. If set then AWS IAM Authenticator assume a role to perform cluster operations instead of the default AWS credential provider chain.
bearerTokenstringServer requires Bearer authentication. This client will not attempt to use refresh tokens for an OAuth2 flow. TODO: demonstrate an OAuth2 compatible client.
burstinteger<int64>Burst allows extra queries to accumulate for a rapid burst of requests to this cluster.
disableCompressionbooleanDisableCompression bypasses automatic GZip compression requests to the server.
execProviderConfigv1alpha1ExecProviderConfigShow child attributes
apiVersionstringargsArray<string>commandstringconfigruntimeRawExtensionRawExtension is used to hold extensions in external versions.
To use this, make a field which has RawExtension as its type in your external, versioned struct, and Object in your internal struct. You also need to register your various plugin types.
// Internal package:
type MyAPIObject struct {
runtime.TypeMeta `json:""`
MyPlugin runtime.Object `json:"myPlugin"`
}
type PluginA struct {
AOption string `json:"aOption"`
}// External package:
type MyAPIObject struct {
runtime.TypeMeta `json:""`
MyPlugin runtime.RawExtension `json:"myPlugin"`
}
type PluginA struct {
AOption string `json:"aOption"`
}// On the wire, the JSON will look something like this:
{
"kind":"MyAPIObject",
"apiVersion":"v1",
"myPlugin": {
"kind":"PluginA",
"aOption":"foo",
},
}So what happens? Decode first uses json or yaml to unmarshal the serialized data into your external MyAPIObject. That causes the raw JSON to be stored, but not unpacked. The next step is to copy (using pkg/conversion) into the internal struct. The runtime package's DefaultScheme has conversion functions installed which will unpack the JSON stored in RawExtension, turning it into the correct object type, and storing it in the Object. (TODO: In the case where the object is of an unknown type, a runtime.Unknown object will be created and stored.)
+k8s:deepcopy-gen=true +protobuf=true +k8s:openapi-gen=true
Show child attributes
rawstring<byte>Raw is the underlying serialization of this object.
TODO: Determine how to detect ContentType and ContentEncoding of 'Raw' data.
envobjectShow child attributes
[key: string]stringinstallHintstringprovideClusterInfobooleanpasswordstringproxyUrlstringqpsnumber<float>QPS controls the number of queries per second allowed for this cluster.
tlsClientConfigv1alpha1TLSClientConfigShow child attributes
caDatastring<byte>certDatastring<byte>insecurebooleanInsecure specifies that the server should be accessed without verifying the TLS certificate. For testing only.
keyDatastring<byte>serverNamestringServerName is passed to the server for SNI and is used in the client to check server certificates against. If ServerName is empty, the hostname used to contact the server is used.
usernamestringconfigHashstring<uint64>connectionStatev1alpha1ConnectionStateShow child attributes
attemptedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
messagestringstatusstringShow child attributes
apiVersionsArray<string>applicationsCountinteger<int64>cacheInfov1alpha1ClusterCacheInfoShow child attributes
apisCountinteger<int64>lastCacheSyncTimev1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
resourcesCountinteger<int64>connectionStatev1alpha1ConnectionStateShow child attributes
attemptedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
messagestringstatusstringserverVersionstringlabelsobjectShow child attributes
[key: string]stringnamestringnamespacesArray<string>Holds list of namespaces which are accessible in that cluster. Cluster level resources will be ignored if namespace list is not empty.
projectstringrefreshRequestedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
serverstringserverVersionstringshardinteger<int64>Shard contains optional shard number. Calculated on the fly by the application controller if not specified.
An unexpected error response.
Response fields application/json
codeinteger<int32>detailsArray<protobufAny>Show child attributes
type_urlstringvaluestring<byte>errorstringmessagestringAuthorization
bearerapiKey in headerA token sent as Authorization: Bearer <token>. API Docs shows how to get one.
