From 035601d3662b026f27e63e3ec9b84caf009b6a4c Mon Sep 17 00:00:00 2001 From: Pavel Sviderski Date: Thu, 14 Nov 2024 12:05:48 +1000 Subject: [PATCH] generate container name and assign service labels to container --- internal/cli/client/service.go | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/internal/cli/client/service.go b/internal/cli/client/service.go index 3611099b..e94d2eca 100644 --- a/internal/cli/client/service.go +++ b/internal/cli/client/service.go @@ -89,13 +89,20 @@ func (c *Client) RunService(ctx context.Context, opts *ServiceOptions) (RunServi serviceName = fmt.Sprintf("%s-%s", imageName, suffix) } - // TODO: generate a container name from the service name. - // TODO: set service labels on the container. + suffix, err := secret.RandomAlphaNumeric(4) + if err != nil { + return resp, fmt.Errorf("generate random suffix: %w", err) + } + containerName := fmt.Sprintf("%s-%s", serviceName, suffix) config := &container.Config{ Image: opts.Image, + Labels: map[string]string{ + "uncloud.service.id": serviceID, + "uncloud.service.name": serviceName, + }, } - createResp, err := c.CreateContainer(ctx, config, nil, nil, nil, opts.Name) + createResp, err := c.CreateContainer(ctx, config, nil, nil, nil, containerName) if err != nil { return resp, fmt.Errorf("create container: %w", err) }