I figured this out: Yes, the Asana importer is available in self-hosted instances.
However, it is a bit tricky to set it up.
Step 1: Register your instance as an app in Asana
- Open the “My apps” view in Asana.
- Direct link: https://app.asana.com/0/my-apps
- Step by step: Log in, click on your profile picture, choose “My Settings…”, go to “Apps”, click on “Manage Developer Apps”
- Click “Create a new app”.
- Enter a descriptive “App name”. Asana will display this name on the authorization screen to all users who want to import projects from Asana, so choose something end-user-friendly.
- Choose if you want to subscribe to the newsletter, agree to the terms and conditions and click “Create app”.
You should be redirected to a screen showing you a Client ID and a Client secret. Those are important, we’ll need them later (you can come back to this screen at any time, so no need to copy them right now – I just wanted to mention them here so I can refer to it later).
- Go to the “OAuth” section.
- Click “Add redirect URL”.
- Enter
https://[YOUR_TAIGA_DOMAIN]/project/new/import/asana
. Replace [YOUR_TAIGA_DOMAIN]
with wherever your Taiga instance is hosted.
- Click “Add”.
You will need the Redirect URL later.
Step 2: Configure taiga-back
I used the dockerized 30 min setup as described in the forum. In this case, you need to adjust taiga- back
, taiga-async
and taiga-front
. We start with the configuration of taiga-back
.
The steps to follow are pretty similar to what you’d need to do to install the taiga-contrib-auth-ldap-ext LDAP plugin, so I won’t duplicate them here.
Follow the steps for taiga-back
described in the linked document below, however, use the contents of the Dockerfile
and custom-back/config.append.py
provided below in this post.
Configuration of taiga-back
custom-back/config.append.py
Click here to expand
IMPORTERS["asana"] = {
"active": True,
"callback_url": "[YOUR_REDIRECT_URL]",
"app_id": "[YOUR_CLIENT_ID]",
"app_secret": "[YOUR_CLIENT_SECRET]",
}
-
[YOUR_CALLBACK_URL]
: Replace this with the Redirect URL mentioned above.
-
[YOUR_CLIENT_ID]
: Replace this with the Client ID mentioned above.
-
[YOUR_CLIENT_SECRET]
: Replace this with the Client Secret mentioned above.
custom-back/Dockerfile
Click here to expand
FROM taigaio/taiga-back:latest
# Insert custom configuration into the taiga configuration file
COPY config.append.py /taiga-back/settings
RUN cat /taiga-back/settings/config.append.py >> /taiga-back/settings/config.py && rm /taiga-back/settings/config.append.py
These instructions will copy the config.append.py
file into the container, append its contents to the config.py
and then delete the config.append.py
file again because it is not needed any more.
Step 3: Configure taiga-async
taiga-async
uses the same image as taiga-back
and also needs to configured for Asana import.
You can luckily re-use the configuration for taiga-back
, by simply changing the taiga-async
section in the docker-compose.yml
file:
There, replace image: taigaio/taiga-back:latest
with build: ./custom-back
.
Step 4: Configure taiga-front
For the taiga-front
configuration, you can again follow the steps described in the README for the LDAP plugin, as the only difference is the content of the configuration JSON file:
Configuration of taiga-front
custom-front/conf.override.json
This file needs to contain (among the default options) the entry:
"enableAsanaImporter": "true",