Arsenio: always in search of the Beauty and minimalistic design. Golang bot for GitHub opensource projects.
History: when you work on middle-big project people create issues and PRs but then after a while people do something else or they simply forget about the issue or PR for some reason.
Arsenio will be a gentle golang bot, providing utilty to maintainers to opensource projects, for respecting roadmaps, milestones and timing.
Arsenio is under active dev. see https://github.com/MalloZup/arsenio/milestones
go get -u github.com/MalloZup/arsenio
GitHub GraphQL API v4 requires authentication.
- create a token via GitHub.
- Put the token in
.arsenio.yml
configuration fil
GITHUB_TOKEN: mytokenGithub
- test it with running commands ( this might change in future)
./arsenio ping
For the first version, the goal is to ping the authors of PRs/ISSUe with a message on the issue/PR they forgot since XX months. (default could be 2 months).
Further versions can include remind on issues that were due to a previous milestone. ( this can be usefull for Release Manager or Scrum-master, or any project working with GitHub milestone/scrums).
Implement:
arsenio ping -c repos.yml
Description:
- given a list of github Repos, find out issues/pr older then X Months, when true ping authors with a template comment on the PR/ISSUEs
Arsenio use the GitHub GraphQL API v4 (https://developer.github.com/v4/), https://github.com/shurcooL/githubv4. For the command line https://github.com/spf13/cobra and viper.
Project layout: https://github.com/golang-standards/project-layout
This project use go modules, you will need latest golang version.
For any suggestion idea, feel free to open an issue or fix an issue or spend a PR ( at moment project is under dev).