Do you even Agile? Because Dougal here is an opinionated project management helper for people using Trello and (optionally) Slack. Superb!
Dougal helps you by generating Trello TODO/DOING/DONE/ABANDONED lists as a convenient text summary. It can post them to Slack too. You could set up a cron job to post a fresh project status each day during your standup call. Champion!
- Ensure Ruby is on your system (verify by running
ruby -v
) gem install dougal
# once it's on rubygems.- Run
dougal
. Dougal will generate a config file for you to edit, if not already present. - Edit the config file and run
dougal report
again to generate the report.
Installing via Docker can be simpler and less headaches with conflicts and compilation.
- Ensure Docker is on your system.
- Run
docker build -t dougal https://github.com/playerfm/dougal.git
. - Run
(mkdir -p ~/.config && docker run --mount=target=/root/.config,type=bind,source=$HOME/.config dougal)
. Dougal will generate a config file (on your host system) for you to edit, if not already present. - Open the config file and run the above command, appending
report
(i.e.,... -it dougal)
to generate the report.
For each project, you'll specify a trello_board
indicating the URL of the board which the report is sourced from. Further project options are:
slack_channel
: The Slack channel, if you want to post the message to Slack. Otherwise, it will be output on stdout.members
: Atrue
orfalse
preference indicating if the report is to be split into a separate list per member (default false).
- Ensuring you're logged into Trello, get your Trello API key here and add it to the Dougal config file.
- Visit the "Token" link shown just below the key. Approve the request on the following page and your token will be shown. Put the token in the Dougal config file as trello_oauth_token.
Dougal will scan all cards in lists titled as TODO
DOING
, DONE
, and ABANDONED
. These names can appear anywhere in the title and any uppercase/lowercase combination (e.g. "TODO (Jane)", "Abandoned (not needed)") You don't need to have all these lists if you don't want to. You can also have more than one list, e.g. "TODO (Urgent)", "TODO (Soon)". Marvellous!
- Create a new Slack project here
- From the side menu, visit "Oauth & Permissions"
- In "Select Permission Scopes", add "chat:write:bot" and save changes
- From top of the page, click "Install App to Workspace"
- Approve the request on the following page your token will be shown. Put the token in the Dougal config file as slack_oauth_token.
After checking out the repo, run bin/setup
to install dependencies. Then, run rake test
to run the tests (no custom tests yet!). You can also run bin/console
for an interactive prompt that will allow you to experiment. Stellar!
To install this gem onto your local machine, run bundle exec rake install
. To release a new version, update the version number in version.rb
, and then run bundle exec rake release
, which will create a git tag for the version, push git commits and tags, and push the .gem
file to rubygems.org. Awesome!
Bug reports and pull requests are welcome on GitHub at https://github.com/playerfm/dougal. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct. Rad!
- Testing (based on public Trello and Slack instances)
- Durations per status (based on estimates in Trello card)
- Changes (indicate new and moved tasks in past day, new tasks since after sprint began)
The gem is available as open source under the terms of the MIT License. Deluxe!
Everyone interacting in the Dougal project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct. Solid!