如果Jenkins';建造通道';在构建失败之后?

如果Jenkins';建造通道';在构建失败之后?,jenkins,jenkins-plugins,Jenkins,Jenkins Plugins,如果Jenkins在构建失败后“构建通过”,是否可以发送电子邮件 例如,我有失败的x3构建 但是第四次建造通过了 然后是否可以发送电子邮件说构建已通过您可以使用Jenkins中的shell脚本来实现它 获取当前生成状态 CURRENT\u BUILD\u STATUS=$(curl--silent${BUILD\u URL}api/json | jq-r.result') 获取以前的版本号 prevBuildNo=$($BUILD\u NUMBER-1)) echo$prevBuildNo 获取

如果Jenkins在构建失败后“构建通过”,是否可以发送电子邮件

  • 例如,我有失败的x3构建
  • 但是第四次建造通过了

  • 然后是否可以发送电子邮件说构建已通过

    您可以使用Jenkins中的shell脚本来实现它

    获取当前生成状态
    CURRENT\u BUILD\u STATUS=$(curl--silent${BUILD\u URL}api/json | jq-r.result')

    获取以前的版本号
    prevBuildNo=$($BUILD\u NUMBER-1))

    echo$prevBuildNo

    获取以前的生成状态
    PREVIOUS\u BUILD\u STATUS=$(curl--silenthttp://jenkins.org.com/jenkins/job/job/jobname/${prevBuildNo}/api/json | jq-r'.result)

    检查上一次生成是否失败,当前生成是否成功
    if[“$CURRENT\u BUILD\u STATUS”=“SUCCESS”]&&[“$PREVIOUS\u BUILD\u STATUS”=“FAILED”]
    然后
    #发送邮件
    echo$echo“hello world”|邮件-s“主题”someone@somewhere.com
    其他的
    echo“由于上一次生成成功,因此没有电子邮件触发器。”
    
    fi

    您可以在Jenkins中使用shell脚本来实现它

    获取当前生成状态
    CURRENT\u BUILD\u STATUS=$(curl--silent${BUILD\u URL}api/json | jq-r.result')

    获取以前的版本号
    prevBuildNo=$($BUILD\u NUMBER-1))

    echo$prevBuildNo

    获取以前的生成状态
    PREVIOUS\u BUILD\u STATUS=$(curl--silenthttp://jenkins.org.com/jenkins/job/job/jobname/${prevBuildNo}/api/json | jq-r'.result)

    检查上一次生成是否失败,当前生成是否成功
    if[“$CURRENT\u BUILD\u STATUS”=“SUCCESS”]&&[“$PREVIOUS\u BUILD\u STATUS”=“FAILED”]
    然后
    #发送邮件
    echo$echo“hello world”|邮件-s“主题”someone@somewhere.com
    其他的
    echo“由于上一次生成成功,因此没有电子邮件触发器。”
    
    fi

    如果要为每个生成发送生成状态,则它应该执行此任务。还是你在找别的东西?@skjoshi谢谢你的评论,我只想在上一次构建失败但当前构建通过时才发送电子邮件,有可能吗?我的建议是使用带有自定义脚本的email ext插件。您可能需要编写一个基于脚本的小型自定义生成步骤来决定是否发送邮件。如果要为每个生成发送生成状态,则它应该可以完成此工作。还是你在找别的东西?@skjoshi谢谢你的评论,我只想在上一次构建失败但当前构建通过时才发送电子邮件,有可能吗?我的建议是使用带有自定义脚本的email ext插件。您可能需要编写一个基于脚本的小型自定义构建步骤来决定是否发送邮件。