Azure管道:作业失败通知

时间:2019-10-02 14:03:32

标签: .net email azure-devops yaml azure-pipelines

如果特定作业在天蓝色管道中失败,是否可以发送电子邮件通知?

基本上,这是我管道中的一个测试阶段,其中几个作业并行运行,执行不同的测试套件。每个测试套件都有一个不同的负责人,如果失败,则必须通知。

我只能在整个管道失败时找到通知选项,但这不是我想要的。

此刻我也没有创建任何工作项,也找不到“发送电子邮件任务”或类似的内容。

我当然可以编写自己的脚本并在作业失败时执行该脚本,但是我想知道是否有更简单的方法来解决我的问题。

3 个答案:

答案 0 :(得分:1)

我认为没有现成的选项,但是您可以使用Send Email扩展名:

- task: SendEmail@1
  displayName: 'Send an email with subject Job A failed!'
  inputs:
    To: 'user@test.com'
    From: 'test@test.com'
    Subject: 'Job A failed!'
    SmtpServer: 'my smtp server'
  condition: failed()

答案 1 :(得分:1)

由于没有内置方法可以执行此操作,因此我决定添加一个小的Powershell脚本,该脚本在测试阶段的VSTest任务之后简单地执行。同样由于 failed()条件,它仅在至少一项测试失败时才执行。

答案 2 :(得分:0)

您还可以编写一些外部monitopring,它将通过REST API验证发布状态。我用适当的天蓝色功能做了这样的事情。