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/apps/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 appsv1beta1 "k8s.io/client-go/applyconfigurations/apps/v1beta1"
32 scheme "k8s.io/client-go/kubernetes/scheme"
33 rest "k8s.io/client-go/rest"
34 )
35
36
37
38 type StatefulSetsGetter interface {
39 StatefulSets(namespace string) StatefulSetInterface
40 }
41
42
43 type StatefulSetInterface interface {
44 Create(ctx context.Context, statefulSet *v1beta1.StatefulSet, opts v1.CreateOptions) (*v1beta1.StatefulSet, error)
45 Update(ctx context.Context, statefulSet *v1beta1.StatefulSet, opts v1.UpdateOptions) (*v1beta1.StatefulSet, error)
46 UpdateStatus(ctx context.Context, statefulSet *v1beta1.StatefulSet, opts v1.UpdateOptions) (*v1beta1.StatefulSet, 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.StatefulSet, error)
50 List(ctx context.Context, opts v1.ListOptions) (*v1beta1.StatefulSetList, 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.StatefulSet, err error)
53 Apply(ctx context.Context, statefulSet *appsv1beta1.StatefulSetApplyConfiguration, opts v1.ApplyOptions) (result *v1beta1.StatefulSet, err error)
54 ApplyStatus(ctx context.Context, statefulSet *appsv1beta1.StatefulSetApplyConfiguration, opts v1.ApplyOptions) (result *v1beta1.StatefulSet, err error)
55 StatefulSetExpansion
56 }
57
58
59 type statefulSets struct {
60 client rest.Interface
61 ns string
62 }
63
64
65 func newStatefulSets(c *AppsV1beta1Client, namespace string) *statefulSets {
66 return &statefulSets{
67 client: c.RESTClient(),
68 ns: namespace,
69 }
70 }
71
72
73 func (c *statefulSets) Get(ctx context.Context, name string, options v1.GetOptions) (result *v1beta1.StatefulSet, err error) {
74 result = &v1beta1.StatefulSet{}
75 err = c.client.Get().
76 Namespace(c.ns).
77 Resource("statefulsets").
78 Name(name).
79 VersionedParams(&options, scheme.ParameterCodec).
80 Do(ctx).
81 Into(result)
82 return
83 }
84
85
86 func (c *statefulSets) List(ctx context.Context, opts v1.ListOptions) (result *v1beta1.StatefulSetList, err error) {
87 var timeout time.Duration
88 if opts.TimeoutSeconds != nil {
89 timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
90 }
91 result = &v1beta1.StatefulSetList{}
92 err = c.client.Get().
93 Namespace(c.ns).
94 Resource("statefulsets").
95 VersionedParams(&opts, scheme.ParameterCodec).
96 Timeout(timeout).
97 Do(ctx).
98 Into(result)
99 return
100 }
101
102
103 func (c *statefulSets) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
104 var timeout time.Duration
105 if opts.TimeoutSeconds != nil {
106 timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
107 }
108 opts.Watch = true
109 return c.client.Get().
110 Namespace(c.ns).
111 Resource("statefulsets").
112 VersionedParams(&opts, scheme.ParameterCodec).
113 Timeout(timeout).
114 Watch(ctx)
115 }
116
117
118 func (c *statefulSets) Create(ctx context.Context, statefulSet *v1beta1.StatefulSet, opts v1.CreateOptions) (result *v1beta1.StatefulSet, err error) {
119 result = &v1beta1.StatefulSet{}
120 err = c.client.Post().
121 Namespace(c.ns).
122 Resource("statefulsets").
123 VersionedParams(&opts, scheme.ParameterCodec).
124 Body(statefulSet).
125 Do(ctx).
126 Into(result)
127 return
128 }
129
130
131 func (c *statefulSets) Update(ctx context.Context, statefulSet *v1beta1.StatefulSet, opts v1.UpdateOptions) (result *v1beta1.StatefulSet, err error) {
132 result = &v1beta1.StatefulSet{}
133 err = c.client.Put().
134 Namespace(c.ns).
135 Resource("statefulsets").
136 Name(statefulSet.Name).
137 VersionedParams(&opts, scheme.ParameterCodec).
138 Body(statefulSet).
139 Do(ctx).
140 Into(result)
141 return
142 }
143
144
145
146 func (c *statefulSets) UpdateStatus(ctx context.Context, statefulSet *v1beta1.StatefulSet, opts v1.UpdateOptions) (result *v1beta1.StatefulSet, err error) {
147 result = &v1beta1.StatefulSet{}
148 err = c.client.Put().
149 Namespace(c.ns).
150 Resource("statefulsets").
151 Name(statefulSet.Name).
152 SubResource("status").
153 VersionedParams(&opts, scheme.ParameterCodec).
154 Body(statefulSet).
155 Do(ctx).
156 Into(result)
157 return
158 }
159
160
161 func (c *statefulSets) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
162 return c.client.Delete().
163 Namespace(c.ns).
164 Resource("statefulsets").
165 Name(name).
166 Body(&opts).
167 Do(ctx).
168 Error()
169 }
170
171
172 func (c *statefulSets) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
173 var timeout time.Duration
174 if listOpts.TimeoutSeconds != nil {
175 timeout = time.Duration(*listOpts.TimeoutSeconds) * time.Second
176 }
177 return c.client.Delete().
178 Namespace(c.ns).
179 Resource("statefulsets").
180 VersionedParams(&listOpts, scheme.ParameterCodec).
181 Timeout(timeout).
182 Body(&opts).
183 Do(ctx).
184 Error()
185 }
186
187
188 func (c *statefulSets) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *v1beta1.StatefulSet, err error) {
189 result = &v1beta1.StatefulSet{}
190 err = c.client.Patch(pt).
191 Namespace(c.ns).
192 Resource("statefulsets").
193 Name(name).
194 SubResource(subresources...).
195 VersionedParams(&opts, scheme.ParameterCodec).
196 Body(data).
197 Do(ctx).
198 Into(result)
199 return
200 }
201
202
203 func (c *statefulSets) Apply(ctx context.Context, statefulSet *appsv1beta1.StatefulSetApplyConfiguration, opts v1.ApplyOptions) (result *v1beta1.StatefulSet, err error) {
204 if statefulSet == nil {
205 return nil, fmt.Errorf("statefulSet provided to Apply must not be nil")
206 }
207 patchOpts := opts.ToPatchOptions()
208 data, err := json.Marshal(statefulSet)
209 if err != nil {
210 return nil, err
211 }
212 name := statefulSet.Name
213 if name == nil {
214 return nil, fmt.Errorf("statefulSet.Name must be provided to Apply")
215 }
216 result = &v1beta1.StatefulSet{}
217 err = c.client.Patch(types.ApplyPatchType).
218 Namespace(c.ns).
219 Resource("statefulsets").
220 Name(*name).
221 VersionedParams(&patchOpts, scheme.ParameterCodec).
222 Body(data).
223 Do(ctx).
224 Into(result)
225 return
226 }
227
228
229
230 func (c *statefulSets) ApplyStatus(ctx context.Context, statefulSet *appsv1beta1.StatefulSetApplyConfiguration, opts v1.ApplyOptions) (result *v1beta1.StatefulSet, err error) {
231 if statefulSet == nil {
232 return nil, fmt.Errorf("statefulSet provided to Apply must not be nil")
233 }
234 patchOpts := opts.ToPatchOptions()
235 data, err := json.Marshal(statefulSet)
236 if err != nil {
237 return nil, err
238 }
239
240 name := statefulSet.Name
241 if name == nil {
242 return nil, fmt.Errorf("statefulSet.Name must be provided to Apply")
243 }
244
245 result = &v1beta1.StatefulSet{}
246 err = c.client.Patch(types.ApplyPatchType).
247 Namespace(c.ns).
248 Resource("statefulsets").
249 Name(*name).
250 SubResource("status").
251 VersionedParams(&patchOpts, scheme.ParameterCodec).
252 Body(data).
253 Do(ctx).
254 Into(result)
255 return
256 }
257
View as plain text