Skip to content

MalloZup/doghub

Repository files navigation

doghub

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.

Table of Contents

Why use doghub?

  • 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)

Main features:

  1. 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.))

  2. 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)

Quickstart

  1. Createdoghub.ednfile:
{

: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 /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 thedoghub.edn.exampleconfig file).

  1. 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 variableCONFIG_FILE_PATHto setup a config file from another location.

If you use doghub, feel free to add a PR of your project!