protected override void ProcessRecord() { if (!string.IsNullOrEmpty(DebugTemplateFile)) { File.WriteAllText(DebugTemplateFile, ARMTemplate); } var templates = new TemplatesGenerator().Generate(ARMTemplate, ApiStandalone, SeparatePolicyFile, GenerateParameterFiles, ReplaceListSecretsWithParameter, ListApiInProduct, SeparateSwaggerFile, AlwaysAddPropertiesAndBackend); foreach (GeneratedTemplate template in templates) { string filename = $@"{OutputDirectory}\{template.FileName}"; if (!String.IsNullOrWhiteSpace(template.Directory)) { var directory = $@"{OutputDirectory}\{template.Directory}"; Directory.CreateDirectory(directory); filename = $@"{directory}\{template.FileName}"; } if (File.Exists(filename) && MergeTemplates && template.Type == ContentType.Json && !template.FileName.EndsWith(".swagger.json")) { JObject oldTemplate = JObject.Parse(File.ReadAllText(filename)); template.Content = TemplateMerger.Merge(oldTemplate, template.Content); } File.WriteAllText(filename, template.Type == ContentType.Json ? template.Content.ToString() : template.XmlContent); } }
protected override void ProcessRecord() { var templates = new TemplatesGenerator().Generate(ARMTemplate, ApiStandalone); foreach (GeneratedTemplate template in templates) { string filename = template.FileName; if (!String.IsNullOrWhiteSpace(template.Directory)) { System.IO.Directory.CreateDirectory(template.Directory); filename = $@"{template.Directory}\{template.FileName}"; } System.IO.File.WriteAllText(filename, JObject.FromObject(template.Content).ToString()); } }