我们目前通过以下方式拥有Azure DevOps版本设置:
我要完成的工作是,如果9:00 AM部署触发,则取消2:00 PM部署;如果2:00 PM部署触发,则取消9:00 AM部署,因为我们不这样做。确实希望两次部署相同的代码,或者甚至第二天也要部署前一天的代码。
有人知道在Azure DevOps中是否可以做到这一点吗?
我已经做了大量的搜索扩展等工作,以查看是否可以找到任何东西,但是到目前为止还没有成功。任何帮助将不胜感激。
答案 0 :(得分:0)
假设您在9:00 AM触发发布。然后,您可以按照以下步骤实施它:
1。添加一个名为flag的变量,并在“变量”选项卡中将其设置为true
2。从9:00 AM阶段开始和2:00 PM阶段开始将PowerShell任务添加到测试阶段
(1)在测试阶段的末尾添加一个powershell任务,以将标志设置为true。
(2)在开始9:00 AM阶段的顶部添加一个powershell任务,以检查变量标志是否为true,如果标志为false,则使此任务失败,例如以下脚本。
$ flag =“ $(标志)”
if(-不是$ flag)
{
exit 1
}
如果成功部署此阶段,请在开始9:00 AM阶段结束时添加powershell任务,以将标志设置为false。
在2:00 PM阶段重复上述步骤。
答案 1 :(得分:0)
此外,您可以尝试将Release Gates与Rest Api或Azure函数一起使用。您可以在此处找到示例:Azure DevOps release gates with Azure Functions, PowerShell and VS Code