Merge top level non-service keys (#1187)

* merge top level non-service keys

docker-compose default behaviour is to merge these top level keys such
as `networks`
This commit is contained in:
Chander G
2019-11-28 14:18:49 +08:00
committed by Hang Yan
parent d03a6a9474
commit 5857252c3d
10 changed files with 425 additions and 0 deletions
+20
View File
@@ -635,6 +635,26 @@ func mergeComposeObject(oldCompose *types.Config, newCompose *types.Config) (*ty
oldCompose.Services[index] = tmpOldService
}
// Merge the networks information
for idx, network := range newCompose.Networks {
oldCompose.Networks[idx] = network
}
// Merge the volumes information
for idx, volume := range newCompose.Volumes {
oldCompose.Volumes[idx] = volume
}
// Merge the secrets information
for idx, secret := range newCompose.Secrets {
oldCompose.Secrets[idx] = secret
}
// Merge the configs information
for idx, config := range newCompose.Configs {
oldCompose.Configs[idx] = config
}
return oldCompose, nil
}