a functional stale bot for Github Issue and PRs.
GPL-3.0 License
Doghub monitors stale Issues and Pull Requests for your different Github projects in a private and centralized manner. You can use doghub for both your personal and professional projects.
Allows maintainers to be independent without the need for an external service in their repo (instead you can use a token and manage the daemon yourself on your server)
Offers full centralized control over your project(s)
Doghub will comment on stale Issues and PRs. You can configure a limit for the number of days a PR or an issue can remain inactive on the repo. (At present, this is the only feature in doghub. In the future, there is a plan to support a custom handler, which will let the user decide to apply a specific action for stale issues (e.g., close, comment, label etc.))
Doghub can work either with a list of repositories or a list of organisations. (An organisation can own multiple repositories, while a repository relates to one project)
doghub.edn
file:{
:github-config {
:token "my-token"
}
:repositories ["MalloZup/missile", "MalloZup/doghub"]
;; the list of Github repositories that you want monitored in terms of stale Issues and PRs
:issue-days 130
;; the number of days that an issue can remain inactive
:prs-days 2
;; the number of days for Pull-requests to remain unactioned. PRs older than this will require action.
;; by default doghub will create a comment on the issue or PR. You can customize the prefix message.
:prefix-msg "autogenerated with https://github.com/MalloZup/doghub: "
;; the message is composed of prefix-msg + std-msg. std-msg will be " the PR/issue is older than 'x'(10) days.
;; the bot will just update the comments. RATE-LIMITING will be logged in case requests exceed a specified limit.
}
Instead of a list of repositories you can also use a list of organisations (see the doghub.edn.example
config file).
java -jar doghub-VERSION-standalone.jar
The configuration file should be in the same dir where you start the daemon. Otherwise use the ENV variable CONFIG_FILE_PATH
to setup a config file from another location.
If you use doghub, feel free to add a PR of your project!