Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

proposal: Add action to turn PR into Draft and vice-versa #436

Closed
Andre601 opened this issue May 22, 2021 · 6 comments · Fixed by #485
Closed

proposal: Add action to turn PR into Draft and vice-versa #436

Andre601 opened this issue May 22, 2021 · 6 comments · Fixed by #485
Assignees
Labels
documentation Improvements or additions to documentation enhancement New feature or request proposal
Milestone

Comments

@Andre601
Copy link
Contributor

Is your feature request related to a problem? Please describe.
N/A

Describe the solution you'd like
There should be additional actions to turn a PR into a Draft or turn a Draft into a PR.
Perhaps the open action could be re-used here to do draft -> PR?

Describe alternatives you've considered
Doing it manually... obviously.

Additional context
We have a specific setup for PRs in a repository, where a PR is a draft until it's ready for review and merge in which case it will receive a Status: Ready label, where the comment action comments about this change.
Having a way to directly change the PRs draft-status on (un)label would allow us to remove one extra step (Lazyness for the win!)

@github-actions
Copy link
Contributor

Hi, there.

Thank you @Andre601 for suggesting this.


This is an automated comment created by the peaceiris/actions-label-commenter. Responding to the bot or mentioning it won't have any effect.

@peaceiris peaceiris added the enhancement New feature or request label May 24, 2021
@peaceiris
Copy link
Owner

Unfortunately, the latest GitHub REST API v3 and client seem not to have the capability to change the status of draft.
cf. plugin-rest-endpoint-methods.js/update.md at v5.3.1 · octokit/plugin-rest-endpoint-methods.js

@peaceiris
Copy link
Owner

I have opened the request. octokit/rest.js#69

@peaceiris peaceiris added the documentation Improvements or additions to documentation label Jun 18, 2021
@github-actions
Copy link
Contributor

Hi, there.

Thank you for suggesting documentation improvement.


This is an automated comment created by the peaceiris/actions-label-commenter. Responding to the bot or mentioning it won't have any effect.

@peaceiris peaceiris added this to the v1 milestone Jul 31, 2021
@peaceiris peaceiris pinned this issue Aug 9, 2021
@peaceiris
Copy link
Owner

@Andre601 Could you test the pull-request #485? For the details, see my comment on it.

peaceiris added a commit that referenced this issue Aug 11, 2021
Close #436

## Overview

My proposal about a REST API to toggle pull-request draft status ([pulls.update: Change pull-request draft status · Issue #69 · octokit/rest.js](octokit/rest.js#69)) has been rejected since the GitHub API v4 (GraphQL API) has the ability to do that.

Unfortunately, an auto-generated access token called `GITHUB_TOKEN` seems not to have full control permission of the GraphQL API. We got the error `Resource not accessible by integration` with the GitHub API v4 and `GITHUB_TOKEN`. This problem may be related to the following thread.

- [API v4 - Unable to Retrieve Email - Resource not accessible by integration - GitHub Ecosystem - GitHub Support Community](https://github.community/t/api-v4-unable-to-retrieve-email-resource-not-accessible-by-integration/13831/3)

This pull-request uses a personal access token with a `public_repo` scope (for a public repository) as a workaround.

## References

- [convertPullRequestToDraft - Mutations - GitHub Docs](https://docs.github.com/en/graphql/reference/mutations#convertpullrequesttodraft)
- [markPullRequestReadyForReview - Mutations - GitHub Docs](https://docs.github.com/en/graphql/reference/mutations#markpullrequestreadyforreview)
- https://github.com/actions/toolkit/blob/%40actions/tool-cache%401.1.1/packages/github/README.md?plain=1#L32
	- [octokit/graphql.js: GitHub GraphQL API client for browsers and Node](https://github.com/octokit/graphql.js)
	- [octokit/graphql-schema: GitHub’s GraphQL Schema with validation. Automatically updated.](https://github.com/octokit/graphql-schema)
@peaceiris peaceiris modified the milestones: v1.11.0, v2.0.0 Aug 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request proposal
Projects
None yet
2 participants