status-im / status-github-bot

A bot for github
https://status-github-bot.herokuapp.com/
ISC License
11 stars 12 forks source link

Implement script to automate management of PR checklists #27

Closed pedropombeiro closed 6 years ago

pedropombeiro commented 6 years ago

User Story

As a developer, I want to be sure that I follow the guidelines for contributions. An easy way to achieve that is for the bot to automatically post a checklist to any new PRs, and only allow merging the PR when the checkboxes in the checklist are all checked.

Description

Whenever a PR is created, Probot could look at the target repo and try to retrieve for a checklist definition (could be located in the .github/github-bot.yml config file). If one is found, it would post a comment to the PR with the checklist. It would then need to monitor PR comment changes to update the PR state according to the state of the checklist (similar to what the WIP plugin is already doing).

Documentation for the bot is available in the wiki, and several existing scripts already exist in the repo that can serve as reference/inspiration.

status-open-bounty commented 6 years ago

Balance: 0 ETH Tokens: SNT: 5000.00 Contract address: 0x50f7bcd049a0edc2212b3598e6e6ab8fdfb54aa1 Network: Mainnet Paid to: virneo Visit https://openbounty.status.im to learn more.

virneo commented 6 years ago

I am working on bot PRChecklist.

realphi commented 6 years ago

How bot should verify conditions are met for check list items to mark them as complete? Will a comment like 'item done' suffice or something else?

pedropombeiro commented 6 years ago

The checklist will be composed of markdown checklist items (- [ ]) which the PR reviewer will just click as they execute the respective task.

virneo commented 6 years ago

https://github.com/virneo/prchecklist this is the repo, it is still a work in progress. Implemented checklist as comment, and set mergeable status based on if all the checklist items are checked.

GitHub
virneo/prchecklist
prchecklist - Prbot bot to add a checklist of tasks on PRs
virneo commented 6 years ago

The app is ready now, Merging to status-github-bot

pedropombeiro commented 6 years ago

Hi @virneo, that's great news! I'm currently on vacation, but will take a look at it as soon as I get back in a couple of weeks. Thanks for working on this!

virneo commented 6 years ago

https://github.com/status-im/status-github-bot/pull/28 I have a question regarding the probot version in this app. Where shall I redirect my question?

pedropombeiro commented 6 years ago

I'm the only one currently working on this repo. I can try to answer your questions, I just can't guarantee a quick answer.

virneo commented 6 years ago

I updated the probot version to 6.2 in order to get support for github checksuite api. The app showed no problems with this update except a warning regarding response.meta renamed to response.header

virneo commented 6 years ago

Nevermind, reverted the version back to probot 5.0 since I am not using checks api anymore.

pablanopete commented 6 years ago

This bounty has been confirmed, sorry for the long hold out!

virneo commented 6 years ago

Thanks, happy to take another issue.