【问题标题】:How to trigger a batch file in Jenkins without waiting for batch execution results and status如何在 Jenkins 中触发批处理文件而不等待批处理执行结果和状态
【发布时间】:2016-09-05 03:03:40
【问题描述】:

我有一份 Jenkins 工作,正在构建/打包/部署 .NET 项目。我为每个构建使用“结帐前清洁” git 属性。

最后,我正在执行一个批处理文件。此批处理文件扫描声纳 Qube MSBuild,c# 分析并更新代码质量结果。但这需要很长时间,我不想将 Jenkins 作业的总执行时间从 1 分钟增加到 5 分钟。开发人员正在考虑,因此部署需要很长时间并且尚未完成。

我想独立于 Jenkins 作业运行此批处理文件,并且不想在 Jenkins 中看到控制台输出。如果不为每个 Jenkins 项目(上游/下游项目)创建新的 Jenkins 作业,我怎么能做到这一点

【问题讨论】:

    标签: batch-file jenkins sonarqube


    【解决方案1】:

    需要使用start cmd命令,例如:

    start YourBatch.bat
    

    这将打开一个新的 CMD 窗口,Jenkins 不会等待结果。

    请记住,如果您获得的退出代码不是 0,它不会导致构建失败。

    【讨论】:

    • 它在 CMD 上运行良好,但不适用于 Jenkins 执行 Windows 批处理命令。 “call mybatch.bat”可以工作,但“start mybatch.bat”不工作。
    • 尝试运行“start YourBatch.bat”,当在 YourBtach.bat 中时,脚本将是:echo>TEST.txt。并查看是否正在创建文件。
    • 它在没有双重配额的情况下工作。另一个问题是我的批处理文件以“@echo off”开头,我将其删除并解决了问题。非常感谢。
    • 哦...配额是为了更好地理解,因为在这些 cmets 部分中很难理解很多信息。无论如何欢迎你:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-20
    • 2011-02-04
    • 2012-01-05
    • 1970-01-01
    • 2018-09-10
    • 1970-01-01
    相关资源
    最近更新 更多