Skip to content

Add GitLab CI Runner Status Page#247

Open
smarr wants to merge 7 commits into
masterfrom
gitlab-runner-status
Open

Add GitLab CI Runner Status Page#247
smarr wants to merge 7 commits into
masterfrom
gitlab-runner-status

Conversation

@smarr

@smarr smarr commented Jun 20, 2026

Copy link
Copy Markdown
Owner

Technically, this feature doesn't really fit into ReBenchDB and should be part of GitLab or so.
Though, it seems the best place for me to maintain it for the moment.

This added page shows the results of a GitLab GraphQL query to show all runners and pipelines and jobs associated with a GitLab group.
The result is shown with the most recent and active jobs first.

The assumption is that one wants to know what's currently running, who queued a job, and who to talk to when there might be issues.

This PR adds dependencies on:

  • graphql-request
  • graphql
  • nock for testing

TODOs

  • look through added colors and sync with the rest of the styling
  • test the dark mode
  • possibly extract the CSS to files as we normally do
  • add the same support for dark/light mode switching we have elsewhere

@smarr smarr force-pushed the gitlab-runner-status branch 4 times, most recently from d42f77e to 1a5a584 Compare June 21, 2026 09:08
smarr added 7 commits June 21, 2026 12:08
- query the GraphQL API for runners and their pipelines/jobs
- status page as part of a project/group, the idea is that they are access protected in the future
- it’s a bit separate from the rest by design, just in case we want to take it out in the future

Signed-off-by: Stefan Marr <git@stefan-marr.de>
Signed-off-by: Stefan Marr <git@stefan-marr.de>
Signed-off-by: Stefan Marr <git@stefan-marr.de>
Signed-off-by: Stefan Marr <git@stefan-marr.de>
Signed-off-by: Stefan Marr <git@stefan-marr.de>
…rk for. each page load

Signed-off-by: Stefan Marr <git@stefan-marr.de>
Signed-off-by: Stefan Marr <git@stefan-marr.de>
@smarr smarr force-pushed the gitlab-runner-status branch from 1a5a584 to ceb0ae8 Compare June 21, 2026 10:08
@smarr

smarr commented Jun 21, 2026

Copy link
Copy Markdown
Owner Author

Since this looks like very large PR, the main element is just about 870 lines of change

$ git diff --stat master HEAD -- src
 src/backend/gitlab/graphql-api.ts          | 103 ++++++++++++++++++++++++
 src/backend/gitlab/html/index.html         | 137 ++++++++++++++++++++++++++++++++
 src/backend/gitlab/html/relative-time.html |   1 +
 src/backend/gitlab/html/tags.html          |   7 ++
 src/backend/gitlab/request-cache.ts        |  66 ++++++++++++++++
 src/backend/gitlab/runner-status.ts        | 448 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/backend/util.ts                        |  46 +++++++++--
 src/index.ts                               |  27 ++++++-
 src/shared/data-format.ts                  |  32 ++++++++
 9 files changed, 858 insertions(+), 9 deletions(-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant