Импорт из облачной версии Jira
Документ описывает инструкцию по переносу проекта из облачной версии Jira в TeamStorm.
Исходные данные
Для переноса проекта из Jira потребуются следующие данные:
- архив со скриптами импорта
- URL сервера TeamStorm
- токен аутентификации пользователя TeamStorm
- URL сервера Jira
- Логин (E-mail) пользователя Jira
- персональный токен доступа пользователя Jira
- ключ проекта Jira, который необходимо перенести
Подготовка запуска
- Установите среду выполнения Python 3.11.
-
Установите следующие модули:
-
Распакуйте архив со скриптами миграции
- Добавьте пользователей в TeamStorm перед запуском импорта. E-mail или отображаемое имя пользователей TeamStorm должны совпадать с пользователями Jira для автоматического маппинга.
Получение токена аутентификации TeamStorm
Для аутентификации в API TeamStorm необходимо выбрать учетную запись пользователя, у которого есть системные роли "Администратор Core" и "Пользователь TeamStorm".
- Авторизуйтесь в TeamStorm в браузере с выбранной учетной записью.
- Откройте веб-инспектор браузера.
- Откройте любой запрос TeamStorm.
-
Скопируйте из заголовка запроса Authorization токен авторизации (символы без "Bearer").
Создание токена Jira
- Авторизуйтесь в Jira с выбранной учетной записью.
- Создайте и сохраните персональный ключ доступа в профиле пользователя согласно документации Atlassian Manage API tokens for your Atlassian account
Основные параметры скрипта
-
- URL сервера TeamStorm -
- токен аутентификации пользователя TeamStorm -
- URL сервера Jira -
- персональный токен доступа пользователя Jira -
- ключ проекта Jira, который необходимо перенести -
--user - логин (E-mail) пользователя Jira
-
--type - тип установки Jira
Дополнительные параметры скрипта
Выбор пространства
По умолчанию при импорте для каждого проекта создаётся новое пространство. Этому пространству назначается ключ и название импортируемого проекта Jira.
Для того, чтобы создать пространство с другим ключом и названием, необходимо указать параметры:
Для того, чтобы импортировать проект в существующее пространство необходимо указать параметр:
Если в TeamStorm уже существует пространство с указанным ключом проекта, данные будут импортированы в него.
Импорт scrum-доски
Для импорта scrum-доски в проект необходимо указать в параметрах скрипта её название. В пространстве TeamStorm можно импортировать только одну scrum-доску:
Выбор типа оценки
По умолчанию при импорте задачам в пространстве назначаются оба способа оценки - и в часах, и в SP. Если необходимо оставить только оценку в часах нужно указать параметр:
Если необходимо оставить только оценку в SP нужно указать параметр:
Импорт нескольких проектов в одно пространство
По умолчанию при импорте проекта в существующее пространство или при повторном импорте существующие настройки (созданные в пространстве типы, атрибуты, процессы) не обновляются. Для того, чтобы обновить настройки укажите параметр:
Импорт задач частями
Для импорта больших объемов задач возможно разбить импорт на несколько частей, указав начальную и конечную позицию в списке задач.
При указании начального индекса будут импортированы все задачи, начиная с указанного индекса:
При указании конечного индекса будут импортированы все задачи, до указанного индекса:
При указании обоих параметров будут импортированы задачи внутри указанного диапазона.
Запуск скрипта
- Перейдите в папку со скриптами
-
Выполните команду c необходимыми параметрами
```shell python3 jira_migration.py
--user --type server [дополнительные параметры скрипта] -
Дождитесь выполнения скрипта и проверьте импортированные данные
- В случае возникновения ошибок соединения скрипт можно перезапустить c теми же параметрами, продолжится импорт оставшихся задач.
Результат переноса
В результате будет выполнен перенос данных исходного проекта:
- Проект (перенос ключа, названия проекта и описания)
- Типы задач
- Статусы и Workflow
- Кастомные атрибуты
- Пользователи проекта
- Роли
- Задачи и подзадачи
- Scrum-board (беклог и спринты), при наличии
- Версии
- Компоненты
- Поля задач
- Метки (как кастомное поле)
- Дата выполнения
- Приоритет (как кастомное поле)
- Компоненты (как портфели)
- Версия исправления (как портфель)
- Затронутая версия (как тег)
- Связи задач
- Кастомные поля (строки, числа, даты, метки, списки, пользователи) и опции
- Комментарии
- Вложения
- Ответственный