diff --git a/ecs/pkg/amazon/convert.go b/ecs/pkg/amazon/convert.go index 5d74df29e..8f43d62f9 100644 --- a/ecs/pkg/amazon/convert.go +++ b/ecs/pkg/amazon/convert.go @@ -77,7 +77,7 @@ func Convert(project *compose.Project, service types.ServiceConfig) (*ecs.TaskDe }, }, Cpu: cpu, - Family: project.Name, + Family: fmt.Sprintf("%s-%s", project.Name, service.Name), IpcMode: service.Ipc, Memory: mem, NetworkMode: ecsapi.NetworkModeAwsvpc, // FIXME could be set by service.NetworkMode, Fargate only supports network mode ‘awsvpc’. diff --git a/ecs/pkg/amazon/list.go b/ecs/pkg/amazon/list.go index 4b16f98c8..98903f402 100644 --- a/ecs/pkg/amazon/list.go +++ b/ecs/pkg/amazon/list.go @@ -20,9 +20,13 @@ func (c *client) ComposePs(ctx context.Context, project *compose.Project) error fmt.Fprintf(w, "Name\tState\tPorts\n") defer w.Flush() - arns, err := c.api.ListTasks(ctx, cluster, project.Name) - if err != nil { - return err + arns := []string{} + for _, service := range project.Services { + tasks, err := c.api.ListTasks(ctx, cluster, service.Name) + if err != nil { + return err + } + arns = append(arns, tasks...) } if len(arns) == 0 { return nil diff --git a/ecs/pkg/amazon/sdk.go b/ecs/pkg/amazon/sdk.go index 1580901fc..6bc85381b 100644 --- a/ecs/pkg/amazon/sdk.go +++ b/ecs/pkg/amazon/sdk.go @@ -341,10 +341,10 @@ func (s sdk) GetLogs(ctx context.Context, name string, consumer LogConsumer) err } } -func (s sdk) ListTasks(ctx context.Context, cluster string, name string) ([]string, error) { +func (s sdk) ListTasks(ctx context.Context, cluster string, service string) ([]string, error) { tasks, err := s.ECS.ListTasksWithContext(ctx, &ecs.ListTasksInput{ - Cluster: aws.String(cluster), - Family: aws.String(name), + Cluster: aws.String(cluster), + ServiceName: aws.String(service), }) if err != nil { return nil, err diff --git a/ecs/pkg/amazon/testdata/simple/simple-cloudformation-conversion.golden b/ecs/pkg/amazon/testdata/simple/simple-cloudformation-conversion.golden index 613aba14b..c1233d0a3 100644 --- a/ecs/pkg/amazon/testdata/simple/simple-cloudformation-conversion.golden +++ b/ecs/pkg/amazon/testdata/simple/simple-cloudformation-conversion.golden @@ -181,7 +181,7 @@ "ExecutionRoleArn": { "Ref": "SimpleTaskExecutionRole" }, - "Family": "TestSimpleConvert", + "Family": "TestSimpleConvert-simple", "Memory": "512", "NetworkMode": "awsvpc", "RequiresCompatibilities": [ diff --git a/ecs/pkg/amazon/testdata/simple/simple-cloudformation-with-overrides-conversion.golden b/ecs/pkg/amazon/testdata/simple/simple-cloudformation-with-overrides-conversion.golden index 0e506fce8..ca03c1176 100644 --- a/ecs/pkg/amazon/testdata/simple/simple-cloudformation-with-overrides-conversion.golden +++ b/ecs/pkg/amazon/testdata/simple/simple-cloudformation-with-overrides-conversion.golden @@ -181,7 +181,7 @@ "ExecutionRoleArn": { "Ref": "SimpleTaskExecutionRole" }, - "Family": "TestSimpleWithOverrides", + "Family": "TestSimpleWithOverrides-simple", "Memory": "512", "NetworkMode": "awsvpc", "RequiresCompatibilities": [