The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

App::TimeTracker::Command::Trello - App::TimeTracker Trello plugin

VERSION

version 1.001

DESCRIPTION

This plugin takes a lot of hassle out of working with Trello http://trello.com/.

Using the Trello plugin, tracker can fetch the name of a Card and use it as the task's description; generate a nicely named git branch (if you're also using the Git plugin); add the user as a member to the Card; move the card to various lists; and use some hackish extension to the Card name to store the time-worked in the Card.

CONFIGURATION

plugins

Add Trello to the list of plugins.

trello

add a hash named trello, containing the following keys:

key [REQUIRED]

Your Trello Developer Key. Get it from https://trello.com/1/appKey/generate or via tracker setup_trello.

token [REQUIRED]

Your access token. Get it from https://trello.com/1/authorize?key=YOUR_DEV_KEY&name=tracker&expiration=1day&response_type=token&scope=read,write. You maybe want to set a longer expiration timeframe.

You can also get it via tracker setup_trello.

board_id [SORT OF REQUIRED]

The board_id of the board you want to use.

Not stictly necessary, as we use fake ids to identify cards. But if you don't specify the board_id the search for those ids will be global over all your boards, so you would have to make sure to not use the same id more than once in all those boards.

If you specify the board_id, tracker will only search in this board.

You can get the board_id by going to "Share, print and export" in the sidebar menu, click "Export JSON" and then find the id in the toplevel hash. Or run tracker setup_trello.

member_id

Your trello member_id.

Needed for adding you to a Card's list of members. Currently a bit hard to get from trello, so use tracker setup_trello.

update_time_worked

If set, updates the time worked on this task on the Trello Card.

As Trello does not provide time-tracking (yet?), we store the time-worked in some simple markup in the Card name:

  Callibrate FluxCompensator [w:32m]

[w:32m] means that you worked 32 minutes on the task.

NEW COMMANDS

setup_trello

    ~/perl/Your-Project$ tracker setup_trello

This will launch an interactive process that walks you throught the setup.

Depending on your config, you will be pointed to URLs to get your key, token and member_id. You can also set up a board_id. The data will be stored in your global / local config.

You will need a web browser to access the URLs on trello.com.

--token_expiry [1hour, 1day, 30days, never]

Token expiry time when a new token is requested from trello. Defaults to '1day'.

'never' is the most comfortable option, but of course also the most insecure.

Please note that you can always invalidate tokens via trello.com (go to Settings/Applications)

CHANGES TO OTHER COMMANDS

start, continue

--trello

    ~/perl/Your-Project$ tracker start --trello t123

If --trello is set and we can find a matching card:

  • set or append the Card name in the task description ("Rev up FluxCompensator!!")

  • add the Card FakeID to the tasks tags ("trello:t123")

  • if Git is also used, determine a save branch name from the Card name, and change into this branch ("t123_rev_up_fluxcompensator")

  • add member to list of members (if member_id is set in config)

  • move to Doing list (if there is such a list, or another list is defined in list_map in config)

stop

  • If <update_time_worked> is set in config, adds the time worked on this task to the Card.

--move_to

If --move_to is specified and a matching list is found in list_map in config, move the Card to this list.

AUTHOR

Thomas Klausner <domm@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2014 by Thomas Klausner.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.