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

Импорт из облачной версии Confluence

Документ описывает инструкцию по переносу пространств из облачной версии Confluence в TeamStorm.

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

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

  • архив со скриптами импорта
  • URL сервера TeamStorm
  • логин и пароль пользователя TeamStorm
  • ключ существующего пространства TeamStorm, в который будет выполнен импорт
  • URL сервера Confluence
  • Логин (E-mail) пользователя Confluence
  • персональный токен доступа пользователя Confluence
  • названия пространств Confluence, которые необходимо перенести

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

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

        pip install requests==2.31.0
    
  3. Распакуйте архив со скриптами миграции

  4. Добавьте пользователей в TeamStorm перед запуском импорта.

E-mail или отображаемое имя пользователей TeamStorm должны совпадать с пользователями Confluence для автоматического маппинга.

Создание токена Confluence

  1. Авторизуйтесь в Confluence с выбранной учетной записью.
  2. Создайте и сохраните персональный ключ доступа в профиле пользователя согласно документации Atlassian Using Personal Access Tokens

Этапы импорта

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

  1. Копирование содержимого страниц и их структуры.

    На данном этапе создаются аналогичные страницы в TeamStorm, копируются изображения и вложения на страницах, восстанавливается структура страниц. На этом этапе ссылки на другие страницы сохраняют исходный адрес Confluence. Для последующего связывания в контент страниц добавляются служебная информация.

  2. Исправление ссылок на другие страницы Confluence.

    При необходимости заменить исходные ссылки страниц и задач ссылками на аналогичные страницы и задачи в TeamStorm воспользуйтесь инструкцией Замена ссылок на импортированные задачи и страницы.

  3. Удаление со страниц служебной информации, необходимой для исправления ссылок и связывания страниц.

    В случае, когда необходимо перенести страницы в разные пространства TeamStorm, каждый этап миграции потребуется выполнить для всех пространств отдельно:

    1. Выполнить этап 1 последовательно для всех импортируемых пространств. На этом шаге потребуется перенести все необходимые пространства в TeamStorm.
    2. Выполнить этап 2 последовательно для всех пространств. На этом этапе внутренние ссылки в импортированных пространствах будут исправлены.
    3. Выполнить этап 3 последовательно для всех пространств. На этом этапе служебные временные метаданные на страницах будут удалены. Последующее исправление ссылок и связывание страниц будет невозможно.

Параметры скрипта

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

        "https://teamstorm.io"
    
  2. <teamstorm_login> - логин пользователя TeamStorm

        "ivan.ivanov"
    
  3. <teamstorm_password> - пароль пользователя TeamStorm

        "EzL...ewQ"
    
  4. <confluence_url> - URL сервера Confluence

        "https://confluence.yourdomain.ru"
    
  5. <confluence_token> - персональный токен доступа пользователя Confluence

        "EzLCJzaWQiOiJh...vwmAVsK0ewQ"
    
  6. --type - тип установки Confluence

    --type server
    
  7. --user - логин (E-mail) пользователя Confluence

        --user "your@email.com"
    
  8. --ts_workspace - ключ существующего пространства TeamStorm, в который будет выполнен импорт указанных пространств.

    Примечание

    Если параметр не указан для каждого импортируемого пространства Confluence будет создано уникальное пространство в TeamStorm.

         --ts_worspace "DEV"
    
  9. --spaces - названия пространств Confluence, которые необходимо перенести

        --spaces "Team Space" "Dev Space"
    
  10. Указание выполняемых этапов импорта

Этапы импорта описаны в разделе Этапы импорта

  • --all - запустит последовательно этапы копирования содеожимого страниц и исправления ссылок.

  • --clean - запустит этап удаления служебной информации. Возможно только после копирования содержимого страниц и их структуры. После удаления служебной информации будет невозможно выполнить исправление ссылок и связывание страниц.

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

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

        python3 conf_migration.py --all|clean <teamstorm_url> \
                            <teamstorm_login> <teamstorm_password> \
                            <confluence_url> <confluence_token> --type server \
                            --user <login> --ts_workspace "" --spaces [""]
    

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

        python3 conf_migration.py --all "http://teamstorm.ru" \
                    "ivan.ivanov" "EzL...ewQ" \
                    "http://your-domain.atlassian.net" \
                    "EzLCJzaWQiOiJh...fiPnFBcj+f3T" \
                    --type cloud \
                    --user "your@email.com" \
                    --ts_workspace "DEV" \
                    --spaces "Team Space" "Dev Space"
    
  3. Дождитесь выполнения скрипта и проверьте импортированные данные

  4. В случае возникновения ошибок соединения скрипт можно перезапустить c теми же параметрами, импорт продолжит перенос страниц.

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

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

  1. Страницы и их структура
  2. Текст, изображения и их форматирование содержимого страниц
  3. Контент, генерируемый макросами Confluence в нередактируемом виде (текст и изображения)
  4. Диаграммы draw.io в редактируемом формате
  5. Ссылки между страницами
  6. Упоминания пользователей на страницах
  7. Вложения страниц