Skip to content

Commit

Permalink
collect services to build using WithServices
Browse files Browse the repository at this point in the history
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
  • Loading branch information
ndeloof committed Dec 7, 2023
1 parent fb3868f commit 5e61c62
Showing 1 changed file with 3 additions and 15 deletions.
18 changes: 3 additions & 15 deletions pkg/compose/build.go
Expand Up @@ -22,7 +22,6 @@ import (
"fmt"
"os"
"path/filepath"
"sync"

"github.com/moby/buildkit/util/progress/progressui"

Expand Down Expand Up @@ -80,30 +79,19 @@ func (s *composeService) build(ctx context.Context, project *types.Project, opti

imageIDs := map[string]string{}
serviceToBeBuild := map[string]serviceToBuild{}
mapServiceMutx := sync.Mutex{}
err = InDependencyOrder(ctx, project, func(ctx context.Context, name string) error {
if len(options.Services) > 0 && !utils.Contains(options.Services, name) {
return nil
}
service := project.Services[name]

err = project.WithServices(options.Services, func(service types.ServiceConfig) error {
if service.Build == nil {
return nil
}

image := api.GetImageNameOrDefault(service, project.Name)
_, localImagePresent := localImages[image]
if localImagePresent && service.PullPolicy != types.PullPolicyBuild {
return nil
}
mapServiceMutx.Lock()
name := service.Name
serviceToBeBuild[name] = serviceToBuild{name: name, service: service}
mapServiceMutx.Unlock()
return nil
}, func(traversal *graphTraversal) {
traversal.maxConcurrency = s.maxConcurrency
})

}, types.IgnoreDependencies)
if err != nil || len(serviceToBeBuild) == 0 {
return imageIDs, err
}
Expand Down

0 comments on commit 5e61c62

Please sign in to comment.