coderobe / expirobot

πŸ—οΈπŸ’¬ GPG key expiry notifications via Matrix

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

expirobot

A bot that monitors GPG key expiry via matrix notifications
Expiry notifications are currently sent via Matrix
The bot will send notifications daily once any key or subkey has fewer than 30 days of validity left.

A JSON status endpoint is also exposed via HTTP at :9292
Provided endpoints:

  • / - Overall status
  • /<key fingerprint> - Status of specific key fp (must be a key present in config.yml)

Status

Basic functionality (scheduled checks, http json api, matrix notifications) should be working.

Roadmap:

  • HTTP endpoint
  • Matrix messages
  • Pull keys and subkeys from keyserver
  • Scheduled expiry checks
  • Configurable notification interval
  • Proper test coverage

Installation / Usage / Development

Clone the git repo, instantiate the bundle, configure and launch the server

git clone https://github.com/coderobe/expirobot
cd expirobot
bundle install --path=vendor
cp config.yml.example config.yml

# Configure
nano config.yml

bundle exec rackup

Docker

Build the image:

docker build -t expirobot:latest .

Create a configuration file:

cp config.yml.example config.yml
nano config.yml

Run the container, mounting your config inside:

docker run -v $PWD/config.yml:/app/config.yml --name expirobot expirobot:latest

License

This project, initially authored by coderobe, is licensed under the terms of the GNU GPL version 3 or above.
A copy of the license text is available in LICENSE

About

πŸ—οΈπŸ’¬ GPG key expiry notifications via Matrix


Languages

Language:Ruby 96.3%Language:Dockerfile 3.7%