Documentation
¶
Overview ¶
Package server is the Bitbucket Data Center (a.k.a. "Server") adapter for the backend.Client interface.
Index ¶
- type Client
- func (c *Client) AddPRComment(ns, slug string, id int, in backend.AddPRCommentInput) (backend.PRComment, error)
- func (c *Client) ApprovePR(ns, slug string, id int) error
- func (c *Client) CreateBranch(ns, slug string, in backend.CreateBranchInput) (backend.Branch, error)
- func (c *Client) CreatePR(ns, slug string, in backend.CreatePRInput) (backend.PullRequest, error)
- func (c *Client) CreateRepo(ns string, in backend.CreateRepoInput) (backend.Repository, error)
- func (c *Client) CreateTag(ns, slug string, in backend.CreateTagInput) (backend.Tag, error)
- func (c *Client) DeclinePR(ns, slug string, id int) error
- func (c *Client) DeleteBranch(ns, slug, branch string) error
- func (c *Client) DeleteRepo(ns, slug string) error
- func (c *Client) DeleteTag(ns, slug, name string) error
- func (c *Client) GetApplicationProperties() (backend.AppProperties, error)
- func (c *Client) GetCommit(ns, slug, hash string) (backend.Commit, error)
- func (c *Client) GetCurrentUser() (backend.User, error)
- func (c *Client) GetPR(ns, slug string, id int) (backend.PullRequest, error)
- func (c *Client) GetPRDiff(ns, slug string, id int) (string, error)
- func (c *Client) GetRepo(ns, slug string) (backend.Repository, error)
- func (c *Client) ListBranches(ns, slug string, limit int) ([]backend.Branch, error)
- func (c *Client) ListCommitStatuses(_, _, hash string) ([]backend.CommitStatus, error)
- func (c *Client) ListCommits(ns, slug, branch string, limit int) ([]backend.Commit, error)
- func (c *Client) ListPRComments(ns, slug string, id int) ([]backend.PRComment, error)
- func (c *Client) ListPRs(ns, slug, state string, limit int) ([]backend.PullRequest, error)
- func (c *Client) ListRepos(limit int) ([]backend.Repository, error)
- func (c *Client) ListTags(ns, slug string, limit int) ([]backend.Tag, error)
- func (c *Client) MergePR(ns, slug string, id int, in backend.MergePRInput) (backend.PullRequest, error)
- func (c *Client) ReadyPR(ns, slug string, id int) error
- func (c *Client) RequestReview(ns, slug string, id int, users []string) error
- func (c *Client) UnapprovePR(ns, slug string, id int) error
- func (c *Client) UpdatePR(ns, slug string, id int, in backend.UpdatePRInput) (backend.PullRequest, error)
- type HTTPClient
- type PagedResponse
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client is the Bitbucket Data Center HTTP client.
func NewClient ¶
func NewClient(httpClient HTTPClient, baseURL, token, username string) *Client
NewClient constructs a Client. If token is non-empty Bearer auth is used; else if username is non-empty Basic auth is used with username:token as credentials.
func (*Client) AddPRComment ¶ added in v1.6.0
func (c *Client) AddPRComment(ns, slug string, id int, in backend.AddPRCommentInput) (backend.PRComment, error)
AddPRComment adds a top-level comment to a pull request.
func (*Client) ApprovePR ¶
ApprovePR approves a PR on behalf of the authenticated user. Bitbucket Server (like Cloud) exposes a dedicated POST .../approve endpoint; the participants/{userSlug} path requires an actual slug and does not accept ~.
func (*Client) CreateBranch ¶
func (c *Client) CreateBranch(ns, slug string, in backend.CreateBranchInput) (backend.Branch, error)
CreateBranch creates a new branch in the given repository. Server accepts both branch names and commit hashes in startPoint.
func (*Client) CreatePR ¶
func (c *Client) CreatePR(ns, slug string, in backend.CreatePRInput) (backend.PullRequest, error)
CreatePR creates a new pull request.
func (*Client) CreateRepo ¶
func (c *Client) CreateRepo(ns string, in backend.CreateRepoInput) (backend.Repository, error)
CreateRepo creates a new repository in ns.
func (*Client) DeleteBranch ¶
DeleteBranch deletes a branch in a repository.
func (*Client) DeleteRepo ¶
DeleteRepo deletes a repository.
func (*Client) GetApplicationProperties ¶
func (c *Client) GetApplicationProperties() (backend.AppProperties, error)
GetApplicationProperties fetches Bitbucket version information.
func (*Client) GetCurrentUser ¶
GetCurrentUser fetches the authenticated user. Bitbucket Server does not support GET /users/~ (Cloud-only), so when a userSlug was provided at construction time we call GET /users/{slug} instead.
func (*Client) GetRepo ¶
func (c *Client) GetRepo(ns, slug string) (backend.Repository, error)
GetRepo fetches a single repository.
func (*Client) ListBranches ¶
ListBranches lists branches for a repository.
func (*Client) ListCommitStatuses ¶ added in v1.6.0
func (c *Client) ListCommitStatuses(_, _, hash string) ([]backend.CommitStatus, error)
ListCommitStatuses lists build / CI statuses reported against a commit hash. Bitbucket Server / Data Center exposes these on a separate REST root, /rest/build-status/1.0, rather than the regular /rest/api/1.0 base.
The ns/slug arguments are unused by the Server build-status API (statuses are keyed only by commit hash) but are kept for interface symmetry.
func (*Client) ListCommits ¶
ListCommits lists commits on a branch for a repository.
func (*Client) ListPRComments ¶ added in v1.6.0
ListPRComments lists top-level comments on a pull request. Bitbucket Server exposes comments via the activities feed; we filter for COMMENTED actions.
func (*Client) ListRepos ¶
func (c *Client) ListRepos(limit int) ([]backend.Repository, error)
ListRepos lists repositories accessible to the authenticated user.
func (*Client) MergePR ¶
func (c *Client) MergePR(ns, slug string, id int, in backend.MergePRInput) (backend.PullRequest, error)
MergePR merges a pull request.
func (*Client) ReadyPR ¶
ReadyPR marks a draft pull request as ready for review.
Bitbucket Server's PUT endpoint for a PR requires the full PR object (title, fromRef, toRef, ...), so we GET the current PR first, flip the draft flag, and PUT the full body back.
func (*Client) RequestReview ¶
RequestReview fetches the current PR, merges in new reviewers (deduped), and PUTs it back.
func (*Client) UnapprovePR ¶
UnapprovePR removes the authenticated user's approval from a pull request. Mirrors the approve endpoint: DELETE .../approve (not DELETE .../participants/~, which requires an actual user slug and is rejected by Bitbucket Server).
func (*Client) UpdatePR ¶
func (c *Client) UpdatePR(ns, slug string, id int, in backend.UpdatePRInput) (backend.PullRequest, error)
UpdatePR updates the title and/or description of a pull request.
type HTTPClient ¶
HTTPClient is the transport interface for making HTTP requests. It is retained as an alias at the package boundary so callers in this repository continue to compile without importing the internal httpx package.