Table of Contents
- Feed CSV - Specify requirements - Check results
- Accepts a CSV of with names of projects and Repo links
- Outputs CSV specifing if a project satisfies the required dependency
- Create PR to upgrade the dependency
- Single flag to create pull requests to upgrade the dependency on required Repos
- Adds a column with pull request links to the Output CSV
-
You're required to install
nodeJS
andnpm
to run the app, follow this link to installation. -
You will also need to clone the repository follow this link to install git
-
You will also need a personal access token from your github account, instructions. Make sure you have the following permissions checked :
- repo
- repo:status Access commit status
- repo_deployment Access deployment status
- public_repo Access public repositories
- repo:invite Access repository invitations
- security_events
- admin:org
- write:org
- read:org
- user
- read:user
- user:email
- user:follow
# Clone this repository
$ git clone https://github.com/Dark0017/dependable-bot
# Go into the repository
$ cd dependable-bot
# Install dependencies
$ npm install
# Run the app in the csv directory
$ depend-bot start
Note Checkout CSV Specifications to format your CSV file
-
hi
- Say hi to dependable bot
- To check if bot is working
$ depend-bot hi
-
start
-
Start dependable bot
-
Required flags:
-i
: specify the csv file name-t
: specify your github access token -
Required argument:
<dependency>
: dependency that will be checked, dependency needs to follow the syntax<name>@<version>
such asaxios@0.23.0
$ depend-bot start -u -i data.csv -t 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 grunt@1.5.3
Note Generate your own personal access token for the token flag from github
-
- Dependable bot accepts a CSV with 2 columns
name
andrepo
(case sensitive) name
column contains the name of the projectrepo
column contins the URL to the github repo of the project
A sample of a valid CSV file is given below
name | repo |
---|---|
dark-react-sample-app | https://github.com/dark-in/react-sample-app/ |
dark-js-sample-app | https://github.com/dark-in/javascript-sample-app |
dark-sample-app-backend | https://github.com/dark-in/backend-sample-app |
Sample output CSV
name | repo | version | version_satisfied |
---|---|---|---|
dark-react-sample-app | https://github.com/dark-in/react-sample-app/ | 0.24.0 | true |
dark-js-sample-app | https://github.com/dark-in/javascript-sample-app | 0.21.1 | false |
dark-sample-app-backend | https://github.com/dark-in/backend-sample-app | 0.23.0 | true |
Sample output CSV with update option
Should give an output like:
name | repo | version | version_satisfied | update_pr |
---|---|---|---|---|
dark-react-sample-app | https://github.com/dark-in/react-sample-app/ | 0.24.0 | true | |
dark-js-sample-app | https://github.com/dark-in/javascript-sample-app | 0.21.1 | false | https://github.com/dark-in/javascript-sample-app/pull/3 |
dark-sample-app-backend | https://github.com/dark-in/backend-sample-app | 0.23.0 | true |
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE.txt
for more information.
Ayushman Singh - @Ayushma81703243 - singh.ayush8827@gmail.com