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)
- Create
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).
- Start the daemon:
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!