有没有办法在我项目的GitHub Readme.md上显示Jenkins构建状态?

我使用Jenkins运行持续集成构建。在每次提交之后,它确保在最终生成文档和发布包之前,所有内容都已编译,并执行单元和集成测试。

仍然存在无意中提交一些破坏构建的内容的风险。对于访问GitHub项目页面的用户来说,知道当前主程序处于该状态是很好的。


当前回答

Jently更新你的Github提交状态(如上所述@vonc),不幸的是,他们还没有实现回购状态API

其他回答

好的,下面是如何设置Jenkins来设置GitHub构建状态。这里假设你已经有了Jenkins和GitHub插件,可以在每次推送时进行构建。

Go to GitHub, log in, go to Settings, Developer Settings, Personal access tokens and click on Generate new token. Check repo:status (I'm not sure this is necessary, but I did it, and it worked for me). Generate the token, copy it. Make sure the GitHub user you're going to use is a repository collaborator (for private repos) or is a member of a team with push and pull access (for organization repos) to the repositories you want to build. Go to your Jenkins server, log in. Manage Jenkins → Configure System Under GitHub Web Hook select Let Jenkins auto-manage hook URLs, then specify your GitHub username and the OAuth token you got in step 3. Verify that it works with the Test Credential button. Save the settings. Find the Jenkins job and add Set build status on GitHub commit to the post-build steps

就是这样。现在做一个测试构建,去GitHub存储库看看它是否工作。单击主存储库页面中的Branches查看构建状态。

你应该看到绿色的复选标记:

这个插件应该可以工作:https://wiki.jenkins-ci.org/display/JENKINS/Embeddable+Build+Status+Plugin

您应该能够将这样的徽章嵌入到README中。md文件:

提交状态API允许你看到“回购状态API”。

自2013年4月26日起,你现在可以在你的GitHub回购分支页面上看到构建状态:

这意味着它是另一种方式,通过访问GitHub项目页面来查看这些状态,而不是只有Jenkins。

从2013年4月30日开始,提交状态的API端点已经扩展到允许分支和标记名称,以及提交sha。

如果你在Jenkins上安装了Github插件,你可以在Post build操作中这样做:

在README中添加以下行。md,并根据您的jenkins项目更改两个URL。

[![Build Status](https://jenkins../..project/lastBuild/buildStatus)](https://jenkins../..project/lastBuild/)