Giter Site home page Giter Site logo

aayushchugh / repository-commander Goto Github PK

View Code? Open in Web Editor NEW
5.0 0.0 2.0 1.33 MB

repository commander is a Github app that lets you automate your basic tasks by automatically adding labels to your pull requests and using `/slash` commands in your comments to do some nice stuff like approving and merging pull requests. developed by @aayushchugh for shriproperty

Home Page: https://github.com/marketplace/shriproperty-bot

License: ISC License

Shell 1.19% TypeScript 98.81%
bot probot github javascript nodejs hacktoberfest

repository-commander's Introduction

logo

Repository Commander

A Github app that lets you automate your basic tasks by automatically adding labels to your pull requests and using / commands in your comments to do some nice stuff like approving and merging pull requests.

Codacy Badge Deploy server

Features

  • Automatically add labels to pull requests eg:- Approved, Merged
  • / commands can be used in comments eg:- /approve, /merge, /label documentation
  • Bot will react with ๐Ÿš€ emoji when a command is found in comment
  • When a new issue is created and body is less than 20 characters than bot will ask for more information
  • After user edits the body and adds the required information bot will remove the needs more information label

Demo

Automatically adding labels

  • When a issue is closed by user and it contains some keyword labels than these labels will be automatically added

    • bug - fixed
    • enhancement - implemented
    • feature - implemented

If these labels are not present in the repo than bot will create them automatically with random color

  • Ready for Review (pull_request)

    Ready for Review

  • Approved (pull_request)

    Approved

  • Merged (pull_request)

    Merged

Ask for more information

  • When a new issue is created and body is less than 20 characters than bot will ask for more information

    needs more information

  • After user edits the body and adds the required information bot will remove the needs more information label

    remove needs more information

/ command

Contributing

If you have suggestions for how shriproperty could be improved, or want to report a bug, open an issue! We'd love all and any contributions.

For more, check out the Contributing Guide.

Run Locally

You need to clone the server first and start it

Clone the project

  git clone [email protected]:shriproperty/bot.git

Go to the project directory

  cd bot

Install dependencies

    yarn

Start the server

    yarn start

For further assistance checkout probot docs

Feedback

If you have any feedback, please create a issue or reach out to us at [email protected], [email protected]

Support

For support, please create a issue or reach out to us at [email protected], [email protected]

License

ISC ยฉ 2022 Ayush Chugh

Authors

repository-commander's People

Contributors

aayushchugh avatar mend-bolt-for-github[bot] avatar renovate[bot] avatar semantic-release-bot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

repository-commander's Issues

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Rate-Limited

These updates are currently rate-limited. Click on a checkbox below to force their creation now.

  • fix(deps): update dependency body-parser to v1.20.2
  • chore(deps): update dependency @octokit/webhooks-types to v6.11.0
  • chore(deps): update dependency eslint-config-prettier to v8.8.0
  • chore(deps): update dependency eslint-plugin-import to v2.27.5
  • chore(deps): update dependency nock to v13.3.1
  • fix(deps): update dependency probot to v12.3.1
  • chore(deps): update dependency typescript to v5
  • chore(deps): update octokit monorepo (major) (@octokit/types, @octokit/webhooks-types)
  • chore(deps): update semantic-release monorepo (major) (@semantic-release/github, @semantic-release/npm, @semantic-release/release-notes-generator, semantic-release)
  • ๐Ÿ” Create all rate-limited PRs at once ๐Ÿ”

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

github-actions
.github/workflows/auto-add-issue-to-project.yml
.github/workflows/auto-add-pull-request-to-project.yml
.github/workflows/deploy.yml
  • actions/checkout v3
  • actions/setup-node v3
  • actions/setup-node v3
