preminder is a Rust program that creates reminders about Github pull requests.
Configuration is done via JSON/YAML/TOML. A sample YAML configuration file could look like this:
github:
token: secret!
host: github.organization.org
subjects:
- user1
- user2
recent: 6h
stale: 12h
outputs:
- type: stdout
disable: trueEvery output has an optional disable boolean option to disable the output.
The stdout output takes no configuration.
hipchat output configuration options:
url- address to Hipchat instanceroom- room number to send messages totoken- API token with at least a scope ofsend_notificationfrom- optional string to include next to the usernamecolour- optional colour to use as message backgroundnotify- optional whether or not a desktop notification should be triggeredtemplate- optional custom Handlebars template to format the messagemax_results- optional limit results for each of the three lists
Template variables:
now- current time (in the following format:Jan 12, 8:52pm)recent_period- human-friendly formatting of therecentoptionstale_period- human-friendly formatting of thestaleoptionnum_total- total open PRsnum_opened- number of PRs recently openednum_updated- number of PRs recently updatednum_stale- number of old PRsopened- list of recently opened PRsupdated- list of recently updated PRsstale- list of old PRs
The structure of a PR object, as found in the opened, updated, or stale
lists can be found in src/types.rs.
email output configuration options:
smtp_server- address of the SMTP server to use for sending emailssmtp_port- optional port of the SMTP server (default:25)smtp_username- optional SMTP usernamesmtp_password- optional SMTP passwordfrom_address- email address to use in thefrom:fieldfrom_name- optional name to use in thefrom:fieldto_address- email address to send reminder tosubject_template- optional custom Handlebars template to format the email's subjectbody_template- optional custom Handlebars template to format the email's body
Note: subject_template and body_template use the same variables as
described in the Hipchat output.
preminder is licensed under the MIT license. Please see the LICENSE file for
more details.