@@ -23,9 +23,6 @@ type virbranium struct {
23
23
24
24
// ListPods returns a list of pods
25
25
func (v * virbranium ) ListPods (ctx context.Context , empty * pb.Empty ) (* pb.Pods , error ) {
26
- v .taskAdd ("ListPods" , false )
27
- defer v .taskDone ("ListPods" , false )
28
-
29
26
ps , err := v .cluster .ListPods ()
30
27
if err != nil {
31
28
return nil , err
@@ -42,9 +39,6 @@ func (v *virbranium) ListPods(ctx context.Context, empty *pb.Empty) (*pb.Pods, e
42
39
43
40
// AddPod saves a pod, and returns it to client
44
41
func (v * virbranium ) AddPod (ctx context.Context , opts * pb.AddPodOptions ) (* pb.Pod , error ) {
45
- v .taskAdd ("AddPod" , false )
46
- defer v .taskDone ("AddPod" , false )
47
-
48
42
p , err := v .cluster .AddPod (opts .Name , opts .Desc )
49
43
if err != nil {
50
44
return nil , err
@@ -55,9 +49,6 @@ func (v *virbranium) AddPod(ctx context.Context, opts *pb.AddPodOptions) (*pb.Po
55
49
56
50
// GetPod
57
51
func (v * virbranium ) GetPod (ctx context.Context , opts * pb.GetPodOptions ) (* pb.Pod , error ) {
58
- v .taskAdd ("GetPod" , false )
59
- defer v .taskDone ("GetPod" , false )
60
-
61
52
p , err := v .cluster .GetPod (opts .Name )
62
53
if err != nil {
63
54
return nil , err
@@ -69,9 +60,6 @@ func (v *virbranium) GetPod(ctx context.Context, opts *pb.GetPodOptions) (*pb.Po
69
60
// AddNode saves a node and returns it to client
70
61
// Method must be called synchronously, or nothing will be returned
71
62
func (v * virbranium ) AddNode (ctx context.Context , opts * pb.AddNodeOptions ) (* pb.Node , error ) {
72
- v .taskAdd ("AddNode" , false )
73
- defer v .taskDone ("AddNode" , false )
74
-
75
63
n , err := v .cluster .AddNode (opts .Nodename , opts .Endpoint , opts .Podname , opts .Cafile , opts .Certfile , opts .Keyfile , opts .Public )
76
64
if err != nil {
77
65
return nil , err
@@ -83,9 +71,6 @@ func (v *virbranium) AddNode(ctx context.Context, opts *pb.AddNodeOptions) (*pb.
83
71
// AddNode saves a node and returns it to client
84
72
// Method must be called synchronously, or nothing will be returned
85
73
func (v * virbranium ) RemoveNode (ctx context.Context , opts * pb.RemoveNodeOptions ) (* pb.Pod , error ) {
86
- v .taskAdd ("RemoveNode" , false )
87
- defer v .taskDone ("RemoveNode" , false )
88
-
89
74
p , err := v .cluster .RemoveNode (opts .Nodename , opts .Podname )
90
75
if err != nil {
91
76
return nil , err
@@ -96,9 +81,6 @@ func (v *virbranium) RemoveNode(ctx context.Context, opts *pb.RemoveNodeOptions)
96
81
97
82
// GetNode
98
83
func (v * virbranium ) GetNode (ctx context.Context , opts * pb.GetNodeOptions ) (* pb.Node , error ) {
99
- v .taskAdd ("GetNode" , false )
100
- defer v .taskDone ("GetNode" , false )
101
-
102
84
n , err := v .cluster .GetNode (opts .Podname , opts .Nodename )
103
85
if err != nil {
104
86
return nil , err
@@ -109,9 +91,6 @@ func (v *virbranium) GetNode(ctx context.Context, opts *pb.GetNodeOptions) (*pb.
109
91
110
92
// ListPodNodes returns a list of node for pod
111
93
func (v * virbranium ) ListPodNodes (ctx context.Context , opts * pb.ListNodesOptions ) (* pb.Nodes , error ) {
112
- v .taskAdd ("ListPodNodes" , false )
113
- defer v .taskDone ("ListPodNodes" , false )
114
-
115
94
ns , err := v .cluster .ListPodNodes (opts .Podname , opts .All )
116
95
if err != nil {
117
96
return nil , err
@@ -127,9 +106,6 @@ func (v *virbranium) ListPodNodes(ctx context.Context, opts *pb.ListNodesOptions
127
106
// GetContainer
128
107
// More information will be shown
129
108
func (v * virbranium ) GetContainer (ctx context.Context , id * pb.ContainerID ) (* pb.Container , error ) {
130
- v .taskAdd ("GetContainer" , false )
131
- defer v .taskDone ("GetContainer" , false )
132
-
133
109
container , err := v .cluster .GetContainer (id .Id )
134
110
if err != nil {
135
111
return nil , err
@@ -151,9 +127,6 @@ func (v *virbranium) GetContainer(ctx context.Context, id *pb.ContainerID) (*pb.
151
127
// GetContainers
152
128
// like GetContainer, information should be returned
153
129
func (v * virbranium ) GetContainers (ctx context.Context , cids * pb.ContainerIDs ) (* pb.Containers , error ) {
154
- v .taskAdd ("GetContainers" , false )
155
- defer v .taskDone ("GetContainers" , false )
156
-
157
130
ids := []string {}
158
131
for _ , id := range cids .Ids {
159
132
ids = append (ids , id .Id )
@@ -183,9 +156,6 @@ func (v *virbranium) GetContainers(ctx context.Context, cids *pb.ContainerIDs) (
183
156
184
157
// list networks for pod
185
158
func (v * virbranium ) ListNetworks (ctx context.Context , opts * pb.GetPodOptions ) (* pb.Networks , error ) {
186
- v .taskAdd ("ListNetworks" , false )
187
- defer v .taskDone ("ListNetworks" , false )
188
-
189
159
networks , err := v .cluster .ListNetworks (opts .Name )
190
160
if err != nil {
191
161
return nil , err
@@ -200,9 +170,6 @@ func (v *virbranium) ListNetworks(ctx context.Context, opts *pb.GetPodOptions) (
200
170
201
171
// set node availability
202
172
func (v * virbranium ) SetNodeAvailable (ctx context.Context , opts * pb.NodeAvailable ) (* pb.Node , error ) {
203
- v .taskAdd ("SetNodeAvailable" , false )
204
- defer v .taskDone ("SetNodeAvailable" , false )
205
-
206
173
n , err := v .cluster .SetNodeAvailable (opts .Podname , opts .Nodename , opts .Available )
207
174
if err != nil {
208
175
return nil , err
@@ -213,8 +180,6 @@ func (v *virbranium) SetNodeAvailable(ctx context.Context, opts *pb.NodeAvailabl
213
180
// streamed returned functions
214
181
// caller must ensure that timeout will not be too short because these actions take a little time
215
182
func (v * virbranium ) BuildImage (opts * pb.BuildImageOptions , stream pb.CoreRPC_BuildImageServer ) error {
216
- v .taskAdd ("BuildImage" , true )
217
-
218
183
ch , err := v .cluster .BuildImage (opts .Repo , opts .Version , opts .Uid , opts .Artifact )
219
184
if err != nil {
220
185
return err
@@ -223,21 +188,13 @@ func (v *virbranium) BuildImage(opts *pb.BuildImageOptions, stream pb.CoreRPC_Bu
223
188
for m := range ch {
224
189
if err := stream .Send (toRPCBuildImageMessage (m )); err != nil {
225
190
go func () {
226
- // stream的返回这里也需要一个done.
227
- // 如果send出错, 需要这里读完channel, 那么其实是走了另外一个函数来结束这个调用.
228
- // 于是需要这里补一个done.
229
- // 下面都一样
230
- defer v .taskDone ("BuildImage" , true )
231
191
for r := range ch {
232
192
log .Infof ("[BuildImage] Unsent streamed message: %v" , r )
233
193
}
234
194
}()
235
195
return err
236
196
}
237
197
}
238
- // 如果send没有出错, 那么说明可以完整读完这个channel
239
- // 正常done就可以了, 这里不能defer, 不然会两次done.
240
- v .taskDone ("BuildImage" , true )
241
198
return nil
242
199
}
243
200
@@ -362,8 +319,6 @@ func (v *virbranium) RemoveContainer(cids *pb.ContainerIDs, stream pb.CoreRPC_Re
362
319
}
363
320
364
321
func (v * virbranium ) RemoveImage (opts * pb.RemoveImageOptions , stream pb.CoreRPC_RemoveImageServer ) error {
365
- v .taskAdd ("RemoveImage" , true )
366
-
367
322
ch , err := v .cluster .RemoveImage (opts .Podname , opts .Nodename , opts .Images )
368
323
if err != nil {
369
324
return err
@@ -372,16 +327,13 @@ func (v *virbranium) RemoveImage(opts *pb.RemoveImageOptions, stream pb.CoreRPC_
372
327
for m := range ch {
373
328
if err := stream .Send (toRPCRemoveImageMessage (m )); err != nil {
374
329
go func () {
375
- defer v .taskDone ("RemoveImage" , true )
376
330
for r := range ch {
377
331
log .Infof ("[RemoveImage] Unsent streamed message: %v" , r )
378
332
}
379
333
}()
380
334
return err
381
335
}
382
336
}
383
-
384
- v .taskDone ("RemoveImage" , true )
385
337
return nil
386
338
}
387
339
0 commit comments