Skip to content

Commit ac8ea08

Browse files
authored
Merge pull request docker#11409 from ndeloof/swarm_overlay_network
don't check external network existence when swarm is enabled
2 parents cdb6eb5 + da1a34a commit ac8ea08

File tree

1 file changed

+7
-10
lines changed

1 file changed

+7
-10
lines changed

pkg/compose/create.go

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1246,19 +1246,16 @@ func (s *composeService) resolveExternalNetwork(ctx context.Context, n *types.Ne
12461246
n.Name = networks[0].ID
12471247
return nil
12481248
case 0:
1249-
if n.Driver == "overlay" {
1249+
enabled, err := s.isSWarmEnabled(ctx)
1250+
if err != nil {
1251+
return err
1252+
}
1253+
if enabled {
12501254
// Swarm nodes do not register overlay networks that were
12511255
// created on a different node unless they're in use.
1252-
// Here we assume `driver` is relevant for a network we don't manage
1253-
// which is a non-sense, but this is our legacy ¯\(ツ)/¯
1256+
// So we can't preemptively check network exists, but
12541257
// networkAttach will later fail anyway if network actually doesn't exists
1255-
enabled, err := s.isSWarmEnabled(ctx)
1256-
if err != nil {
1257-
return err
1258-
}
1259-
if enabled {
1260-
return nil
1261-
}
1258+
return nil
12621259
}
12631260
return fmt.Errorf("network %s declared as external, but could not be found", n.Name)
12641261
default:

0 commit comments

Comments
 (0)