View or edit on GitHub
This page is synchronized from doc/GitHub-Asana-Integration.md. Last modified on 2025-12-09 00:30 CET by Trase Admin.
Please view or edit the original file there; changes should be reflected here after a midnight build (CET time),
or manually triggering it with a GitHub action (link).
GitHub ⇆ Asana Integration
We use both GitHub Issues and Asana Tasks to store and track ongoing issues within Trase. Both have their relative merits:
- Asana is great for organising tasks into projects, for visibility across the whole Trase organisation (since everybody has an account there), and for tracking timelines.
- GitHub is great for more technical discussions where code snippets or pull requests need to be referenced.
The rest of this document concerns points to note about our use of Unito.
What is synchronised
We only synchronise GitHub issues to Asana tasks, and not GitHub Pull Requests. This is because we do not want a closure of an Asana task to cause a closure of the Pull Request, which would result in the pull request being closed but not merged. In Unito this is under the setting Rules > Which work items to sync > Filter issues > Only sync issues of type "issue".
Logging-In
In order to avoid redundant efforts with the two systems, we use Unito to perform a two-way synchronisation between the two systems. To log in to Unito you will require the username (trase-admin@sei.org) and password. If you do not have the password but are able to access trase-admin@sei.org, then you can reset the password.
Project Mapping
In Unito we have one sync configured which synchronises github.com/sei-international/TRASE to the GitHub/TRASE Asana Project. GitHub Issues created in this GitHub Repository will be synced to the Asana Project. Likewise, Asana Tasks created in this Asana Project will be synced to the GitHub Repository.
Field Mappings
You can see which fields are mapped to which in the "Field mappings" section of the Unito sync. For example, GitHub Labels are two-way synced to Asana Tags.
User Mappings
In order to know how to translate assignees and @-style metions, GitHub accounts are mapped to Asana accounts. If a new person joins the team, we may need to update this mapping. Unito has a guide on this titled How to Map Users and Assignees.
Schedule
The sync is on an automatic schedule: we let Unito figure out when the sync should occur.
Mentions
It is useful to have @-style mentions carried over to Asana.
For example, if I reference @csuavet in GitHub, I would like the Asana task to reference @Clement Suavet.
This is achieved by setting {"translateMentions": true} in the More options > Advanced features section of the sync.
However this only works for replies to GitHub Issues, not for the body of the issue itself.
The lack of Unito support for syncing @-style mentions is due to a limitation in the GitHub API; we can only hope they are able to support this in the future.