fix: bring up services with deps with --no-deps

Don't fail on not finding dependent services because they were put in the
disabled slice.

Fixes #9427.

Signed-off-by: Nick Sieger <nick@nicksieger.com>
This commit is contained in:
Nick Sieger 2022-05-27 09:18:29 -05:00
parent 5b6b674da9
commit cacff89cef
No known key found for this signature in database
GPG Key ID: 222EA328BD6E402A
2 changed files with 11 additions and 1 deletions

View File

@ -183,7 +183,11 @@ func prepareServicesDependsOn(p *types.Project) error {
if service.DependsOn == nil {
service.DependsOn = make(types.DependsOnConfig)
}
deps, err := p.GetServices(dependencies...)
// Verify dependencies exist in the project, whether disabled or not
projAllServices := types.Project{}
projAllServices.Services = p.AllServices()
deps, err := projAllServices.GetServices(dependencies...)
if err != nil {
return err
}

View File

@ -131,6 +131,12 @@ func TestStartStopWithDependencies(t *testing.T) {
assert.Assert(t, strings.Contains(res.Combined(), "e2e-start-stop-with-dependencies-foo-1"), res.Combined())
})
t.Run("Up no-deps", func(t *testing.T) {
_ = c.RunDockerComposeCmd("--project-name", projectName, "down")
res := c.RunDockerComposeCmd("-f", "./fixtures/dependencies/compose.yaml", "--project-name", projectName, "up", "--no-deps", "-d", "foo")
assert.Assert(t, strings.Contains(res.Combined(), "Container e2e-start-stop-with-dependencies-foo-1 Started"), res.Combined())
})
t.Run("down", func(t *testing.T) {
_ = c.RunDockerComposeCmd("--project-name", projectName, "down")
})