+2039
-514
lines changed Original file line number Diff line number Diff line change
@@ -28,17 +28,19 @@ import (
28
28
"github.com/containerd/containerd/api/types"
29
29
"github.com/containerd/containerd/api/types/runc/options"
30
30
tasktypes "github.com/containerd/containerd/api/types/task"
31
-
"github.com/containerd/containerd/v2/core/containers"
32
-
"github.com/containerd/containerd/v2/core/images"
33
-
"github.com/containerd/containerd/v2/pkg/cio"
34
-
"github.com/containerd/containerd/v2/pkg/oci"
35
-
"github.com/containerd/containerd/v2/pkg/tracing"
36
31
"github.com/containerd/errdefs"
32
+
"github.com/containerd/errdefs/pkg/errgrpc"
37
33
"github.com/containerd/fifo"
38
34
"github.com/containerd/typeurl/v2"
39
35
ver "github.com/opencontainers/image-spec/specs-go"
40
36
ocispec "github.com/opencontainers/image-spec/specs-go/v1"
41
37
"github.com/opencontainers/selinux/go-selinux/label"
38
+
39
+
"github.com/containerd/containerd/v2/core/containers"
40
+
"github.com/containerd/containerd/v2/core/images"
41
+
"github.com/containerd/containerd/v2/pkg/cio"
42
+
"github.com/containerd/containerd/v2/pkg/oci"
43
+
"github.com/containerd/containerd/v2/pkg/tracing"
42
44
)
43
45
44
46
const (
@@ -317,7 +319,7 @@ func (c *container) NewTask(ctx context.Context, ioCreate cio.Creator, opts ...N
317
319
)
318
320
response, err := c.client.TaskService().Create(ctx, request)
319
321
if err != nil {
320
-
return nil, errdefs.FromGRPC(err)
322
+
return nil, errgrpc.ToNative(err)
321
323
}
322
324
323
325
span.AddEvent("task created",
@@ -341,7 +343,7 @@ func (c *container) Update(ctx context.Context, opts ...UpdateContainerOpts) err
341
343
}
342
344
}
343
345
if _, err := c.client.ContainerService().Update(ctx, r); err != nil {
344
-
return errdefs.FromGRPC(err)
346
+
return errgrpc.ToNative(err)
345
347
}
346
348
return nil
347
349
}
@@ -387,7 +389,7 @@ func (c *container) Checkpoint(ctx context.Context, ref string, opts ...Checkpoi
387
389
// process remaining opts
388
390
for _, o := range opts {
389
391
if err := o(ctx, c.client, &info, index, copts); err != nil {
390
-
err = errdefs.FromGRPC(err)
392
+
err = errgrpc.ToNative(err)
391
393
if !errdefs.IsAlreadyExists(err) {
392
394
return nil, err
393
395
}
@@ -415,7 +417,7 @@ func (c *container) loadTask(ctx context.Context, ioAttach cio.Attach) (Task, er
415
417
ContainerID: c.id,
416
418
})
417
419
if err != nil {
418
-
err = errdefs.FromGRPC(err)
420
+
err = errgrpc.ToNative(err)
419
421
if errdefs.IsNotFound(err) {
420
422
return nil, fmt.Errorf("no running task found: %w", err)
421
423
}
Original file line number Diff line number Diff line change
@@ -22,13 +22,14 @@ import (
22
22
"io"
23
23
24
24
containersapi "github.com/containerd/containerd/api/services/containers/v1"
25
-
"github.com/containerd/containerd/v2/core/containers"
26
-
"github.com/containerd/containerd/v2/pkg/protobuf"
27
-
ptypes "github.com/containerd/containerd/v2/pkg/protobuf/types"
28
-
"github.com/containerd/errdefs"
25
+
"github.com/containerd/errdefs/pkg/errgrpc"
29
26
"github.com/containerd/typeurl/v2"
30
27
"google.golang.org/grpc/codes"
31
28
"google.golang.org/grpc/status"
29
+
30
+
"github.com/containerd/containerd/v2/core/containers"
31
+
"github.com/containerd/containerd/v2/pkg/protobuf"
32
+
ptypes "github.com/containerd/containerd/v2/pkg/protobuf/types"
32
33
)
33
34
34
35
type remoteContainers struct {
@@ -49,7 +50,7 @@ func (r *remoteContainers) Get(ctx context.Context, id string) (containers.Conta
49
50
ID: id,
50
51
})
51
52
if err != nil {
52
-
return containers.Container{}, errdefs.FromGRPC(err)
53
+
return containers.Container{}, errgrpc.ToNative(err)
53
54
}
54
55
55
56
return containerFromProto(resp.Container), nil
@@ -71,7 +72,7 @@ func (r *remoteContainers) list(ctx context.Context, filters ...string) ([]conta
71
72
Filters: filters,
72
73
})
73
74
if err != nil {
74
-
return nil, errdefs.FromGRPC(err)
75
+
return nil, errgrpc.ToNative(err)
75
76
}
76
77
return containersFromProto(resp.Containers), nil
77
78
}
@@ -83,7 +84,7 @@ func (r *remoteContainers) stream(ctx context.Context, filters ...string) ([]con
83
84
Filters: filters,
84
85
})
85
86
if err != nil {
86
-
return nil, errdefs.FromGRPC(err)
87
+
return nil, errgrpc.ToNative(err)
87
88
}
88
89
var containers []containers.Container
89
90
for {
@@ -97,7 +98,7 @@ func (r *remoteContainers) stream(ctx context.Context, filters ...string) ([]con
97
98
return nil, errStreamNotAvailable
98
99
}
99
100
}
100
-
return nil, errdefs.FromGRPC(err)
101
+
return nil, errgrpc.ToNative(err)
101
102
}
102
103
select {
103
104
case <-ctx.Done():
@@ -113,7 +114,7 @@ func (r *remoteContainers) Create(ctx context.Context, container containers.Cont
113
114
Container: containerToProto(&container),
114
115
})
115
116
if err != nil {
116
-
return containers.Container{}, errdefs.FromGRPC(err)
117
+
return containers.Container{}, errgrpc.ToNative(err)
117
118
}
118
119
119
120
return containerFromProto(created.Container), nil
@@ -133,7 +134,7 @@ func (r *remoteContainers) Update(ctx context.Context, container containers.Cont
133
134
UpdateMask: updateMask,
134
135
})
135
136
if err != nil {
136
-
return containers.Container{}, errdefs.FromGRPC(err)
137
+
return containers.Container{}, errgrpc.ToNative(err)
137
138
}
138
139
139
140
return containerFromProto(updated.Container), nil
@@ -145,7 +146,7 @@ func (r *remoteContainers) Delete(ctx context.Context, id string) error {
145
146
ID: id,
146
147
})
147
148
148
-
return errdefs.FromGRPC(err)
149
+
return errgrpc.ToNative(err)
149
150
150
151
}
151
152
Original file line number Diff line number Diff line change
@@ -21,10 +21,11 @@ import (
21
21
22
22
eventsapi "github.com/containerd/containerd/api/services/events/v1"
23
23
"github.com/containerd/containerd/api/types"
24
+
"github.com/containerd/errdefs/pkg/errgrpc"
25
+
"github.com/containerd/typeurl/v2"
26
+
24
27
"github.com/containerd/containerd/v2/core/events"
25
28
"github.com/containerd/containerd/v2/pkg/protobuf"
26
-
"github.com/containerd/errdefs"
27
-
"github.com/containerd/typeurl/v2"
28
29
)
29
30
30
31
// EventService handles the publish, forward and subscribe of events.
@@ -56,7 +57,7 @@ func (e *eventRemote) Publish(ctx context.Context, topic string, event events.Ev
56
57
Event: typeurl.MarshalProto(evt),
57
58
}
58
59
if _, err := e.client.Publish(ctx, req); err != nil {
59
-
return errdefs.FromGRPC(err)
60
+
return errgrpc.ToNative(err)
60
61
}
61
62
return nil
62
63
}
@@ -71,7 +72,7 @@ func (e *eventRemote) Forward(ctx context.Context, envelope *events.Envelope) er
71
72
},
72
73
}
73
74
if _, err := e.client.Forward(ctx, req); err != nil {
74
-
return errdefs.FromGRPC(err)
75
+
return errgrpc.ToNative(err)
75
76
}
76
77
return nil
77
78
}
Original file line number Diff line number Diff line change
@@ -20,13 +20,14 @@ import (
20
20
"context"
21
21
22
22
imagesapi "github.com/containerd/containerd/api/services/images/v1"
23
+
"github.com/containerd/errdefs/pkg/errgrpc"
24
+
"google.golang.org/protobuf/types/known/timestamppb"
25
+
23
26
"github.com/containerd/containerd/v2/core/images"
24
27
"github.com/containerd/containerd/v2/pkg/epoch"
25
28
"github.com/containerd/containerd/v2/pkg/oci"
26
29
"github.com/containerd/containerd/v2/pkg/protobuf"
27
30
ptypes "github.com/containerd/containerd/v2/pkg/protobuf/types"
28
-
"github.com/containerd/errdefs"
29
-
"google.golang.org/protobuf/types/known/timestamppb"
30
31
)
31
32
32
33
type remoteImages struct {
@@ -45,7 +46,7 @@ func (s *remoteImages) Get(ctx context.Context, name string) (images.Image, erro
45
46
Name: name,
46
47
})
47
48
if err != nil {
48
-
return images.Image{}, errdefs.FromGRPC(err)
49
+
return images.Image{}, errgrpc.ToNative(err)
49
50
}
50
51
51
52
return imageFromProto(resp.Image), nil
@@ -56,7 +57,7 @@ func (s *remoteImages) List(ctx context.Context, filters ...string) ([]images.Im
56
57
Filters: filters,
57
58
})
58
59
if err != nil {
59
-
return nil, errdefs.FromGRPC(err)
60
+
return nil, errgrpc.ToNative(err)
60
61
}
61
62
62
63
return imagesFromProto(resp.Images), nil
@@ -71,7 +72,7 @@ func (s *remoteImages) Create(ctx context.Context, image images.Image) (images.I
71
72
}
72
73
created, err := s.client.Create(ctx, req)
73
74
if err != nil {
74
-
return images.Image{}, errdefs.FromGRPC(err)
75
+
return images.Image{}, errgrpc.ToNative(err)
75
76
}
76
77
77
78
return imageFromProto(created.Image), nil
@@ -93,7 +94,7 @@ func (s *remoteImages) Update(ctx context.Context, image images.Image, fieldpath
93
94
}
94
95
updated, err := s.client.Update(ctx, req)
95
96
if err != nil {
96
-
return images.Image{}, errdefs.FromGRPC(err)
97
+
return images.Image{}, errgrpc.ToNative(err)
97
98
}
98
99
99
100
return imageFromProto(updated.Image), nil
@@ -114,7 +115,7 @@ func (s *remoteImages) Delete(ctx context.Context, name string, opts ...images.D
114
115
req.Target = oci.DescriptorToProto(*do.Target)
115
116
}
116
117
_, err := s.client.Delete(ctx, req)
117
-
return errdefs.FromGRPC(err)
118
+
return errgrpc.ToNative(err)
118
119
}
119
120
120
121
func imageToProto(image *images.Image) *imagesapi.Image {
Original file line number Diff line number Diff line change
@@ -21,9 +21,10 @@ import (
21
21
"strings"
22
22
23
23
api "github.com/containerd/containerd/api/services/namespaces/v1"
24
+
"github.com/containerd/errdefs/pkg/errgrpc"
25
+
24
26
"github.com/containerd/containerd/v2/pkg/namespaces"
25
27
"github.com/containerd/containerd/v2/pkg/protobuf/types"
26
-
"github.com/containerd/errdefs"
27
28
)
28
29
29
30
// NewNamespaceStoreFromClient returns a new namespace store
@@ -45,7 +46,7 @@ func (r *remoteNamespaces) Create(ctx context.Context, namespace string, labels
45
46
46
47
_, err := r.client.Create(ctx, &req)
47
48
if err != nil {
48
-
return errdefs.FromGRPC(err)
49
+
return errgrpc.ToNative(err)
49
50
}
50
51
51
52
return nil
@@ -57,7 +58,7 @@ func (r *remoteNamespaces) Labels(ctx context.Context, namespace string) (map[st
57
58
58
59
resp, err := r.client.Get(ctx, &req)
59
60
if err != nil {
60
-
return nil, errdefs.FromGRPC(err)
61
+
return nil, errgrpc.ToNative(err)
61
62
}
62
63
63
64
return resp.Namespace.Labels, nil
@@ -77,7 +78,7 @@ func (r *remoteNamespaces) SetLabel(ctx context.Context, namespace, key, value s
77
78
78
79
_, err := r.client.Update(ctx, &req)
79
80
if err != nil {
80
-
return errdefs.FromGRPC(err)
81
+
return errgrpc.ToNative(err)
81
82
}
82
83
83
84
return nil
@@ -88,7 +89,7 @@ func (r *remoteNamespaces) List(ctx context.Context) ([]string, error) {
88
89
89
90
resp, err := r.client.List(ctx, &req)
90
91
if err != nil {
91
-
return nil, errdefs.FromGRPC(err)
92
+
return nil, errgrpc.ToNative(err)
92
93
}
93
94
94
95
var namespaces []string
@@ -114,7 +115,7 @@ func (r *remoteNamespaces) Delete(ctx context.Context, namespace string, opts ..
114
115
}
115
116
_, err := r.client.Delete(ctx, &req)
116
117
if err != nil {
117
-
return errdefs.FromGRPC(err)
118
+
return errgrpc.ToNative(err)
118
119
}
119
120
120
121
return nil
Original file line number Diff line number Diff line change
@@ -24,10 +24,12 @@ import (
24
24
"time"
25
25
26
26
"github.com/containerd/containerd/api/services/tasks/v1"
27
+
"github.com/containerd/errdefs"
28
+
"github.com/containerd/errdefs/pkg/errgrpc"
29
+
27
30
"github.com/containerd/containerd/v2/pkg/cio"
28
31
"github.com/containerd/containerd/v2/pkg/protobuf"
29
32
"github.com/containerd/containerd/v2/pkg/tracing"
30
-
"github.com/containerd/errdefs"
31
33
)
32
34
33
35
// Process represents a system process
@@ -134,7 +136,7 @@ func (p *process) Start(ctx context.Context) error {
134
136
p.io.Wait()
135
137
p.io.Close()
136
138
}
137
-
return errdefs.FromGRPC(err)
139
+
return errgrpc.ToNative(err)
138
140
}
139
141
span.SetAttributes(tracing.Attribute("process.pid", int(r.Pid)))
140
142
p.pid = r.Pid
@@ -160,7 +162,7 @@ func (p *process) Kill(ctx context.Context, s syscall.Signal, opts ...KillOpts)
160
162
ExecID: p.id,
161
163
All: i.All,
162
164
})
163
-
return errdefs.FromGRPC(err)
165
+
return errgrpc.ToNative(err)
164
166
}
165
167
166
168
func (p *process) Wait(ctx context.Context) (<-chan ExitStatus, error) {
@@ -206,7 +208,7 @@ func (p *process) CloseIO(ctx context.Context, opts ...IOCloserOpts) error {
206
208
}
207
209
r.Stdin = i.Stdin
208
210
_, err := p.task.client.TaskService().CloseIO(ctx, r)
209
-
return errdefs.FromGRPC(err)
211
+
return errgrpc.ToNative(err)
210
212
}
211
213
212
214
func (p *process) IO() cio.IO {
@@ -224,7 +226,7 @@ func (p *process) Resize(ctx context.Context, w, h uint32) error {
224
226
Height: h,
225
227
ExecID: p.id,
226
228
})
227
-
return errdefs.FromGRPC(err)
229
+
return errgrpc.ToNative(err)
228
230
}
229
231
230
232
func (p *process) Delete(ctx context.Context, opts ...ProcessDeleteOpts) (*ExitStatus, error) {
@@ -250,7 +252,7 @@ func (p *process) Delete(ctx context.Context, opts ...ProcessDeleteOpts) (*ExitS
250
252
ExecID: p.id,
251
253
})
252
254
if err != nil {
253
-
return nil, errdefs.FromGRPC(err)
255
+
return nil, errgrpc.ToNative(err)
254
256
}
255
257
if p.io != nil {
256
258
p.io.Cancel()
@@ -266,7 +268,7 @@ func (p *process) Status(ctx context.Context) (Status, error) {
266
268
ExecID: p.id,
267
269
})
268
270
if err != nil {
269
-
return Status{}, errdefs.FromGRPC(err)
271
+
return Status{}, errgrpc.ToNative(err)
270
272
}
271
273
status := ProcessStatus(strings.ToLower(r.Process.Status.String()))
272
274
exitStatus := r.Process.ExitStatus
You can’t perform that action at this time.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4