Browse Source

allow networks to be merged

feature/auto_ssh
Andrew Camilleri 6 years ago
parent
commit
817e114473
  1. 6
      docker-compose-generator/src/DockerComposeDefinition.cs

6
docker-compose-generator/src/DockerComposeDefinition.cs

@ -57,6 +57,7 @@ namespace DockerGenerator
}
var services = new List<KeyValuePair<YamlNode, YamlNode>>();
var volumes = new List<KeyValuePair<YamlNode, YamlNode>>();
var networks = new List<KeyValuePair<YamlNode, YamlNode>>();
foreach (var doc in Fragments.Select(f => ParseDocument(f)))
{
@ -69,6 +70,10 @@ namespace DockerGenerator
{
volumes.AddRange(fragmentVolumesRoot.Children);
}
if (doc.Children.ContainsKey("networks") && doc.Children["networks"] is YamlMappingNode fragmentNetworksRoot)
{
networks.AddRange(fragmentNetworksRoot.Children);
}
}
@ -76,6 +81,7 @@ namespace DockerGenerator
output.Add("version", new YamlScalarNode("3") { Style = YamlDotNet.Core.ScalarStyle.DoubleQuoted });
output.Add("services", new YamlMappingNode(Merge(services)));
output.Add("volumes", new YamlMappingNode(volumes));
output.Add("networks", new YamlMappingNode(networks));
var result = serializer.Serialize(output);
var outputFile = GetFilePath();
File.WriteAllText(outputFile, result.Replace("''", ""));

Loading…
Cancel
Save