Package: trellowarrior
TrelloWarriorTool to sync Taskwarrior projects with Trello boards.RequirementsIn TaskwarriorFirst for all you need configure some UDAs in Taskwarrior to store some
Trello data. This is very, very, very important. If you dont have the UDAs
configured before run TrelloWarrior you'll destroy your Taskwarrior tasks
data.To set UDAs in Taskwarrior simply edit.taskrcand add the following
lines.# UDAs
uda.trelloid.type=string
uda.trelloid.label=Trello ID
uda.trellolistname.type=string
uda.trellolistname.label=Trello List NameThe first UDAtrelloidis used to store the Trello Card ID and establish
an equivalence between Trello Cards and Taskwarrior Tasks. Note that you
never, never, never, never, (period), should edit this field.The second UDAtrellolistnameis used to determine the Trello List where
the Card/Task is stored. You can edit this field without problems to move
the task to another list.For TrelloWarriorPrepare the environmentIn Arch LinuxTrelloWarrior is packaged inAUR, to obtain it simply
use your AUR helper. For example withyay:yay -S trellowarriorOr if you prefer a fully binary package you can configureConnectical Arch
Linux repository.The easy waySimply create a Python 3 virtualenv and installvia
pip:python3 -m venv trw
. trw/bin/activate
python3 -m pip install trellowarriorBy handFor run TrelloWarrior you need to installtasklibandpy-trello. TrelloWarrior uses these
Python helpers to comunicate with Taskwarrior and Trello.You can use your package system to install it, but the best way is to use
a Python 3 virtualenv:python3-mvenvtrw
.trw/bin/activate
python3-mpipinstalltasklib
python3-mpipinstallpy-trelloGet the keysTrelloWarrior access to Trello via API. You need generate an access token
for it.First go to:https://trello.com/app-keyto get your API Key and API Secret.Then call TrelloWarrior with the authenticate command:trellowarriorauth--api-keyyour_api_key--api-key-secretyour_api_secret--expiration30days--nameTrelloWarriorNote:--expirationand--nameare optional, they are set by default to30daysandTrelloWarriorrespectively.You can set theTRELLO_EXPIRATIONto1hour,1day,30days,never. We recomend use30daysfor tests andneverfor daily use.This return some like this.Request Token:
    - oauth_token        = 1c5ad394834dde42a7655437ab3e0060
    - oauth_token_secret = dffc3a62622ef450028f685406bceacc

Go to the following link in your browser:
https://trello.com/1/OAuthAuthorizeToken?oauth_token=1c5ad334134dde46a8659437ab3e0069&scope=read,write&expiration=30days&name=trellowarrior
Have you authorized me? (y/n)You must visit the link to authorize the token. This gives you a pin like
this.You have granted access to your Trello information.

To complete the process, please give this verification code:

  17894a35a2f745c3a184cf8e4bb5f1f9Respond yes, and insert the pin.What is the PIN? 17894a35a2f745c3a184cf8e4bb5f1f9
Access Token:
    - oauth_token = 0469c6271416af6eae10123fdae0afc1135e9082bb0b5ba87b2f8a1db9d7f0b1
    - oauth_token_secret = a978b159692cfc315377790669ac99a0

You may now access protected resources using the access tokens above.The config file is now initialized with the needed configuration variables.ConfigurationThe TrelloWarrior config is very easy. There is atrellowarrior.confsample file that you can modify to set with your data.You can place the config file withtrellowarrior, in your home as~/.trellowarrior.confor (by default if not previous config file exists)
following theXDG
Specificationin$XDG_CONFIG_HOME/trellowarrior/trellowarrior.conf(fallbacks to~/.config/trellowarrior/trellowarrior.conf), or set the configuration file
path with-cor--configargument.To synchronize Trello and Taskwarrior, simply call TrelloWarrior with the
sync command or without any command.trellowarriorsyncYou can also add a list of project(s) to synchronize:trellowarriorsyncproject1project2DEFAULT SectionIn theDEFAULTsection, it is mandatory to set your Trello API key and
token and, at least, one sync project.
The sync project corresponds to the following sections
that define the Taskwarrior project and Trello board equivalence.taskwarrior_taskrc_locationOptional. Define where yourtaskrcfile is located. Default:~/.taskrctaskwarrior_data_locationOptional. Define where yourtaskdata dir is located. Default:~/.tasktrello_api_keyMANDATORY. Your Trello Api Key.trello_api_secretMANDATORY. Your Trello Api Secret.trello_tokenMANDATORY. Your Trello Token.trello_token_secretMANDATORY. Your Trello Token Secret.sync_projectsMANDATORY. Define what sections are loaded, separated by spaces.Project/Board SectionsThe Project/Board sections are called fromsync_projectsand define the
equivalence between Taskwarrior and Trello.taskwarrior_project_nameMANDATORY. The name of project in Taskwarrior.trello_board_nameMANDATORY. The name of Trello Board.trello_todo_listOptional. The name of Trello list where new pending tasks are stored. Default:To Dotrello_doing_listOptional. The name of Trello list for active tasks. Default:Doingtrello_done_listOptional. The name of Trello list for done taks. Default:Donetrello_lists_filterOptional. To filter Trello lists from syncing.only_my_cardsOptional. Sync ony cards / tasks assigned to me.EquivalencesTaskwarriorTrelloUDA: trelloidCard IDUDA: trellolistnameList NameProjectBoard NameDescriptionCard NameDueCard Due DateTagsCard LabelsAnnotation: [Trello URL]Card URLAnnotation: [Trello Description]Card DescriptionKnown limitationsThe main objective of TrelloWarrior is to be simple so itdoesn't manage
collisions. The sync strategy islast modified wins, this means that if
you do a modification in Trello and later a modification in Taskwarrior,
TrelloWarrior does the sync and keeps the Taskwarrior data, because it is
the last touched.You can have infinite lists in your Trello, but all of them are considered
aspending. You only can have onedoinglist and onedonelist, but
these lists can be configured.If you have several boards with same name or several labels with same name,
TrelloWarrior always picks the first one.Only Trello labels with names are synchronized, you can apply labels without
name but these are ignored.If you remove a name from a label and left it without name, the action don't
touch date of cards and in next sync a new label will be created with the
removed name. You can rename labels without problems.New labels are created by TrelloWarrior in black color.If you modifyCard URLorCard Descriptionin Trello, the old annotation
will be deleted and replaced by a new one.If you want to delete adue dateyou must do it in both Taskwarrior and
Trello.For now, only syncsTitle/Description,Due dates,Labels,Card URL,Card DescriptionandStatus.ContributingSeeCONTRIBUTING.LicenseThis software is licensed under the terms of the GNU General Public License
version 3 (GPLv3).Full text of the license is available in theLICENSEfile andonline.