Skip to content

Commit 8d2cbf3

Browse files
committed
rename container to workload
1 parent 6ad8c9e commit 8d2cbf3

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

80 files changed

+2269
-9189
lines changed

client/interceptor/retry.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ func NewUnaryRetry(retryOpts RetryOptions) grpc.UnaryClientInterceptor {
2121

2222
// RPCNeedRetry records rpc stream methods to retry
2323
var RPCNeedRetry = map[string]struct{}{
24-
"/pb.CoreRPC/ContainerStatusStream": {},
25-
"/pb.CoreRPC/WatchServiceStatus": {},
24+
"/pb.CoreRPC/WorkloadStatusStream": {},
25+
"/pb.CoreRPC/WatchServiceStatus": {},
2626
}
2727

2828
// NewStreamRetry make specific stream retry on error

cluster/calcium/build.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ func (c *Calcium) buildFromContent(ctx context.Context, node *types.Node, refs [
8484

8585
func (c *Calcium) buildFromExist(ctx context.Context, ref, existID string) (chan *types.BuildImageMessage, error) {
8686
return withImageBuiltChannel(func(ch chan *types.BuildImageMessage) {
87-
node, err := c.getContainerNode(ctx, existID)
87+
node, err := c.getWorkloadNode(ctx, existID)
8888
if err != nil {
8989
ch <- buildErrMsg(err)
9090
return

cluster/calcium/build_test.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ func TestBuild(t *testing.T) {
119119
// build from exist not implemented
120120
opts.BuildMethod = types.BuildFromExist
121121
engine.On("ImageBuildFromExist", mock.Anything, mock.Anything, mock.Anything).Return("", types.ErrEngineNotImplemented).Once()
122-
store.On("GetContainer", mock.Anything, mock.Anything).Return(&types.Container{}, nil)
122+
store.On("GetWorkload", mock.Anything, mock.Anything).Return(&types.Workload{}, nil)
123123
store.On("GetNode", mock.Anything, mock.Anything).Return(&types.Node{Engine: engine}, nil)
124124
ch, err = c.BuildImage(ctx, opts)
125125
assert.NoError(t, err)

cluster/calcium/container.go

+14-14
Original file line numberDiff line numberDiff line change
@@ -9,30 +9,30 @@ import (
99
"github.com/projecteru2/core/types"
1010
)
1111

12-
// ListContainers list containers
13-
func (c *Calcium) ListContainers(ctx context.Context, opts *types.ListContainersOptions) ([]*types.Container, error) {
14-
return c.store.ListContainers(ctx, opts.Appname, opts.Entrypoint, opts.Nodename, opts.Limit, opts.Labels)
12+
// ListWorkloads list workloads
13+
func (c *Calcium) ListWorkloads(ctx context.Context, opts *types.ListWorkloadsOptions) ([]*types.Workload, error) {
14+
return c.store.ListWorkloads(ctx, opts.Appname, opts.Entrypoint, opts.Nodename, opts.Limit, opts.Labels)
1515
}
1616

17-
// ListNodeContainers list containers belong to one node
18-
func (c *Calcium) ListNodeContainers(ctx context.Context, nodename string, labels map[string]string) ([]*types.Container, error) {
19-
return c.store.ListNodeContainers(ctx, nodename, labels)
17+
// ListNodeWorkloads list workloads belong to one node
18+
func (c *Calcium) ListNodeWorkloads(ctx context.Context, nodename string, labels map[string]string) ([]*types.Workload, error) {
19+
return c.store.ListNodeWorkloads(ctx, nodename, labels)
2020
}
2121

22-
func (c *Calcium) getContainerNode(ctx context.Context, ID string) (*types.Node, error) {
23-
con, err := c.GetContainer(ctx, ID)
22+
func (c *Calcium) getWorkloadNode(ctx context.Context, ID string) (*types.Node, error) {
23+
con, err := c.GetWorkload(ctx, ID)
2424
if err != nil {
2525
return nil, err
2626
}
2727
return c.GetNode(ctx, con.Nodename)
2828
}
2929

30-
// GetContainer get a container
31-
func (c *Calcium) GetContainer(ctx context.Context, ID string) (*types.Container, error) {
32-
return c.store.GetContainer(ctx, ID)
30+
// GetWorkload get a workload
31+
func (c *Calcium) GetWorkload(ctx context.Context, ID string) (*types.Workload, error) {
32+
return c.store.GetWorkload(ctx, ID)
3333
}
3434

35-
// GetContainers get containers
36-
func (c *Calcium) GetContainers(ctx context.Context, IDs []string) ([]*types.Container, error) {
37-
return c.store.GetContainers(ctx, IDs)
35+
// GetWorkloads get workloads
36+
func (c *Calcium) GetWorkloads(ctx context.Context, IDs []string) ([]*types.Workload, error) {
37+
return c.store.GetWorkloads(ctx, IDs)
3838
}

cluster/calcium/container_test.go

+14-14
Original file line numberDiff line numberDiff line change
@@ -11,45 +11,45 @@ import (
1111
"github.com/projecteru2/core/types"
1212
)
1313

14-
func TestListContainers(t *testing.T) {
14+
func TestListWorkloads(t *testing.T) {
1515
c := NewTestCluster()
1616
ctx := context.Background()
1717
ID := "testID"
18-
containers := []*types.Container{
18+
workloads := []*types.Workload{
1919
{ID: ID},
2020
}
2121

2222
store := &storemocks.Store{}
2323
c.store = store
24-
store.On("ListContainers", mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything).Return(containers, nil)
25-
store.On("ListNodeContainers", mock.Anything, mock.Anything, mock.Anything).Return(containers, nil)
24+
store.On("ListWorkloads", mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything).Return(workloads, nil)
25+
store.On("ListNodeWorkloads", mock.Anything, mock.Anything, mock.Anything).Return(workloads, nil)
2626

27-
cs, err := c.ListContainers(ctx, &types.ListContainersOptions{Appname: "", Entrypoint: "", Nodename: ""})
27+
cs, err := c.ListWorkloads(ctx, &types.ListWorkloadsOptions{Appname: "", Entrypoint: "", Nodename: ""})
2828
assert.NoError(t, err)
2929
assert.Equal(t, len(cs), 1)
3030
assert.Equal(t, cs[0].ID, ID)
31-
cs, err = c.ListNodeContainers(ctx, "", nil)
31+
cs, err = c.ListNodeWorkloads(ctx, "", nil)
3232
assert.NoError(t, err)
3333
assert.Equal(t, len(cs), 1)
3434
assert.Equal(t, cs[0].ID, ID)
3535
}
3636

37-
func TestGetContainers(t *testing.T) {
37+
func TestGetWorkloads(t *testing.T) {
3838
c := NewTestCluster()
3939
ctx := context.Background()
4040
ID := "testID"
41-
container := &types.Container{ID: ID}
42-
containers := []*types.Container{container}
41+
workload := &types.Workload{ID: ID}
42+
workloads := []*types.Workload{workload}
4343

4444
store := &storemocks.Store{}
4545
c.store = store
46-
store.On("GetContainer", mock.Anything, mock.Anything).Return(container, nil)
47-
store.On("GetContainers", mock.Anything, mock.Anything).Return(containers, nil)
46+
store.On("GetWorkload", mock.Anything, mock.Anything).Return(workload, nil)
47+
store.On("GetWorkloads", mock.Anything, mock.Anything).Return(workloads, nil)
4848

49-
savedContainer, err := c.GetContainer(ctx, "")
49+
savedWorkload, err := c.GetWorkload(ctx, "")
5050
assert.NoError(t, err)
51-
assert.Equal(t, savedContainer.ID, ID)
52-
cs, err := c.GetContainers(ctx, []string{})
51+
assert.Equal(t, savedWorkload.ID, ID)
52+
cs, err := c.GetWorkloads(ctx, []string{})
5353
assert.NoError(t, err)
5454
assert.Equal(t, len(cs), 1)
5555
assert.Equal(t, cs[0].ID, ID)

cluster/calcium/control.go

+31-31
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ import (
1111
log "github.com/sirupsen/logrus"
1212
)
1313

14-
// ControlContainer control containers status
15-
func (c *Calcium) ControlContainer(ctx context.Context, IDs []string, t string, force bool) (chan *types.ControlContainerMessage, error) {
16-
ch := make(chan *types.ControlContainerMessage)
14+
// ControlWorkload control workloads status
15+
func (c *Calcium) ControlWorkload(ctx context.Context, IDs []string, t string, force bool) (chan *types.ControlWorkloadMessage, error) {
16+
ch := make(chan *types.ControlWorkloadMessage)
1717

1818
go func() {
1919
defer close(ch)
@@ -23,35 +23,35 @@ func (c *Calcium) ControlContainer(ctx context.Context, IDs []string, t string,
2323
go func(ID string) {
2424
defer wg.Done()
2525
var message []*bytes.Buffer
26-
err := c.withContainerLocked(ctx, ID, func(container *types.Container) error {
26+
err := c.withWorkloadLocked(ctx, ID, func(workload *types.Workload) error {
2727
var err error
2828
switch t {
29-
case cluster.ContainerStop:
30-
message, err = c.doStopContainer(ctx, container, force)
29+
case cluster.WorkloadStop:
30+
message, err = c.doStopWorkload(ctx, workload, force)
3131
return err
32-
case cluster.ContainerStart:
33-
message, err = c.doStartContainer(ctx, container, force)
32+
case cluster.WorkloadStart:
33+
message, err = c.doStartWorkload(ctx, workload, force)
3434
return err
35-
case cluster.ContainerRestart:
36-
message, err = c.doStopContainer(ctx, container, force)
35+
case cluster.WorkloadRestart:
36+
message, err = c.doStopWorkload(ctx, workload, force)
3737
if err != nil {
3838
return err
3939
}
40-
startHook, err := c.doStartContainer(ctx, container, force)
40+
startHook, err := c.doStartWorkload(ctx, workload, force)
4141
message = append(message, startHook...)
4242
return err
4343
}
4444
return types.ErrUnknownControlType
4545
})
4646
if err == nil {
47-
log.Infof("[ControlContainer] Container %s %s", ID, t)
48-
log.Info("[ControlContainer] Hook Output:")
47+
log.Infof("[ControlWorkload] Workload %s %s", ID, t)
48+
log.Info("[ControlWorkload] Hook Output:")
4949
log.Info(string(utils.MergeHookOutputs(message)))
5050
}
51-
ch <- &types.ControlContainerMessage{
52-
ContainerID: ID,
53-
Error: err,
54-
Hook: message,
51+
ch <- &types.ControlWorkloadMessage{
52+
WorkloadID: ID,
53+
Error: err,
54+
Hook: message,
5555
}
5656
}(ID)
5757
}
@@ -61,31 +61,31 @@ func (c *Calcium) ControlContainer(ctx context.Context, IDs []string, t string,
6161
return ch, nil
6262
}
6363

64-
func (c *Calcium) doStartContainer(ctx context.Context, container *types.Container, force bool) (message []*bytes.Buffer, err error) {
65-
if err = container.Start(ctx); err != nil {
64+
func (c *Calcium) doStartWorkload(ctx context.Context, workload *types.Workload, force bool) (message []*bytes.Buffer, err error) {
65+
if err = workload.Start(ctx); err != nil {
6666
return message, err
6767
}
6868
// TODO healthcheck first
69-
if container.Hook != nil && len(container.Hook.AfterStart) > 0 {
69+
if workload.Hook != nil && len(workload.Hook.AfterStart) > 0 {
7070
message, err = c.doHook(
7171
ctx,
72-
container.ID, container.User,
73-
container.Hook.AfterStart, container.Env,
74-
container.Hook.Force, container.Privileged,
75-
force, container.Engine,
72+
workload.ID, workload.User,
73+
workload.Hook.AfterStart, workload.Env,
74+
workload.Hook.Force, workload.Privileged,
75+
force, workload.Engine,
7676
)
7777
}
7878
return message, err
7979
}
8080

81-
func (c *Calcium) doStopContainer(ctx context.Context, container *types.Container, force bool) (message []*bytes.Buffer, err error) {
82-
if container.Hook != nil && len(container.Hook.BeforeStop) > 0 {
81+
func (c *Calcium) doStopWorkload(ctx context.Context, workload *types.Workload, force bool) (message []*bytes.Buffer, err error) {
82+
if workload.Hook != nil && len(workload.Hook.BeforeStop) > 0 {
8383
message, err = c.doHook(
8484
ctx,
85-
container.ID, container.User,
86-
container.Hook.BeforeStop, container.Env,
87-
container.Hook.Force, container.Privileged,
88-
force, container.Engine,
85+
workload.ID, workload.User,
86+
workload.Hook.BeforeStop, workload.Env,
87+
workload.Hook.Force, workload.Privileged,
88+
force, workload.Engine,
8989
)
9090
if err != nil {
9191
return message, err
@@ -95,7 +95,7 @@ func (c *Calcium) doStopContainer(ctx context.Context, container *types.Containe
9595
// 这里 block 的问题很严重,按照目前的配置是 5 分钟一级的 block
9696
// 一个简单的处理方法是相信 ctx 不相信 engine 自身的处理
9797
// 另外我怀疑 engine 自己的 timeout 实现是完全的等 timeout 而非结束了就退出
98-
if err = container.Stop(ctx); err != nil {
98+
if err = workload.Stop(ctx); err != nil {
9999
message = append(message, bytes.NewBufferString(err.Error()))
100100
}
101101
return message, err

0 commit comments

Comments
 (0)