I was trying to migrate away from Jira and coming into phabricator. I was wondering if it was possible to import a CSV file into phabricator, so that the tasks would all get transferred. If not, is there any other way I should approach this problem?
This sort of thing is very easy to script, creating tasks via the command line is super easy via the maniphest.createtask and maniphest.edit calls
To make a simple task, just do
curl $PHABHOST/api/maniphest.createtask -d api.token=$APITOKEN -d title=$TITILE
I use jq to extract the created task id created from the json response by piping it in into jq (https://stedolan.github.io/jq/)
TASKID = curl $PHABHOST/api/maniphest.createtask -d api.token=$APITOKEN -d title=$TITILE | jq .result.objectName
Often when you are going from one bug tracking system to another you will have different values for say priority, project, status etc… and so that data might need some transformation (doing that in a script is a good way)
Then adding additional data to the task can simply be a matter of editing the created task
curl -s $PHABHOST/api/maniphest.edit -d api.token=$APITOKEN -d objectIdentifier=$TASKID -d transactions[type]="status" \ -d transactions[value]="$MYSTATUS" \ -d transactions[type]="priority" \ -d transactions[value]="$MYPRIORITY" \ -d transactions[type]="custom.myoldjiraid" \ -d transactions[value]="$MTJIRAID"
For a one time import, scripting is one possible solution, you can also test the system on a few issues then when you are ready let it churn through them all overnight.
See also https://secure.phabricator.com/T3179 for more general importing.