npm
package.json
  • @types/node 18.7.15
  • @types/randomcolor 0.5.6
  • body-parser 1.20.1
  • bottleneck 2.19.5
  • probot 12.2.8
  • randomcolor 0.6.2
  • @octokit/types 7.5.1
  • @octokit/webhooks-types 6.4.0
  • @semantic-release/changelog 6.0.1
  • @semantic-release/git 10.0.1
  • @semantic-release/github 8.0.6
  • @semantic-release/npm 9.0.1
  • @semantic-release/release-notes-generator 10.0.3
  • eslint 8.24.0
  • eslint-config-google 0.14.0
  • eslint-config-prettier 8.5.0
  • eslint-import-resolver-typescript 3.5.1
  • eslint-plugin-import 2.26.0
  • eslint-plugin-jsonc 2.4.0
  • eslint-plugin-no-secrets 0.8.9
  • eslint-plugin-no-unsanitized 4.0.1
  • eslint-plugin-node 11.1.0
  • eslint-plugin-pii 1.0.2
  • eslint-plugin-prettier 4.2.1
  • eslint-plugin-sonarjs 0.15.0
  • jest 29.1.2
  • nock 13.2.9
  • semantic-release 19.0.5
  • smee-client 1.2.3
  • typescript 4.8.4
  • node >= 10.13.0

  • Check this box to trigger a request for Renovate to run again on this repository

[BUG] :bug: If pull request is a draft than `Ready for Review` label should not be added

Current Behaviour

When a draft pull request is created Ready for Review label is added to the pull request

Expected Behaviour

Ready for Review label should only be added if pr is not a draft
and if someone converts pr to draft than Ready for Review label should be removed

Steps To Reproduce

  1. Create a new pull request
  2. Make it a draft
  3. Label is present there

Anything else?

No response

[Question] Command to enable the "merge button"?

Current Behaviour

Hi @shriproperty,

I was wondering if there is a way to disable the merge button when all checks have passed. Only an admin from the repo can press the button after running a command like:

/merge enabled

Expected Behaviour

Block merge button until command is provided

Steps To Reproduce

No response

Anything else?

I know the WIP label can be used along another github action to block a PR, but the contributor can edit labels in the repository if they have WRITE access

[BUG] :bug: We can't use emojis while using `/label` command

Current Behaviour

when we use /label command and use label in that its not working

/label ๐Ÿ› bug

this command will add 2 labels one will be bug and other will be ๐Ÿ›

Expected Behaviour

instead of creating 2 lables it should only add one label

we can change command from /label ๐Ÿ› bug to /label "๐Ÿ› bug"

and split the labels with " " instead of space

Steps To Reproduce

  1. Create new issue
  2. Use /label ๐Ÿ› bug command
  3. See 2 labels getting added

Anything else?

No response

[BUG] :bug: `/WIP` command do not remove :construction: from title but adds one more

Current Behaviour

When we use /WIP command it will add ๐Ÿšง to title
than again when we use /WIP command it will add another :construction: emoji

Expected Behaviour

Instead of adding another emoji it should remove the existing one

Steps To Reproduce

  1. Create new issue
  2. use /WIP command
  3. again use /WIP command
  4. See that title contains 2 `:construction: emoji

Anything else?

image

Commands to work on

In progress

  • label
  • close
  • merge
  • approve
  • Auto add label on new issues based on their body and title
  • Add labels to pull request based on their staus eg:- ready for review, merged, etc
  • Add label to issues after they are closed eg:- if issue contain bug label than add 'fiexed' label
  • Add work in progress label on pull request with WIP title
  • /WIP command add work in progress label
  • /done command remove work in progress label
  • while running merge remove WIP label

Backlog

  • /help command - list all commands
  • Convert pull request to Draft if WIP

[BUG] :bug: `Closed` label should be removed when pr is reopened

Current Behaviour

when a pr is closed Closed label is added to that pr
but if it is reopened than closed label is not removed

Expected Behaviour

closed label should be removed and Ready for Review label should be added

Steps To Reproduce

  1. Create a new PR
  2. Close that PR
  3. Reopen that PR

Anything else?

image

[BUG] :bug: `Ready for Review` label is not removed when pr is merged

Current Behaviour

Ready for Review label is not removed when pr is directly merged without any approval

Expected Behaviour

label should be removed and only than merged label should be added

Steps To Reproduce

  1. Create new PR
  2. Merge it without approval
  3. See that Ready for Review is not removed

Anything else?

image
image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.