Best way to do Action dashboarding

There seems to be a push even by GitHub (based on their latest twitch cast coming up) to use Actions as a CI/CD pipeline. While I am really liking the evolution of Actions what I am missing is a central location to see status in a logical flow. Using badges is “cute” and me even creating a hand crafted repo where its README is just a huge list of badges across just our main 40+ repos, its not helpful in a global view of a true pipeline that I think most people are used to seeing. I have seen a few “radiator” type projects but those don’t really seem helpful either. Does anyone have any good solutions? My team is pushing to grow more in Jenkins and I really can’t so no to that with the current state (lack) of a good Actions status dashboard for multiple repos.

10 Likes

@peterkline-es,

Thanks for your feedback.
Currently, GitHub’s organization dashboard or personal dashboard does not support the preview for the status of all CI/CD workflows.

GitHub takes your suggestions very seriously, and the suggestions are very helpful for improving GitHub.

I recommend that you can directly share your suggestions here. That will allow you to directly interact with the appropriate engineering team, and make it more convenient for the engineering team to collect and categorize your suggestions.

1 Like

@peterkline-es,

Our team was dealing with the same problem as yours, and we decided to develop our own dashboard solution at the end.

After using it as an internal tool for several months, we recently made it available as a SaaS.

You may check it out on meercode.io or read our blog post for more information.

Your feedback will be greatly appreciated.

2 Likes

Just trying out meercode.io - looks good at first glance.

Hi @compiaffe if you are interested in a Test Dashboard you can check out our GitHub App called Testspace.

While this looks promising for my test team, we don’t use GHA for testing, mostly building and status checks at this time. I did look at meercode.io and it does look really good but honestlly what I can’t understand at this point is that Github is spamming about webinars and such about how full featured CI/CD their product has become and I can’t get a single overview across repos of the health of my several products. I know I am whining but the only “solution” from them still is to have an additional repo that has badges in the README.md?

7 Likes

Here is something I threw together for this:

YMMV but I am using it now and it is fairly stable…

5 Likes

Hi [chriskinsman],
Looks great. I am using it. But one suggestion, It would be great to have auto refresh on events to show it on a dashboard. Something like that. Dashboard should get update on its own for its recent events
Thank you

It does auto update via server side push.

I too was looking for something to give me an overall status of my repos. I wrote a very simple Python3 script that uses PyGithub to do the work of communicating with Github’s API.

from github import Github
g = Github("< YOUR TOKEN HERE>")
repos = g.get_user().get_repos()
for repo in repos:
  for flow in repo.get_workflows():
    for run in flow.get_runs():
      print(repo.name, flow.name, run.created_at, run.conclusion)
      break

This just walks all of the repos for the user identified by a Github access token, visits each workflow assigned to the repo, and looks at the last workflow run, printing out run date and conclusion. It only does the latest run hence the break.

Here’s what a run output looks like for me:

ArrowView CI 2021-12-06 01:01:39 success
astar CI 2021-08-28 21:41:25 success
AUv3Support CI 2022-04-02 20:13:06 success
AUv3Template CI 2022-03-31 07:59:46 failure
BlockComment CI 2022-01-22 09:42:20 success
Checkbox CI 2020-12-02 01:10:52 success
DottedVersionVector CI 2021-12-21 11:22:10 success
DottedVersionVector pages-build-deployment 2021-12-21 11:22:10 success
Joystick CI 2021-12-04 08:52:41 success
Knob CI 2022-02-25 09:09:44 success
LPF CI 2022-03-17 18:34:11 success
morkandmidi CI 2022-01-07 13:16:33 success
MotionCollector CI 2022-03-24 09:41:59 success
notebookjs-katex CI 2021-12-03 12:46:59 success
PackageList Valid JSON 2022-03-14 11:43:22 success
PackageList Nightly Audit 2022-04-03 02:55:24 failure
PriorityQueue CI 2021-10-17 22:35:36 success
remarkable-katex CI 2021-12-03 12:46:23 success
SF2Lib CI 2022-04-02 20:09:18 success
SimplyFlange CI 2022-03-17 18:33:07 success
SimplyPhaser CI 2022-03-17 16:26:38 success
SimplyTremolo CI 2022-03-20 16:55:40 success
SoundFonts CI 2022-03-09 08:34:23 success
SoundFonts pages-build-deployment 2022-03-09 08:34:22 success
swift-math-parser CI 2022-02-12 15:32:09 success

Nothing fancy, but it works well enough for me as a command-line tool.

Brad

Hi Chriskinsman iam new to this dash board i followed all the steps dashboard is up but its not taking repositories