mirror of
https://github.com/changesets/action
synced 2026-10-26 16:39:56 +08:00
Add draft mode support (#258)
* Add draft mode support * Add doc * fmt * add it to action.yml * fix bad merge? * tweak changeset * refactor --------- Co-authored-by: Emma Hamilton <mitchell@hamil.town> Co-authored-by: Mateusz Burzyński <mateuszburzynski@gmail.com>
This commit is contained in:
co-authored by
Emma Hamilton
Mateusz Burzyński
parent
91b911142e
commit
f5dbf72f96
+41
-4
@@ -259,6 +259,7 @@ type VersionOptions = {
|
||||
commitMessage?: string;
|
||||
hasPublishScript?: boolean;
|
||||
prBodyMaxCharacters?: number;
|
||||
prDraft?: "always" | "create";
|
||||
branch?: string;
|
||||
};
|
||||
|
||||
@@ -277,6 +278,7 @@ export async function runVersion({
|
||||
hasPublishScript = false,
|
||||
prBodyMaxCharacters = MAX_CHARACTERS_PER_MESSAGE,
|
||||
branch = github.context.ref.replace("refs/heads/", ""),
|
||||
prDraft,
|
||||
}: VersionOptions): Promise<RunVersionResult> {
|
||||
let versionBranch = `changeset-release/${branch}`;
|
||||
|
||||
@@ -376,6 +378,7 @@ export async function runVersion({
|
||||
head: versionBranch,
|
||||
title: finalPrTitle,
|
||||
body: prBody,
|
||||
draft: prDraft !== undefined,
|
||||
...github.context.repo,
|
||||
});
|
||||
|
||||
@@ -386,12 +389,46 @@ export async function runVersion({
|
||||
const [pullRequest] = existingPullRequests.data;
|
||||
|
||||
core.info(`updating found pull request #${pullRequest.number}`);
|
||||
await octokit.rest.pulls.update({
|
||||
pull_number: pullRequest.number,
|
||||
const convertPullRequestToDraftMutation =
|
||||
prDraft === "always"
|
||||
? `
|
||||
convertPullRequestToDraft(
|
||||
input: {
|
||||
pullRequestId: $pullRequestId
|
||||
}
|
||||
) {
|
||||
pullRequest {
|
||||
id
|
||||
}
|
||||
}`
|
||||
: "";
|
||||
const updatePullRequestMutation = `
|
||||
mutation UpdatePullRequest(
|
||||
$pullRequestId: ID!
|
||||
$title: String!
|
||||
$body: String!
|
||||
) {
|
||||
${convertPullRequestToDraftMutation}
|
||||
|
||||
updatePullRequest(
|
||||
input: {
|
||||
pullRequestId: $pullRequestId
|
||||
title: $title
|
||||
body: $body
|
||||
state: OPEN
|
||||
}
|
||||
) {
|
||||
pullRequest {
|
||||
id
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
|
||||
await octokit.graphql(updatePullRequestMutation, {
|
||||
pullRequestId: pullRequest.node_id,
|
||||
title: finalPrTitle,
|
||||
body: prBody,
|
||||
...github.context.repo,
|
||||
state: "open",
|
||||
});
|
||||
|
||||
return {
|
||||
|
||||
Reference in New Issue
Block a user