2017-10-19 108 views
0

我对Azure中ARM模板颇为陌生,我需要部署一个资源组,其中包含大约40个资源。我在所有的json中都迷失了方向,看起来好像将模板分成链接模板会有所帮助。使用链接的ARM模板进行测试

我发现了有关创建模板可以上传和运行的存储帐户的建议。我在VSTS中建立并发布了这个功能。问题是,现在我做了第一次测试,我不知道该怎么做。我还没有找到从存储帐户的第一个测试中自动删除模板甚至容器的方法。我宁愿保留存储帐户并反复使用它进行部署。

我也看到了使用虚拟机而不是存储帐户的建议,但是我觉得我知道如何做到这一点,因为只有一个大的ARM模板才更有效。

如果任何人都可以通过VSTS构建和发布来从存储帐户中删除文件,我将不胜感激。我也欢迎其他建议。

预先感谢您。

+0

你为什么要删除您的存储帐户的模板?据推测,您可以使用这些模板作为部署或CI过程的一部分,这样可以保证您的基础架构和服务始终按照您的预期进行配置。 –

+0

模板已经在VSTS版本控制中,所以我没有看到将它们保存在存储帐户中的理由。我想我可以不断更改每个部署测试的模板名称。这意味着将每个测试的新模板检入源代码控制,并且我将失去内置的更改跟踪。 – user1165224

+0

啊,我明白了。您需要为每个子模板设置可寻址的URL,以便可以嵌入它们。您还需要在每次部署之前更新存储中的模板,以便可以合并更改。对? –

回答

0

尝试使用VSTS中的Azure File Copy任务将您的子模板复制到blob容器。然后你可以执行你的ARM任务。

Azure File Copy Task description

+1

我无法使用上面的链接,但我确实有[部署:Azure文件复制](https://docs.microsoft.com/zh-cn/vsts/build-release/tasks/deploy/azure-文件复制)我正在使用它将文件复制到存储帐户。文档没有说如果文件已经存在,会发生什么。我以为我尝试了它,但它失败了,但是现在我尝试了它,并且对于blob存储和一般存储帐户,文件都被简单覆盖。这对我行得通!谢谢你的帮助! – user1165224