jenkins “立即构建”链接不起任何作用

w6mmgewl  于 2022-11-02  发布在  Jenkins
关注(0)|答案(9)|浏览(606)

Jenkins让我的脚湿了,我做了一些不好的事情。最初,我有一个Bitbucket钩子来触发构建。当我有了这个钩子,我可以使用侧栏或视图表中的立即生成链接按需运行生成。我决定改为每晚运行作业生成,但现在我无法按需运行它们。单击立即生成链接只是闪烁一个工具提示,上面写着“Build scheduled”。
我不确定我做了什么,但有几种可能性:

  • 我删除了Bitbucket挂钩,并选择了Build periodically选项,值为H H(2-10) * * *
  • 我启用了Bitbucket OAuth安全性,并将权限设置为登录用户可以执行任何操作

我尝试过撤销这两个命令,但都没有成功。我还退回了jenkins服务(很多很多次)。我可能更改了其他相关的内容,但我不知道那可能是什么。
有人见过这样的东西吗?

xesrikrc

xesrikrc1#

我有同样的症状,不同的问题,评论中的这个提示很有帮助:
...在Jenkins->Manage Jenkins->System Log->All Jenkins Logs中发现可疑内容
对我来说,结果是“作业”文件夹中的作业有错误的所有者。

xbp102n0

xbp102n02#

对我来说,这是因为我运行Jenkins的EC2示例内存不足。

cbjzeqam

cbjzeqam3#

多亏了@Gluttton,我发现问题出在我在全局安全选项中启用了CSRF保护。关闭它,一切都如预期一样。啊。

m0rkklqb

m0rkklqb4#

我们启用CSRF已经有一段时间了,最近一天左右才注意到Build Now按钮有问题。作为测试,我禁用了CSRF,没有任何变化。这个问题并没有影响所有Jenkins用户。
我根据@Chris检查了日志,发现:

No valid crumb was included in request for /job/<job-name>/ajaxMatrix by <user>. Returning 403.

搜索“No valid crumb was included in request for /job”(请求/作业中未包含有效的crumb)时,找到了"No valid crumb was included in the request" errors all around,其中包含以下注解:
刚刚浪费了几个小时调试为什么我会看到这个:如果你重新安装Jenkins,你需要清除你的cookie,否则你会点击这个。
我启动了一个不同的浏览器,清除了我的cookie,登录到Jenkins,并能够使用Build Now启动作业

fumotvh3

fumotvh35#

由于我刚刚遇到这个问题,答案没有张贴在这里,我想我会添加我的问题和解决方案。
我发现,当我按下构建现在在我的本地Jenkins服务器上的所有工作现在构建正在排队或执行。我右键单击“运行构建”按钮,以检查后的请求,并得到了一个403错误与Jenkins智能调度程序插件我已经安装的问题。我去了已安装的插件,并卸载智能调度程序和构建现在运行。只是一个简短的提醒。

vfhzx4xs

vfhzx4xs6#

在我的情况下,我用完了主机设备上的空间(或者几乎)。要猜测这一点,我必须检查Jenkins日志,这是相当简单的。
在Web UI中,您可以直接从(jenkins_url)/log/all访问日志
向下滚动到最后一条日志,我看到的正是:

Nov 23, 2021 10:18:17 AM WARNING hudson.model.Queue save
Failed to write out the queue file /var/lib/jenkins/queue.xml
java.io.IOException: No space left on device
    at java.base/sun.nio.ch.FileDispatcherImpl.write0(Native Method)
    at java.base/sun.nio.ch.FileDispatcherImpl.write(FileDispatcherImpl.java:62)
    at java.base/sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:113)
    at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:79)
    at java.base/sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:280)
    at hudson.util.FileChannelWriter.write(FileChannelWriter.java:72)
    at java.base/java.io.Writer.write(Writer.java:290)
    at hudson.util.AtomicFileWriter.write(AtomicFileWriter.java:162)
    at java.base/java.io.Writer.write(Writer.java:249)
    at hudson.XmlFile.write(XmlFile.java:191)
    at hudson.model.Queue.save(Queue.java:467)
    at hudson.model.Queue$Saver.run(Queue.java:3149)
    at jenkins.security.ImpersonatingScheduledExecutorService$1.run(ImpersonatingScheduledExecutorService.java:67)
    at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.lang.Thread.run(Thread.java:829)

其实是排队的问题。

ecfdbz9o

ecfdbz9o7#

有趣的是,我在升级到最新的Jenkins版本后遇到了这个问题。由于我不知道哪里出了问题,我只是降级到早期版本,谢天谢地,它又开始工作了。

wlzqhblo

wlzqhblo8#

在我的情况下,这是存储限制的问题。所以我只是增加了可用存储和问题自动修复。
如果达到存储限制,Jenkins应在警告中向您显示此消息。
您的Jenkins数据目录/var/lib/jenkins(AKA JENKINS_HOME)几乎已满。您应该在它完全满之前对其执行操作。

jdg4fx2g

jdg4fx2g9#

我们在一个全新的安装中遇到了这个问题。一个新的管道作业不会生成,而一个普通的自由式作业却生成了。我们在jenkins日志中观察到了这个神秘的警告,当点击生成按钮时:

WARNING: Executor #-1 for Built-In Node grabbed \
  hudson.model.queue.WorkUnit@ba0a64d[work=Test Pipeline] \
  from queue but Built-In Node went off-line before the task's \
  worker thread started. No termination trace available.

最后我们发现唯一的内置节点被禁用。启用它可以构建管道作业。

相关问题