Skip to content

Commit

Permalink
fix: only set task serviceARN if the task is part of a service
Browse files Browse the repository at this point in the history
Signed-off-by: Bradley Jones <bradley.jones@anchore.com>
  • Loading branch information
bradleyjones committed Apr 24, 2023
1 parent 2f8cd01 commit 89112bf
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 12 deletions.
29 changes: 18 additions & 11 deletions pkg/inventory/ecs.go
Original file line number Diff line number Diff line change
Expand Up @@ -134,23 +134,30 @@ func fetchTasksMetadata(client ecsiface.ECSAPI, cluster string, tasks []*string)
return nil, err
}

tMetadata := reporter.Task{
ARN: *task.TaskArn,
ClusterARN: *task.ClusterArn,
TaskDefARN: *task.TaskDefinitionArn,
Tags: tagMap,
}

// Group will be "servive:serviceName" if the task is part of a service, otherwise it will be
// "family:taskDefinitionFamily" if the task is not part of a service.
groupParts := strings.Split(*task.Group, ":")
if len(groupParts) != 2 {
return nil, fmt.Errorf("unable to parse task group: %s", *task.Group)
}
serviceName := groupParts[1]
serviceArn, err := constructServiceARN(*task.ClusterArn, serviceName)
if err != nil {
return nil, err
groupType := groupParts[0]
if groupType == "service" {
serviceName := groupParts[1]
serviceArn, err := constructServiceARN(*task.ClusterArn, serviceName)
if err != nil {
return nil, err
}
tMetadata.ServiceARN = serviceArn
}

tasksMetadata = append(tasksMetadata, reporter.Task{
ARN: *task.TaskArn,
ClusterARN: *task.ClusterArn,
TaskDefARN: *task.TaskDefinitionArn,
Tags: tagMap,
ServiceARN: serviceArn,
})
tasksMetadata = append(tasksMetadata, tMetadata)
}

return tasksMetadata, nil
Expand Down
3 changes: 2 additions & 1 deletion pkg/inventory/ecs_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,10 @@ package inventory
import (
"testing"

"github.com/anchore/ecs-inventory/pkg/reporter"
"github.com/aws/aws-sdk-go/service/ecs/ecsiface"
"github.com/stretchr/testify/assert"

"github.com/anchore/ecs-inventory/pkg/reporter"
)

// Return a pointer to the passed value
Expand Down

0 comments on commit 89112bf

Please sign in to comment.