cdamian / plus-pull
Script to merge Github pull requests, which have enough +1 votes
Installs: 13 903
Dependents: 0
Suggesters: 0
Security: 0
Stars: 13
Watchers: 3
Forks: 4
Open Issues: 0
Requires
Requires (Dev)
- dev-master
- v0.8.1
- v0.8.0
- v0.7.0
- v0.6.4
- v0.6.3
- v0.6.2
- v0.6.1
- v0.6.0
- v0.5.13
- v0.5.12
- v0.5.11
- v0.5.10
- v0.5.9
- v0.5.8
- v0.5.7
- v0.5.6
- v0.5.5
- v0.5.4
- v0.5.3
- v0.5.2
- v0.5.1
- v0.5.0
- v0.4.0
- v0.3.0
- v0.2.0
- v0.1.0
- dev-fix-yaml-read
- dev-fix-wait
- dev-dockerfile
- dev-dependency-upgrades
- dev-add-grace-period
- dev-allow-different-merge-modes
- dev-disable-label-removal
- dev-check-review-comments
- dev-fix-multiple-statuses
- dev-allow-leading-whitespace
This package is auto-updated.
Last update: 2025-02-24 03:01:34 UTC
README
plus-pull
Simple script that checks pull requests on a repository on Github and pulls them if they satisfy certain requirements.
By default these requirements are:
- the sum of +1 and -1 is at least 3
- there are no [B] blocker comments
- the request is mergeable
- (optionally) all build statuses are OK
Install
composer.phar create-project cdamian/plus-pull
Command Line Usage
Check pull requests:
check [-p|--pull] [-l|--limit="..."] [config-file]
Arguments:
config-file Path of the yaml configuration file (default: "config.yml")
Options:
--pull (-p) Pull the request if all conditions are met
--limit (-l) Maximum numbers of pull (default: 1)
Create a new github authorization token:
token:create [--note="..."]
Options:
--note Note for the authorization token on github (default: "plus-push")
Configuration File
With the config file you can set the github authorization username and password or an github authorizisation token.
The other section sets the repository owner and name and you can change the defaults for needed votes, if status will be checked and voter whitelist.
You have also the option to automatically add labels for keywords found in the comments. In the example below we will add the label 'blocked' with the given color if we see '[B]' in one of the comments. The label will be created if it doesn't exist.
authorization: username: christofdamian password: secret token: githubtoken repositories: - username: christofdamian name: test status: true required: 3 whitelist: [ christofdamian ] wait: 300 mergemode: merge labels: - name: blocked color: eb6420 hook: '[B]'
Credits
We are using a similar script at work, which was started by @adriacidre . This is a complete rewrite though to make it easier to add further features.
Label support by @ifosch