MCPcopy
hub / github.com/kubernetes/client-go / Get

Method Get

scale/client.go:115–154  ·  scale/client.go::namespacedScaleClient.Get
(resource schema.GroupResource, name string)

Source from the content-addressed store, hash-verified

113}
114
115func (c *namespacedScaleClient) Get(resource schema.GroupResource, name string) (*autoscaling.Scale, error) {
116 // Currently, a /scale endpoint can return different scale types.
117 // Until we have support for the alternative API representations proposal,
118 // we need to deal with accepting different API versions.
119 // In practice, this is autoscaling/v1.Scale and extensions/v1beta1.Scale
120
121 path, gvr, err := c.client.pathAndVersionFor(resource)
122 if err != nil {
123 return nil, fmt.Errorf("unable to get client for %s: %v", resource.String(), err)
124 }
125
126 result := c.client.clientBase.Get().
127 AbsPath(path).
128 Namespace(c.namespace).
129 Resource(gvr.Resource).
130 Name(name).
131 SubResource("scale").
132 Do()
133 if err := result.Error(); err != nil {
134 return nil, err
135 }
136
137 scaleBytes, err := result.Raw()
138 if err != nil {
139 return nil, err
140 }
141 decoder := scaleConverter.codecs.UniversalDecoder(scaleConverter.ScaleVersions()...)
142 rawScaleObj, err := runtime.Decode(decoder, scaleBytes)
143 if err != nil {
144 return nil, err
145 }
146
147 // convert whatever this is to autoscaling/v1.Scale
148 scaleObj, err := scaleConverter.ConvertToVersion(rawScaleObj, autoscaling.SchemeGroupVersion)
149 if err != nil {
150 return nil, fmt.Errorf("received an object from a /scale endpoint which was not convertible to autoscaling Scale: %v", err)
151 }
152
153 return scaleObj.(*autoscaling.Scale), nil
154}
155
156func (c *namespacedScaleClient) Update(resource schema.GroupResource, scale *autoscaling.Scale) (*autoscaling.Scale, error) {
157 path, gvr, err := c.client.pathAndVersionFor(resource)

Callers

nothing calls this directly

Calls 15

pathAndVersionForMethod · 0.80
SubResourceMethod · 0.80
AbsPathMethod · 0.80
RawMethod · 0.80
ScaleVersionsMethod · 0.80
ConvertToVersionMethod · 0.80
ErrorfMethod · 0.65
StringMethod · 0.65
DoMethod · 0.65
ResourceMethod · 0.65
NamespaceMethod · 0.65
GetMethod · 0.65

Tested by

no test coverage detected