A Slack bot that assigns tasks round-robin.
You could use Robin to:
- Assign someone to update a library when a new release happens.
- Assign someone to do an ad-hoc task.
- Assign someone to review a pull request.
- Determine who is going first in standup today.
Robin works by:
- Exposing a webhook for creating tasks.
- Tasks are created against lists. Each time a task is created it gets assigned round-robin to users on that list.
- The assigned user can accept, reassign, or archive the task.
- There can be many lists. Each list has a name, users, and posts messages to a channel.
We recommend using Zapier as an intermediary for services which don't expose webhooks as first class citizens.
Create a new task via the webhook:
$ curl -X POST \
-d 'description=You should do this thing!' \
'https://example.com/lists/:webhook_token/tasks'
- Ruby 2.7.4
- Postgres 10
- direnv (optional, recommended)
Before doing this you should have read the Configuration section regarding the .envrc.example
file. It also recommended that you're using direnv
.
Copy the extra environment file.
$ cp .envrc.docker{.example,}
Start the services.
$ docker-compose up -d
See .envrc.example for the expected environment variables. The example values have been used for testing.
$ bin/setup
$ bin/rails server -p 3000
$ bin/rspec
This application is automatically deployed when commits are pushed to the master branch and the tests on the master branch pass.
Copyright (c) 2017-18 Five.Good.Friends. Pty Ltd. All rights reserved. Licensed under the MIT license.