如何针对不同配置(发布、调试等)为Azure构建不同的启动任务
本文关键字:Azure 构建 任务 启动 何针 配置 发布 调试 | 更新日期: 2023-09-27 17:53:29
我在Azure项目中的ServiceDefinition文件中有这些行:
<Startup>
<Task commandLine="Tools'Reminder.cmd" executionContext="elevated" taskType="simple" />
</Startup>
但是对于测试服务器和生产服务器,它必须是不同的提醒。cmd文件。我该怎么做呢?我知道我们可以对ServiceConfiguration有不同的配置,但是不知道如何对ServiceDefinition文件有不同的配置。
不幸的是,没有办法将ServiceDefinition文件配置为在已部署环境中运行的Startup Tasks执行此操作。一般的建议是,如果任务本身没有在生产服务器中运行,则将自定义代码/测试放在任务本身中以退出。
但是,您可以在ServiceDefinition中将Startup Task配置为不在本地开发机器上运行。Steve Marx有一篇关于如何做到这一点的好文章。<Startup>
<Task executionContext="elevated" commandLine="startup'startup.cmd">
<Environment>
<Variable name="EMULATED">
<RoleInstanceValue xpath="/RoleEnvironment/Deployment/@emulated" />
</Variable>
</Environment>
</Task>
</Startup>
我知道的最简单的方法是为每个环境使用不同的CSDEF文件。这个问题的答案会告诉你如何去做。
这个问题是关于改变VM大小的,但实际上是相同的问题。在您的情况下,您只需更改每个环境的启动任务。