【问题标题】:Trigger parametrized job build using remote API through ajax通过 ajax 使用远程 API 触发参数化作业构建
【发布时间】:2011-05-21 14:16:12
【问题描述】:

我正在使用 Jenkins 版本。 1.406 并且无法使用 AJAX 触发参数化(3 个字符串)构建。

一些文档谈到“令牌”,但 Jenkins 的 OR 作业的配置面板中没有这样的选项。

我正在发送这样的 ajax 调用:

    var jqxhr = $.post(
    "http://servername:8080/job/jab-name/build/api/json",
    { "parameters": [{ "PARAM1": "value1" }, { "PARAM2": "value2" }] }, 
    "json"
)
.success(function () { alert("success"); })
.error(function (xhr, ajaxOptions, thrownError) { alert("Error\nxhr.status = [" + xhr.status + "]\n xhr.status: [" + xhr.statusText + "]\najaxOptions = [" + ajaxOptions + "]"); })
.complete(function () { alert("complete"); });

参数正确(区分大小写)并且全部设置,不使用默认值。

有人可以帮忙吗? 谢谢!

【问题讨论】:

    标签: ajax api build jenkins


    【解决方案1】:

    需要检查的几件事

    1. 您是否选中了“触发器远程构建(例如,从脚本)”选项?如果选中,将有文本框输入您的令牌。

    2. 您使用安全性吗?如果是,您必须针对 Jenkins 进行身份验证。

    3. 看看https://wiki.jenkins-ci.org/display/JENKINS/Remote+access+API(需要使用json触发参数化构建的说法是错误的)

    【讨论】:

    • 嗨;在我尝试运行的 Jenkins 作业中,没有启用“触发器构建”选项。Jenkins 和服务器级别都没有安全性(没有基本/LDAP/Active Directory 身份验证请求)。我确实按照示例中的 wiki 页面所述进行了尝试,但是它也不起作用,所以我尝试使用 url 中的“/api/json”部分,但这没有帮助。
    • 需要检查“触发器远程构建”,否则您将不走运。 AFAIK,您不需要配置令牌。然后调用 server/job/myjob/buildWithParameters?PARAMETER=Value 或使用其余 API。 -- 参考参见wiki.jenkins-ci.org/display/JENKINS/Parameterized+Build
    【解决方案2】:

    我认为您必须在 URL 中将 build 替换为 buildWithParameters

    var jqxhr = $.post(
        "http://servername:8080/job/jab-name/buildWithParameters/api/json",
        { "parameters": [{ "PARAM1": "value1" }, { "PARAM2": "value2" }] }, 
        "json"
    )
    .success(function () { alert("success"); })
    .error(function (xhr, ajaxOptions, thrownError) { alert("Error\nxhr.status = [" + xhr.status + "]\n xhr.status: [" + xhr.statusText + "]\najaxOptions = [" + ajaxOptions + "]"); })
    .complete(function () { alert("complete"); });
    

    【讨论】:

    • 我现在测试了同样的结果。这可能是一个跨站点脚本问题,但我不确定。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-20
    • 2019-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多