in modules/core/src/main/scala/org/scalasteward/core/forge/bitbucketserver/BitbucketServerApiAlg.scala [47:87]
override def commentPullRequest(
repo: Repo,
number: PullRequestNumber,
comment: String
): F[Comment] =
client
.postWithBody[Json.Comment, Json.Comment](
url.comments(repo, number),
Json.Comment(comment),
modify
)
.map(comment => Comment(comment.text))
override def createFork(repo: Repo): F[RepoOut] =
F.raiseError(new NotImplementedError(s"createFork($repo)"))
override def createPullRequest(repo: Repo, data: NewPullRequestData): F[PullRequestOut] = {
val fromRef =
Json.Ref("refs/heads/" + data.head, Json.Repository(repo.repo, Json.Project(repo.owner)))
val toRef =
Json.Ref("refs/heads/" + data.base.name, Json.Repository(repo.repo, Json.Project(repo.owner)))
for {
reviewers <- useDefaultReviewers(repo)
_ <- F.whenA(data.assignees.nonEmpty)(warnIfAssigneesAreUsed)
_ <- F.whenA(data.reviewers.nonEmpty)(warnIfReviewersAreUsed)
_ <- F.whenA(data.labels.nonEmpty)(warnIfLabelsAreUsed)
req = Json.NewPR(
title = data.title,
description = data.body,
state = Open,
open = true,
closed = false,
fromRef = fromRef,
toRef = toRef,
locked = false,
reviewers = reviewers
)
pr <- client.postWithBody[Json.PR, Json.NewPR](url.pullRequests(repo), req, modify)
} yield pr.toPullRequestOut
}