Trello card checker which checks whether your employees are following the card standards or not.
- Your employee creates Trello card.
- CardChecker gets the action on webhook.
- CardChecker validates the card against the standard rules
- If card lack to fit in rules, it sends notification on the Slack/Teams/Flock channel. Isn't that cool?😎
-
Setting incoming webhook URL. You can choose between Slack, Teams, Flock to publish notifications regarding CardChecker.
- If you are using, Slack as messaging tool, Get the Slack incoming webhook for public channel and set to SLACK_WEBOOK_URL environment variable.
- If you are using, Microsoft Teams as messaging tool, Get the Teams incoming webhook for public channel and set to TEAMS_WEBOOK_URL environment variable.
- If you are using, Flock as messaging tool, Get the Flock incoming webhook for public channel and set to FLOCK_WEBOOK_URL environment variable.
-
Get Trello token and app-key and set it to TRELLO_TOKEN and TRELLO_KEY environment variables.
- Trello app key reference = https://trello.com/app-key
- You can get Trello token for your personal account here = https://trello.com/app-key
- Note:
- If you have organization and wants to monitor all boards, whose you are not a member of, then it is recommended that you create a separate user for the app on Trello and add that user to all of your company's board as the app only support single user token for Trello. Then get the app token and key for that user from Trello and use it for API calls.
- Set the URL of the app to TRELLO_CALLBACK_URL environment variable.
- Set the MongoDB URL to DB_URI environment variable.
- Get the id of your Trello boards using the following endpoint
curl 'https://api.trello.com/1/members/me/boards?key={yourKey}&token={yourToken}'
- Subscribe the webhook to Trello board using our configuration API described below
Everyone has their own unique development flow. Keeping this mind, CardChecker provides multiple ways to customize their development pipeline and adjust filters.
- Pipeline Config file
- This config file allows a user to configure the pipeline and filters. App already has
default_pipeline_config.json
under config directory, which describe default behavior of the app. You can override this file by creating a new filepipeline_config.json
under same directory. CardChecker will append specified configurations on defaults so you don't have to specify all in your file. To know more about the format of the config file, please refer,config/default_pipeline_config.json
.
- CardChecker uses Trello API to fetch card and validate it. To set your app as webhook for Trello, CardChecker provide useful API.
- POST /configure/subscribe/trello/webhook
- To subscribe app URL as webhook for Trello. Trello sends events for every operation on their platform, to this webhook.
- Params
- description - To identify the trello webhook
- idModel - Id of trello board.
- POST /configure/subscribe/trello/webhook
CardChecker comes with predefined rules to validate your cards. Most of these rules are configurable through pipeline_config.yml
file. Below is the list of currently available rules. It also specifies keys which you can specify in pipeline_config.yml
file to alter the behavior of rule.
-
Check word count in the title of a card.
- min - Configure the minimum number of words required in a title.
- Check whether the title of a card is titleized or not.
- Check whether description is provided or not in card.
- Checks whether due date is set to a card or not.
- Check whether due date is marked as complete or not.
-
Check whether a card has the minimum number of labels attached to it or not.
- min - Minimum number of words required in a title.
-
Check whether a card has been assigned to the specified number of employees or not.
- min - Minimum number of members to which card should be assigned.
-
Checklist of the newly created card. A card should always be created in the first list of a pipeline.
- listName - Trello board list name which acts as an entry point of a pipeline.
- Check whether all the checklist items are marked as complete or not.
-
Check word count in the name of checklist item of a card.
- min - Configure the minimum number of words required in a name of checklist item.
-
Check whether pull request is attached to card as attachment or not. There are some cases, where you have a card in development which don't require to do, any coding or it don't have any pull request. So in that case, you can skip pull request check using labels. You can configure which labels you want to skip and depending on that, CardChecker will decide whether to check pull request or not.
- vcHostingDomain - Version control hosting service domain name.
- ignoreLabel - Name of label on card, which if present, you want to skip pull request check.