2016-09-17 36 views
3

我想在我的github页面上添加teamcity构建徽章。我的存储库是一个私人github存储库。 我开始通过包含下面的代码作为link说。github上的Teamcity构建徽章

<a href="http://teamcity/viewType.html?buildTypeId=myID&guest=1"> 
<img src="http://teamcity/app/rest/builds/buildType(id:myID)/statusIcon"/> 
</a> 

我被困在接着的问题是,是,像正在blocked.I怀疑,这是因为我的TeamCity服务器对HTTP,而我的GitHub库使用HTTPS。

在我的情况下,无法将teamcity更改为使用https,因此这不是一个选项。

有关如何在github上获得构建徽章的任何解决方法/建议?

回答

2

确保选中“启用状态的小部件”复选框,在常规设置页面上:

enter image description here

+0

我已经做到了,但仍然没有出现。 –

2

对于显示在用户页面,GitHub上检索从服务器端的图像,并与替换原始图像一个缓存。这就是为什么TeamCity实例应该可以从外部访问,并且状态图标应该可供任何用户使用:确保按照Boris的建议检查“启用状态小部件”的最简单方法。

图片也被GitHub非常积极地缓存,所以显示的徽章可能已过时。至少使用TeamCity 10.0.2,它添加了HTTP标头,试图阻止该缓存。

+0

我已启用状态窗口小部件按钮。此外,我已检查我在源代码中使用的url是否可从外部访问。我的teamcity版本是9.1.5。是否可以解决此问题? –

+0

另外我注意到的另外一件奇怪的事情是,当我在浏览器中切换到移动视图时,github徽章出现在自述文件中,当我切换到正常浏览器模式时会再次消失。同样在我的网络选项卡中,我观察到图像在我的正常浏览器模式下被阻止(被阻止:混合内容),而在移动模式下它的状态为200(OK)。任何线索可能会发生这种情况? –

+0

“blocked:mixed-content”probbaly意味着图像通过http://被包含,而主页面是https:// 当GitHub呈现README.md(因为GitHub重写/缓存图像)时不会发生这种情况,所以你很可能会在你需要使用https://从TeamCity服务器的图像中查看原始html。 – Yaegor