我们正在使用Slack通知我们的开发团队有关生产代码的发布。我们发现这样做的方式允许我们最灵活的是通过POST到我们的Slack应用程序。在请求的正文中,我传递了4个值,如下所示,它们被设置为任务组的参数。
在任务组中,我使用默认值设置了3个参数,它们是:名称值
我设置了一个PowerShell脚本任务来内联运行。它没有传递参数的选项。现在我只是将值写入控制台以查看正在发生的事情。
使用我的Bash脚本,我使用echo做同样的事情,它看起来像这样:
当我运行这些脚本时,PowerShell将只打印环境值(在发布工作流中定义)。它甚至无法使用默认的版本变量。
但是,Bash按预期执行。
Bash使用System / Release变量没有问题。 PowerShell将仅使用它在VSTS版本变量中明确定义的变量。我希望它使用任务组参数的值,这将允许团队使用默认值或自定义值。
因此,PowerShell脚本将使用applicationname变量,该变量默认为$(Release.DefinitionName)。在发布工作流程中,团队可以保留原样,或者如果定义名称对于警报中报告的名称不够清晰或不合适,则使用自定义值。我可以使用它的唯一方法是在发布变量中定义applicationname,并将其默认值设置为$(Release.DefinitionName)。
再一次,bash脚本运行得很好。 powershell脚本似乎不喜欢这样。有谁知道为什么?很乐意尝试任何事情。