1
16
17
18
19 package v1beta1
20
21 import (
22 "context"
23 json "encoding/json"
24 "fmt"
25 "time"
26
27 v1beta1 "k8s.io/api/extensions/v1beta1"
28 v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
29 types "k8s.io/apimachinery/pkg/types"
30 watch "k8s.io/apimachinery/pkg/watch"
31 extensionsv1beta1 "k8s.io/client-go/applyconfigurations/extensions/v1beta1"
32 scheme "k8s.io/client-go/kubernetes/scheme"
33 rest "k8s.io/client-go/rest"
34 )
35
36
37
38 type DeploymentsGetter interface {
39 Deployments(namespace string) DeploymentInterface
40 }
41
42
43 type DeploymentInterface interface {
44 Create(ctx context.Context, deployment *v1beta1.Deployment, opts v1.CreateOptions) (*v1beta1.Deployment, error)
45 Update(ctx context.Context, deployment *v1beta1.Deployment, opts v1.UpdateOptions) (*v1beta1.Deployment, error)
46 UpdateStatus(ctx context.Context, deployment *v1beta1.Deployment, opts v1.UpdateOptions) (*v1beta1.Deployment, error)
47 Delete(ctx context.Context, name string, opts v1.DeleteOptions) error
48 DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error
49 Get(ctx context.Context, name string, opts v1.GetOptions) (*v1beta1.Deployment, error)
50 List(ctx context.Context, opts v1.ListOptions) (*v1beta1.DeploymentList, error)
51 Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error)
52 Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *v1beta1.Deployment, err error)
53 Apply(ctx context.Context, deployment *extensionsv1beta1.DeploymentApplyConfiguration, opts v1.ApplyOptions) (result *v1beta1.Deployment, err error)
54 ApplyStatus(ctx context.Context, deployment *extensionsv1beta1.DeploymentApplyConfiguration, opts v1.ApplyOptions) (result *v1beta1.Deployment, err error)
55 GetScale(ctx context.Context, deploymentName string, options v1.GetOptions) (*v1beta1.Scale, error)
56 UpdateScale(ctx context.Context, deploymentName string, scale *v1beta1.Scale, opts v1.UpdateOptions) (*v1beta1.Scale, error)
57 ApplyScale(ctx context.Context, deploymentName string, scale *extensionsv1beta1.ScaleApplyConfiguration, opts v1.ApplyOptions) (*v1beta1.Scale, error)
58
59 DeploymentExpansion
60 }
61
62
63 type deployments struct {
64 client rest.Interface
65 ns string
66 }
67
68
69 func newDeployments(c *ExtensionsV1beta1Client, namespace string) *deployments {
70 return &deployments{
71 client: c.RESTClient(),
72 ns: namespace,
73 }
74 }
75
76
77 func (c *deployments) Get(ctx context.Context, name string, options v1.GetOptions) (result *v1beta1.Deployment, err error) {
78 result = &v1beta1.Deployment{}
79 err = c.client.Get().
80 Namespace(c.ns).
81 Resource("deployments").
82 Name(name).
83 VersionedParams(&options, scheme.ParameterCodec).
84 Do(ctx).
85 Into(result)
86 return
87 }
88
89
90 func (c *deployments) List(ctx context.Context, opts v1.ListOptions) (result *v1beta1.DeploymentList, err error) {
91 var timeout time.Duration
92 if opts.TimeoutSeconds != nil {
93 timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
94 }
95 result = &v1beta1.DeploymentList{}
96 err = c.client.Get().
97 Namespace(c.ns).
98 Resource("deployments").
99 VersionedParams(&opts, scheme.ParameterCodec).
100 Timeout(timeout).
101 Do(ctx).
102 Into(result)
103 return
104 }
105
106
107 func (c *deployments) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
108 var timeout time.Duration
109 if opts.TimeoutSeconds != nil {
110 timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
111 }
112 opts.Watch = true
113 return c.client.Get().
114 Namespace(c.ns).
115 Resource("deployments").
116 VersionedParams(&opts, scheme.ParameterCodec).
117 Timeout(timeout).
118 Watch(ctx)
119 }
120
121
122 func (c *deployments) Create(ctx context.Context, deployment *v1beta1.Deployment, opts v1.CreateOptions) (result *v1beta1.Deployment, err error) {
123 result = &v1beta1.Deployment{}
124 err = c.client.Post().
125 Namespace(c.ns).
126 Resource("deployments").
127 VersionedParams(&opts, scheme.ParameterCodec).
128 Body(deployment).
129 Do(ctx).
130 Into(result)
131 return
132 }
133
134
135 func (c *deployments) Update(ctx context.Context, deployment *v1beta1.Deployment, opts v1.UpdateOptions) (result *v1beta1.Deployment, err error) {
136 result = &v1beta1.Deployment{}
137 err = c.client.Put().
138 Namespace(c.ns).
139 Resource("deployments").
140 Name(deployment.Name).
141 VersionedParams(&opts, scheme.ParameterCodec).
142 Body(deployment).
143 Do(ctx).
144 Into(result)
145 return
146 }
147
148
149
150 func (c *deployments) UpdateStatus(ctx context.Context, deployment *v1beta1.Deployment, opts v1.UpdateOptions) (result *v1beta1.Deployment, err error) {
151 result = &v1beta1.Deployment{}
152 err = c.client.Put().
153 Namespace(c.ns).
154 Resource("deployments").
155 Name(deployment.Name).
156 SubResource("status").
157 VersionedParams(&opts, scheme.ParameterCodec).
158 Body(deployment).
159 Do(ctx).
160 Into(result)
161 return
162 }
163
164
165 func (c *deployments) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
166 return c.client.Delete().
167 Namespace(c.ns).
168 Resource("deployments").
169 Name(name).
170 Body(&opts).
171 Do(ctx).
172 Error()
173 }
174
175
176 func (c *deployments) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
177 var timeout time.Duration
178 if listOpts.TimeoutSeconds != nil {
179 timeout = time.Duration(*listOpts.TimeoutSeconds) * time.Second
180 }
181 return c.client.Delete().
182 Namespace(c.ns).
183 Resource("deployments").
184 VersionedParams(&listOpts, scheme.ParameterCodec).
185 Timeout(timeout).
186 Body(&opts).
187 Do(ctx).
188 Error()
189 }
190
191
192 func (c *deployments) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *v1beta1.Deployment, err error) {
193 result = &v1beta1.Deployment{}
194 err = c.client.Patch(pt).
195 Namespace(c.ns).
196 Resource("deployments").
197 Name(name).
198 SubResource(subresources...).
199 VersionedParams(&opts, scheme.ParameterCodec).
200 Body(data).
201 Do(ctx).
202 Into(result)
203 return
204 }
205
206
207 func (c *deployments) Apply(ctx context.Context, deployment *extensionsv1beta1.DeploymentApplyConfiguration, opts v1.ApplyOptions) (result *v1beta1.Deployment, err error) {
208 if deployment == nil {
209 return nil, fmt.Errorf("deployment provided to Apply must not be nil")
210 }
211 patchOpts := opts.ToPatchOptions()
212 data, err := json.Marshal(deployment)
213 if err != nil {
214 return nil, err
215 }
216 name := deployment.Name
217 if name == nil {
218 return nil, fmt.Errorf("deployment.Name must be provided to Apply")
219 }
220 result = &v1beta1.Deployment{}
221 err = c.client.Patch(types.ApplyPatchType).
222 Namespace(c.ns).
223 Resource("deployments").
224 Name(*name).
225 VersionedParams(&patchOpts, scheme.ParameterCodec).
226 Body(data).
227 Do(ctx).
228 Into(result)
229 return
230 }
231
232
233
234 func (c *deployments) ApplyStatus(ctx context.Context, deployment *extensionsv1beta1.DeploymentApplyConfiguration, opts v1.ApplyOptions) (result *v1beta1.Deployment, err error) {
235 if deployment == nil {
236 return nil, fmt.Errorf("deployment provided to Apply must not be nil")
237 }
238 patchOpts := opts.ToPatchOptions()
239 data, err := json.Marshal(deployment)
240 if err != nil {
241 return nil, err
242 }
243
244 name := deployment.Name
245 if name == nil {
246 return nil, fmt.Errorf("deployment.Name must be provided to Apply")
247 }
248
249 result = &v1beta1.Deployment{}
250 err = c.client.Patch(types.ApplyPatchType).
251 Namespace(c.ns).
252 Resource("deployments").
253 Name(*name).
254 SubResource("status").
255 VersionedParams(&patchOpts, scheme.ParameterCodec).
256 Body(data).
257 Do(ctx).
258 Into(result)
259 return
260 }
261
262
263 func (c *deployments) GetScale(ctx context.Context, deploymentName string, options v1.GetOptions) (result *v1beta1.Scale, err error) {
264 result = &v1beta1.Scale{}
265 err = c.client.Get().
266 Namespace(c.ns).
267 Resource("deployments").
268 Name(deploymentName).
269 SubResource("scale").
270 VersionedParams(&options, scheme.ParameterCodec).
271 Do(ctx).
272 Into(result)
273 return
274 }
275
276
277 func (c *deployments) UpdateScale(ctx context.Context, deploymentName string, scale *v1beta1.Scale, opts v1.UpdateOptions) (result *v1beta1.Scale, err error) {
278 result = &v1beta1.Scale{}
279 err = c.client.Put().
280 Namespace(c.ns).
281 Resource("deployments").
282 Name(deploymentName).
283 SubResource("scale").
284 VersionedParams(&opts, scheme.ParameterCodec).
285 Body(scale).
286 Do(ctx).
287 Into(result)
288 return
289 }
290
291
292
293 func (c *deployments) ApplyScale(ctx context.Context, deploymentName string, scale *extensionsv1beta1.ScaleApplyConfiguration, opts v1.ApplyOptions) (result *v1beta1.Scale, err error) {
294 if scale == nil {
295 return nil, fmt.Errorf("scale provided to ApplyScale must not be nil")
296 }
297 patchOpts := opts.ToPatchOptions()
298 data, err := json.Marshal(scale)
299 if err != nil {
300 return nil, err
301 }
302
303 result = &v1beta1.Scale{}
304 err = c.client.Patch(types.ApplyPatchType).
305 Namespace(c.ns).
306 Resource("deployments").
307 Name(deploymentName).
308 SubResource("scale").
309 VersionedParams(&patchOpts, scheme.ParameterCodec).
310 Body(data).
311 Do(ctx).
312 Into(result)
313 return
314 }
315
View as plain text