klinux / klinux/gocdnext

GitLab commit status + Bitbucket build status reporting

Open
#23 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

help wanted
Dominant language
Go
Stars
7
Forks
3
Avg merge
2h 12m
Merged PRs (30d)
30

Description

Context

The webhook input trio is closed (#11 GitLab, #12 Bitbucket): all three providers trigger pipelines through the same dispatch path. But the output side is asymmetric — only GitHub gets run feedback, via the GitHub App check-run reporter (store/checks.go). GitLab MRs and Bitbucket PRs trigger runs whose result never shows up on the MR/PR page.

Proposal

Mirror the check-run reporter for the other two providers:

  • GitLab: POST /projects/:id/statuses/:sha (commit status API) — states pending/running/success/failed/canceled, target_url pointing at the run detail page.
  • Bitbucket Cloud: POST /2.0/repositories/{ws}/{repo}/commit/{sha}/statuses/build — states INPROGRESS/SUCCESSFUL/FAILED/STOPPED.

Same lifecycle hooks as the GitHub reporter: status created on run creation, updated on completion. Auth via the scm_source credentials already stored for webhook registration.

Why it matters

Without this, on: [pull_request] works but reviewers can't see CI state on the MR/PR — they have to open gocdnext manually. Table stakes in GitLab CI / GitHub Actions and a prerequisite for the pr-comment plugin and any merge-gating workflow.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with store/checks.go and trace the existing GitHub check-run reporter’s run-creation and completion hooks. Locate the scm_source credential path used for webhook registration, then map the GitLab and Bitbucket status API calls to those hooks. Done means both providers show pending or running status and update it with the completed result and run URL.

Written by the indexing model from the issue text.

Assessment

Tech stack
gitlab, go
Domain
api, backend, ci-cd
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.