Any plans for the github checks API?

133 views
Skip to first unread message

jxpe...@godaddy.com

unread,
May 9, 2018, 12:37:34 PM5/9/18
to Jenkins Developers

Someone on my team posted something about the new github checks API, which is like a better status API, providing detailed error info, etc.

Is anyone aware of if any plans to do anything with it in Jenkins? I wrote a plugin that watches jobs, and sends github status info (pending, succeeded, failed) github, and was considering extending it to support the new checks - but it also seems like something that might be better handled in a core plugin, so I was wondering whether there were any plans to add support.

Jeff

Jesse Glick

unread,
May 9, 2018, 12:42:44 PM5/9/18
to Jenkins Dev
The `github-branch-source` plugin uses the older Status API. There might be some opportunities to improve the UX with the Checks API, I am not sure.

Steven F

unread,
May 10, 2018, 5:37:39 AM5/10/18
to Jenkins Developers
The checks API looks great, but it seems like there is a disconnect between the all-in-one Pipeline of Jenkins and what the checks API expects to be working with. The examples in the article show elements such as linting, build, static analysis as separate and individually runnable things. In Jenkins 2.x Pipeline it feels like bundling these things together is more encouraged. While you can break things up a bit, it can become unwieldy when you get into things like multibranch building.

There's still a lot of potential for helpful usage of the API, these differences are just something that I find interesting when reading about software pipeline concepts and applications in abstract.

jxpe...@godaddy.com

unread,
May 10, 2018, 9:09:49 AM5/10/18
to Jenkins Developers
I'm not sure how the part about rerunning individual stages would work, but I could see rerunning the entire job from your github PR page. We sometimes have jobs where there are tests which fail occasionally, or 3rd party services are flakey, and in those cases just rerunning the job from github would save a step.

The part that might be interesting would be providing detailed information about why things failed on the PR page, with a list of actual errors. Granted this isn't easy, since there's not a consistent way to report errors, but the engineers I work with would *love* that level of integration. I would assume each "check" would be a single stage in the pipeline, so a routine job might have this set of checks:
  • checkout SCM
  • static checks
  • tests
  • deploy

Jesse Glick

unread,
May 10, 2018, 11:56:28 AM5/10/18
to Jenkins Dev, Andrew Bayer
On Thu, May 10, 2018 at 5:37 AM, Steven F <steven...@gmail.com> wrote:
> The examples in the article show elements such as linting,
> build, static analysis as separate and individually runnable things. In
> Jenkins 2.x Pipeline it feels like bundling these things together is more
> encouraged.

Well, it is generally more straightforward to have those things be run
as part of a single Jenkins build, triggered by SCM changes. What is
missing is an API which would allow Jenkins report plugins (`Publisher
& SimpleBuildStep`, for example) to indicate to the system that there
is some information to be displayed in an abstract “change request”,
perhaps associated with source code lines, which would then be
implemented by `github-branch-source` with the Checks API.

jxpe...@godaddy.com wrote:
> just rerunning the job from github would save a step

See JENKINS-45455 for rerunning generally; again we would need a new
API to allow this is to be integrated with in-PR “chatops” triggers,
so that `github-branch-source` could receive GH events and refire them
as requests to rerun parts of a build, which
`pipeline-model-definition` would then interpret as a Declarative
build trigger.

All this would allow you to do more from GitHub and less from Blue
Ocean or the Jenkins “classic” UI. @abayer has done the most work in
this area and should probably be commenting.

Oleg Nenashev

unread,
Jan 27, 2020, 7:57:31 AM1/27/20
to Jenkins Developers
Just to bump this thread, we consider adding Checks API integration as a GSoC 2020 project idea.
We had a preliminary discussion with Ulli Hafner (Warnings NG) and other parties.

If someone is interested to join the project, please let me know

Raihaan Shouhell

unread,
Jan 27, 2020, 11:09:09 AM1/27/20
to Jenkins Developers
I think having a checks api would be great.
Reports sending checks back to the change request would be a useful feature.

Tim Jacomb

unread,
Jan 27, 2020, 11:38:23 AM1/27/20
to Jenkins Developers
+1  would be great,
I've done some ground laying work for it here:

It requires a github-api-plugin version to be published with a recent ish version of github-api

Thanks
Tim

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-de...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/fa0449e3-53ec-42d2-a788-cad59557d4d2%40googlegroups.com.

Sladyn Nunes

unread,
Jan 27, 2020, 11:55:32 AM1/27/20
to jenkin...@googlegroups.com
+1 
"ChatOps" triggers would be highly beneficial thereby letting the github-branch-source to run the required checks on specific parts. Also detailed reports from GitHub Checks could be published and maybe parsed as required.


--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-de...@googlegroups.com.

Oleg Nenashev

unread,
Jan 28, 2020, 7:13:04 AM1/28/20
to JenkinsCI Developers, Ullrich Hafner
+ Ullrich Hafner who was interested to write up a project idea for this topic.
I would be happy to be a mentor there, and I believe we could find more mentors to make it happen


You received this message because you are subscribed to a topic in the Google Groups "Jenkins Developers" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/jenkinsci-dev/UGhDM5lcz8Y/unsubscribe.
To unsubscribe from this group and all its topics, send an email to jenkinsci-de...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CAC-Leqttb4%3DVhSnd%3DKLeq69GioC4mzmpyadcJUG0gdX9TN%3DbOw%40mail.gmail.com.

Ullrich Hafner

unread,
Jan 29, 2020, 5:23:31 AM1/29/20
to Jenkins Developers
I started a document for the project idea:
https://docs.google.com/document/d/1fl3sF0mArtv2THOjPSZvNufGme4P24BtT0BirHMeMRY/edit?usp=sharing

Feel free to extend or comment.

Oleg Nenashev

unread,
Jan 29, 2020, 5:31:00 AM1/29/20
to JenkinsCI Developers
Great, thanks! Could you please grant "Comment" permission to viewers?

Ullrich Hafner

unread,
Jan 29, 2020, 5:35:25 AM1/29/20
to Jenkins Developers
Ah, yes, it should be fixed now...

Jon Brohauge

unread,
Jan 30, 2020, 11:05:24 AM1/30/20
to Jenkins Developers
This is something I'd love to see get accepted into GSoC 2020. I'd even volunteer being a mentor for this. Although a more technical mentor would probably be needed alongside.

Rgds,
Jon


On Wednesday, January 29, 2020 at 11:23:31 AM UTC+1, Ullrich Hafner wrote:
Feel free to extend or comment.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkin...@googlegroups.com.

-- 
You received this message because you are subscribed to a topic in the Google Groups "Jenkins Developers" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/jenkinsci-dev/UGhDM5lcz8Y/unsubscribe.
To unsubscribe from this group and all its topics, send an email to jenkin...@googlegroups.com.

Oleg Nenashev

unread,
Jan 30, 2020, 11:16:45 AM1/30/20
to JenkinsCI Developers
I would join as mentor as well

To unsubscribe from this group and all its topics, send an email to jenkinsci-de...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/465bce4a-321b-444a-b0ae-594ff1e42e8c%40googlegroups.com.

Jon Brohauge

unread,
Jan 31, 2020, 11:32:41 AM1/31/20
to Jenkins Developers
Leave it to Oleg to save my a** ;-)
To unsubscribe from this group and all its topics, send an email to jenkin...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/465bce4a-321b-444a-b0ae-594ff1e42e8c%40googlegroups.com.

Ullrich Hafner

unread,
Jan 31, 2020, 12:00:54 PM1/31/20
to Jenkins Developers
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-de...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/c740c5b0-dc34-41bd-bf54-a8b51069afb6%40googlegroups.com.

Oleg Nenashev

unread,
Feb 1, 2020, 5:59:36 PM2/1/20
to Jenkins Developers
I added few comments, but I believe that the project idea is ready to be published as a draft or as a final one.
Thanks Ulli!
To unsubscribe from this group and stop receiving emails from it, send an email to jenkin...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/c740c5b0-dc34-41bd-bf54-a8b51069afb6%40googlegroups.com.

Ullrich Hafner

unread,
Feb 2, 2020, 8:36:08 AM2/2/20
to Jenkins Developers
Ok, that means I should convert everything into asciidoc or do we just link to the existing document?

To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-de...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/bb534af0-9397-4fb6-a483-c19a59e157a4%40googlegroups.com.

Oleg Nenashev

unread,
Feb 2, 2020, 8:45:03 AM2/2/20
to JenkinsCI Developers
We can publish as is for draft, but maybe it makes sense to convert to asciidoc right away

To unsubscribe from this group and all its topics, send an email to jenkinsci-de...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/778533BD-D3DB-4D6E-988C-19AF8C9371F9%40gmail.com.

Sladyn Nunes

unread,
Feb 2, 2020, 11:06:32 PM2/2/20
to jenkin...@googlegroups.com
Hello,
One small addition remaining is the point of contact for potential students, are we going to have a new gitter channel or reuse the existing github branch source or warnings plugin channel. 

Marky Jackson

unread,
Feb 2, 2020, 11:15:05 PM2/2/20
to jenkin...@googlegroups.com
I would say this needs a new channel 


On Feb 2, 2020, at 8:06 PM, Sladyn Nunes <sladyn...@gmail.com> wrote:



Ullrich Hafner

unread,
Feb 3, 2020, 4:01:22 PM2/3/20
to Jenkins Developers

Sladyn Nunes

unread,
Feb 9, 2020, 1:29:47 AM2/9/20
to Jenkins Developers

I was interested in preparing a draft proposal as a student for this project and wanted to develop a POC using a simple plugin/extension that would go through the reports published by the warnings plugin and get a status published on the ChecksAPI.
+jxpe...@godaddy.com Do you already have a plugin that posts to the Checks API. I did have a look at the Branch Source Plugin and the excellent work that @timja has done on the draft PR for github app authentication. I was wondering if that could be used as a starting point for the POC or go in with an independent plugin that posts to the ChecksAPI directly
Thoughts ? 
Reply all
Reply to author
Forward
0 new messages