Ejemplo n.º 1
0
        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);
            }
        }
Ejemplo n.º 2
0
        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());
            }
        }