Jenkins搜索框结果URL不正确

bz4sfanl  于 2023-03-17  发布在  Jenkins
关注(0)|答案(4)|浏览(201)

Jenkins搜索功能返回的URL有问题。
我们的Jenkins URL是https://example.com/jenkins
Jenkins位于反向代理(HAProxy)之后。我们配置HAProxy如下:

frontend buildserver
        bind *:443 ssl crt /etc/ssl/certs/example.com.pem
        http-request set-header X-Forwarded-Proto https
        http-request set-header X-Forwarded-Host example.com
        http-request set-header X-Forwarded-Port 443
        acl PATH_JENKINS path_beg -i /jenkins
        use_backend jenkins-http if PATH_JENKINS

backend jenkins-http
        server jenkins 127.0.0.1:8080

在/etc/default/jenkins中我们有:

JENKINS_ARGS="--webroot=/var/cache/$NAME/war --httpPort=$HTTP_PORT --prefix=/jenkins"

在GUI配置中,我们将Jenkins URL设置为:

https://example.com/jenkins/

一切看起来都正常,我可以浏览Jenkins中的所有链接,但使用顶部面板上的搜索框生成的任何搜索结果除外。这些搜索结果链接到没有“/jenkins/”前缀的job/view/etc URL,因此不起作用。
我们最近升级了Jenkins,我被告知以前的搜索结果工作。
有其他人看过这期杂志吗?
Jenkins·Ubuntu 2.289.2
更新:我降级到我们以前的版本2.263.4,但问题仍然存在。检查HTML显示生成的href是相对的和不寻常的,例如:

<a href="../../../../../../../../../../../../../../job/myjob">myjob</a>

我可以这样编辑它:

<a href="../job/myjob">myjob</a>

我还注意到下面的搜索文本帮助出现在搜索后。我没有看到在其他Jenkins的示例,我可以访问。这是由配置/插件启用也许?

可能的解决方案:所以上面的图片是nested-view插件。这个插件有一些问题,例如:

https://issues.jenkins.io/browse/JENKINS-65924
我把插件从1.20回滚到1.17,现在有了更熟悉的搜索功能,并且可以正常工作。

vhipe2zx

vhipe2zx1#

看起来这个问题在1.26中已经解决了,我不必创建~/.nestedViewsSearch文件。
https://phabricator.wikimedia.org/T294424#8028735

zujrkrfu

zujrkrfu2#

出现相同问题。将嵌套视图从1.21降级为1.19,搜索问题消失。

jw5wzhpr

jw5wzhpr3#

nested-view v1.24(diff)允许通过在Jenkins控制器上创建名为~/.nestedViewsSearch的文件来恢复默认搜索行为。
这将立即生效;不需要重新启动控制器。

rqenqsqc

rqenqsqc4#

嵌套视图继续提供自己的搜索扩展,因为其他搜索无法正确抓取嵌套视图。~/.nestedViewsSearch的救命秘籍在今天发布的nested-view-1.27中被删除。取而代之的是,嵌套视图搜索可以暂时被-X:-Xn:禁用(参见帮助)切换,或永久通过全局设置的jenkins。~/.nestedViewsSearch remiasn正确的旧版本,但不再有效。

相关问题