Перейти к содержанию

Импорт из Trello

Документ описывает перенос доски из Trello в TeamStorm.

Исходные данные

Для переноса проекта из Jira потребуются следующие данные:

  • архив со скриптами импорта;
  • URL сервера TeamStorm;
  • токен аутентификации пользователя TeamStorm;
  • ключ существующего пространства TeamStorm, в который будет выполнен импорт;
  • файл экспорта доски Trello в формате JSON.

Подготовка запуска

  1. Установите среду выполнения Python 3.11.
  2. Установите следующие модули:

        pip install \
            Markdown==3.4.3
            requests==2.31.0
            dataclasses-json==0.5.7
            future==0.18.2
            pytz==2023.3
    
  3. Распакуйте архив со скриптами миграции

  4. Добавьте пользователей в TeamStorm перед запуском импорта. Отображаемое имя пользователей TeamStorm должны совпадать с пользователями Trello для автоматического маппинга.

Получение токена аутентификации TeamStorm

Для аутентификации в API TeamStorm необходимо выбрать учетную запись пользователя, у которого есть системные роли Администратор Core и Пользователь TeamStorm.

  1. Авторизуйтесь в TeamStorm в браузере с выбранной учетной записью.
  2. Откройте веб-инспектор браузера.
  3. Откройте любой запрос TeamStorm.
  4. Скопируйте из заголовка запроса Authorization токен авторизации (символы без "Bearer").

    Получение токена аутентификации TeamStorm

Экспорт доски в Trello

  1. Авторизуйтесь в Trello.
  2. Выполните экспорт доски Trello согласно документации. Exporting data from Trello
  3. Сохраните полученный JSON-файл.

Основные параметры скрипта

  1. <teamstorm_url> - URL сервера TeamStorm:

    "https:\\teamstorm.io"
    
  2. <teamstorm_token> - токен аутентификации пользователя TeamStorm:

        "ivan.ivanov"
    
  3. <teamstorm_space_key> - ключ существующего пространства TeamStorm, в который будет выполнен импорт:

    "DEV"
    
  4. <json_export_path> - путь к JSON-файлу экспорта доски:

    "../../export.json"
    

Дополнительные параметры скрипта

Импорт нескольких досок в одно пространство

По умолчанию при импорте доски в существующее пространство или при повторном импорте существующие настройки (созданные в пространстве типы, атрибуты, процессы) не обновляются.

Для того, чтобы обновить настройки укажите параметр:

--update_settings

Запуск скрипта

  1. Перейдите в папку со скриптами.
  2. Выполните команду c необходимыми параметрами:

    python3 trello_migration.py <teamstorm_url> <teamstorm_login> <teamstorm_password> <teamstorm_space_key> <json_export_path>
    

    Пример вызова скрипта:

    python3 trello_migration.py "http://teamstorm.ru" \
    "ivan.ivanov" "EzL...ewQ" \
    "TEMP" \
    "../../export.json"
    
  3. Дождитесь выполнения скрипта и проверьте импортированные данные.

Результат переноса

В результате будет выполнен перенос данных доски:

  • доска в виде папки в пространстве TeamStorm;
  • списки задач на доске в виде статусов в процессе;
  • поля карточек в виде атрибутов;
  • метки как атрибут типа "Тег";
  • участники как атрибут типа "Тег";
  • карточки, как задачи типа "Задача";
  • чеклисты карточки как задачи типа "Чеклист";
  • задачи чеклиста как задачи типа "Подзадача";
  • комментарии карточек.