11

我需要远程触发托管在 CloudBees 上的 Jenkins 构建。现在,我试图使用jenkins-cli无济于事。现在我正在使用 SSH 密钥对进行身份验证。

当我做:

$ java -jar jenkins-cli.jar -s https://... list-jobs All

我可以看到所有的工作,包括我想要建立的工作。但是当我这样做时:

$ java -jar jenkins-cli.jar -s https://... build job1
No such job 'job1'

我已经阅读了涉及向anonymous角色添加权限的解决方法。即使我添加了每一个权限,我也会得到同样的错误。

如果有帮助,我正在使用 Jenkins 1.532.1.3。谢谢。

4

3 回答 3

8

今天我遇到了同样的问题并找到了解决方案。当实际上没有这样的工作或者您没有足够的访问权限来执行请求的操作时,就会出现“没有这样的工作”的响应。即使您有权访问请求的操作并且您正在发送带有 --username 和 --password 参数的凭据,它仍然无法正常工作。我发现的唯一解决方案是使用 ssh 身份验证。因此,将您计算机的 ssh 密钥注册到您的詹金斯,一切正常。要注册 ssh 密钥,请访问http://[yourjenkinsserver]/user/[username]/configure

于 2015-03-05T16:08:22.260 回答
3

我遇到了同样的错误,但设法通过在“工作”中为匿名用户提供读取权限来使其工作。

于 2014-10-07T09:10:24.030 回答
0

我今天在 v1.621-1.1 上尝试通过我命名为“vikas027”的非管理员用户时遇到了同样的问题。为了解决这个问题,我为用户“vikas027”勾选了“工作”列下的所有复选框,并为“匿名”用户勾选了“发现”和“阅读”(也在“工作”下)。这些设置在http://<IP>:<port>/configureSecurity. 希望这可以帮助某人。

于 2015-07-29T17:41:24.767 回答