Создание задач с использованием импортера CSV

Если у пользователя JIRA есть разрешение проекта «Создать задачу» (Create Issue) и глобальное разрешение  на «Массовое изменение» (Bulk Change) для соответствующих проектов, он может массово создавать задачи, используя файл значений, разделенных запятыми (CSV). CSV-файлы - текстовые файлы, представляющие собой табличные данные. Они поддерживаются и обрабатываются большинством систем, таких как электронные таблицы (MS Excel, Numbers) и базы данных.

Импортер CSV позволяет импортировать данные из внешних систем, которые могут экспортировать свои данные в табличном формате. Он также позволяет вам создавать свой собственный файл CSV для  создания и обновления массовых задач.

 

 

Существует два способа использования импортера CSV и дополнительный третий шаг:

1. Подготовка файла CSV,

2. Запуск мастера импорта CSV и

3. Сохранение конфигурации для будущего использования.

Подготовка файла CSV

Плагин JIRA Importers предполагает, что ваш CSV-файл основан на стандартном CSV- файле Microsoft Excel. Поля разделяются запятыми, а их содержимое, которое должно обрабатываться буквально, например, запятые и новые строки / «возврат каретки» заключаются в кавычки.

 Для Microsoft Excel и OpenOffice нет необходимости заключать значения ячеек в кавычки, так как эти приложения обрабатывают это автоматически.

Требования к файлам CSV

В дополнение к тому, чтобы быть «хорошо сформированными», к файлам CSV предъявляются следующие требования:

Каждый файл CSV должен иметь строку заголовка со сводным столбцом - «Резюме» (Summary).

Мастер импорта файлов CSV использует строку заголовка CSV-файла, чтобы определить, как сопоставить данные из 2-й строки  CSV-файла с полями в JIRA.

Строка заголовка должна избегать любых знаков препинания (кроме запятых, разделяющих каждый столбец), иначе импортер может работать неправильно.

Строка заголовка должна содержать столбец для данных - «Резюме» (Summary).

Запятые (как разделители столбцов/полей) не могут быть опущены.

Например, это верно:


Summary, Assignee, Reporter, Issue Type, Description, Priority
"Test issue", admin, admin, 1, ,

... а это не верно:


Summary, Assignee, Reporter, Issue Type, Description, Priority
"Test issue", admin, admin, 1

Инкапсуляция структуры данных JIRA в файл CSV

Захват данных, занимающих несколько строк

Используйте двойные кавычки (") в файле CSV для захвата данных, которые занимают несколько строк. Например, при импорте JIRA будет рассматривать следующее как действительный файл CSV с одной записью:


Summary, Description, Status
"Login fails", "This is on
a new line", Open

Обработка специальных символов буквально

Используйте двойные кавычки (") вокруг раздела текста, чтобы обрабатывать любые специальные символы в этом разделе буквально. После того, как эти данные будут импортированы в JIRA, специальные символы сохранятся как часть данных поля JIRA. Например, в качестве специальных символов могут быть: возврат каретки/ввод символов(как показано в примере выше), запятые и т.д.

Обработать знак двойной кавычки буквально, вы можете  с помощью другого символа  двойной кавычки.

Таким образом, значение CSV:

  • «Нажатие кнопки ««Добавить»» приводит к  странице с ненайденной ошибкой»

       после импорта будет храниться в JIRA как:

  • Нажатие кнопки «Добавить» приводит к  странице с ненайденной ошибкой

Объединение нескольких значений в отдельные поля JIRA

Вы можете импортировать несколько значений в поле JIRA, которое принимает несколько значений (например, исправление версии, влияние на версию, компонент, метки). Для этого файл CSV должен указывать одно и то же имя столбца для каждого значения, которое вы хотите объединить, в отображаемое поле JIRA. Количество указанных имен столбцов должно соответствовать максимальному количеству значений, которые должны быть объединены в отображаемое поле. Например:


IssueType, Summary, FixVersion, FixVersion, FixVersion, Component, Component
bug, "First issue", v1, , , Component1,
bug, "Second issue", v2, , , Component1, Component2
bug, "Third issue", v1, v2, v3, Component1,

В приведенном выше примере поле Component второй задачи и поле Fix Version третьей задачи генерируют несколько значений в соответствующих полях JIRA при импорте.

Помните, что только ограниченное количество полей JIRA поддерживает несколько значений. Импортер CSV не позволит вам импортировать объединенные данные в поля JIRA, которые поддерживают только одно значение.

Импорт вложений

Вы можете прикреплять файлы к задачам, созданным из файла CSV. Для этого укажите URL- адрес вашего вложения в столбце «Вложения» (Attachments) в файле CSV.


Assignee, Summary, Description, Attachment, Comment
Admin, "Issue demonstrating the CSV attachment import", "Please check the attached image below.", "https://jira-server:8080/secure/attachment/image-name.png", "01/01/2012 10:10;Admin; This comment works"
Admin, "CSV attachment import with timestamp,author and filename", "Please check the attached image below.", "01/01/2012 13:10;Admin;image.png;file://image-name.png", "01/01/2012 10:10;Admin; This comment works"

 URL- адреса вложений поддерживают протоколы HTTP и HTTPS и могут быть любым местом, к которому должен иметь доступ JARA-сервер. Вы также можете использовать протокол FILE для доступа к файлам в подкаталоге import / attachments вашего домашнего каталога JIRA.

Импорт задач в несколько проектов JIRA

Вы можете импортировать задачи из своего CSV-файла в разные проекты JIRA через импорт файла CSV. Чтобы сделать это:

Для вашего CSV-файла требуются два дополнительных столбца, имеющих заголовки Project Name и Project Key.

Убедитесь, что каждая задача, представленная в вашем файле CSV, содержит соответствующие имя и ключ в этих столбцах для проектов JIRA, в которые они будут импортированы.

Название проекта и ключевые данные - это минимальные данные проекта JIRA, необходимые для импорта задач из файла CSV в конкретные проекты JIRA.


IssueType, Summary, Project Name, Project Key
bug, "First issue", Sample, SAMP
bug, "Second issue", Sample, SAMP
task, "Third issue", Example, EXAM

В приведенном выше примере первая и вторая задачи будут импортированы в проект «Образец» (с ключом проекта «SAMP»), а третья задача будет импортирована в проект «Пример» (с ключом проекта «EXAM»). При этом поля «Имя проекта» и «Ключ проекта» в CSV-файле должны соответствовать  полям «Имя проекта» и «Ключ проекта» JIRA во время выполнения мастера импорта файлов CSV.

Импорт записей в журнал

Ваш CSV-файл может содержать записи в журнале. Например:


Summary,Worklog
Only time spent (one hour),3600
With a date and an author,2012-02-10 12:30:10;wseliga;120
With an additional comment,Testing took me 3 days;2012-02-10 12:30:10;wseliga;259200

Чтобы отслеживать потраченное время, вам нужно использовать секунды.

Импорт в настраиваемые поля с несколькими выборками

Ваш CSV-файл может содержать несколько записей для одного настраиваемого поля Multi Select. Например:


Summary,Multi Select,Multi Select,Multi Select
Sample issue,Value 1,Value 2,Value 3

Это позволит заполнить настраиваемое поле Multi Select несколькими значениями.

Импорт настраиваемых полей каскадного выбора

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


Summary, My Cascading Custom Field
Example Summary, Parent Value -> Child Value

Сепаратор '->' позволяет вам импортировать иерархию.

ПРИМЕЧАНИЕ: В настоящее время JIRA не поддерживает импорт многоуровневых каскадных полей выбора через CSV (JRASERVER-34202 - разрешить импорт CSV для поддержки открытия полей плагинов многоуровневого каскадного выбора).

Для того, чтобы произвести  запуск мастера импорта файлов CSV, необходимо выполнить следующие шаги:

Прежде чем начать: Если в вашей установке JIRA уже есть данные - создайте резервную копию существующих данных JIRA.

1. Выберите «Задачи» (Issues)> «Импортировать задачи из CSV» (Import Issues from CSV), чтобы открыть страницу «Массовая установка» (Bulk Create Setup). (Если у вас нет опции «Импортировать задачи из CSV» (Import issues from CSV), JIRA Admin должен обновить плагин JIRA Importers до версии 6.2.3 или выше).

2. На странице «Установка» (Setup) выберите ваш исходный CSV-файл.
Снимите флажок «Использовать существующий файл конфигурации» (Use an existing configuration file), если у вас нет файла конфигурации или вы хотите создать новый файл конфигурации. Файлы конфигурации определяют соответствие между именами столбцов в строке заголовка файла CSV и полями вашей установки JIRA.

  • Если опция выбрана, вам будет предложено указать существующий файл конфигурации.
  • Если опция не выбрана, то в конце мастера импорта файлов CSV JIRA спросит вас, хотите ли вы создать файл конфигурации, который вы сможете использовать для последующего импорта CSV-файлов.

3. Нажмите кнопку «Далее» (Next), чтобы перейти к шагу «Настройки» (Settings) мастера импорта файлов CSV. Заполните необходимые поля.

  • Если ваш CSV-файл использует другой разделительный символ, отличный от запятой, укажите этот символ в поле разделителя CSV. Если разделителем является «Tab», его можно ввести с использованием формата '/ t'.

4. Нажмите кнопку «Далее» (Next), чтобы перейти к шагу «Поля сопоставления» (Map fields) мастера импорта файлов CSV. Здесь вы можете сопоставить заголовки столбцов вашего CSV-файла с полями в выбранном проекте JIRA. Если вы хотите выбрать определенные значения полей JIRA для сопоставления со значениями CSV, поставьте галочку в поле «Значение поля сопоставления» (Map field value).

Примечание: Вы должны сопоставить  поля  резюме CSV и JIRA. Это гарантирует, что создаваемые задачи будут  иметь резюме.

5. Нажмите кнопку «Далее» (Next), чтобы перейти к шагу «Значения сопоставления» (Map values) мастера импорта файлов CSV. На этом шаге  вы можете выбрать, какие конкретные значения полей CSV вы хотите сопоставить, к какому конкретному значению поля JIRA. Например, ваши типы задач могут иметь значение поля  «Запрос функции»  CSV, которое вы можете сопоставить со значением  поля типа задачи «Новая функция» JIRA.

Пожалуйста, обратите внимание:

  • На этой странице будут представлены все поля, для которых на предыдущем шаге мастера импорта CSV-файлов были установлены флажки «Значение поля сопоставления» (Map field value).
  • Оставьте поле очищенным или очистите любой контент в нем, если вы хотите импортировать значение «как есть».
  • Если вы импортируете CSV-поле на основе имени пользователя (например, «Репортер» (Reporter) или «Представитель» (Assignee), и не установили флажок  «Значение поля сопоставления» для этого поля на предыдущем шаге мастера импорта файлов CSV,  импортер автоматически отобразит импортированные имена пользователей из CSV-файла в (нижнем регистре) именах JIRA.

     Независимо от того, установлен ли флажок «Значение поля сопоставления» (Map field value), JIRA автоматически создаст имена пользователей на основе данных в вашем CSV-файле, если они еще не определены в JIRA.

6. Нажмите кнопку «Начать импорт» (Begin Import), если вы готовы начать импортировать данные CSV в JIRA. Импортёр будет отображать обновления по мере продвижения импорта, а затем сообщит об успешном завершении, когда импорт будет завершен.

7. Если вы уверены, что ваш импорт правильно настроен, нажмите кнопку «Начать импорт» (Begin Import). Ваш импорт начнется, и после его завершения вы будете проинформированы о любых ошибках. Если вы хотите сначала проверить свой импорт, нажмите кнопку «Проверить» (Validate), и JIRA проверит ваш импорт и сообщит о любых ожидаемых ошибках или предупреждениях. Затем вы можете вернуться и исправить их, прежде чем запускать полный импорт.

 Примечание:

  • Если у вас возникли проблемы с импортом (или вам интересно), нажмите на ссылку "загрузить подробный журнал", чтобы просмотреть подробную информацию о процессе импорта  CSV-файла.
  • Если вам нужно импортировать другой CSV-файл с теми же (или аналогичными) настройками, которые использовались  в этой процедуре, щелкните  ссылку  "сохранить  конфигурацию" для загрузки файла конфигурации CSV, который вы можете использовать на первом этапе мастера импорта  CSV-файла. 

Поздравляем, вы успешно импортировали данные CSV в JIRA! Если у вас есть какие-либо вопросы или возникают какие-либо проблемы, обратитесь в службу поддержки Atlassian.

 Советы по импорту данных CSV в поля JIRA

Ниже приведены некоторые полезные советы при импорте данных из файла CSV в определенные поля JIRA:

 Поле JIRA

 Примечания импорта

 Проект

(Project)

Данные CSV импортируются для каждого проекта. Вы можете либо указать существующий проект(ы) JIRA в качестве цели, либо импортер автоматически создаст для вас новый проект(ы) во время импорта.

 Резюме

(Summary)

Это единственное обязательное поле.

Компонент(ы)

(Component(s))

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

 Затронутые  версии

 (Affects  Version(s))

Вы можете импортировать задачи с несколькими версиями -  «Затронутые версии» (Affects Versions), введя каждую версию в отдельный столбец.

Исправленные версии

(Fix Version(s))

Вы можете импортировать задачи с несколькими версиями -  «Исправленные версии» (Fix Versions), введя каждую версию в отдельный столбец.

 Тело комментария

 (Comment Body)

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

 Срок исполнения

 (Due Date)

Используйте формат даты, указанный на втором шаге мастера импорта CSV.

 Тип задачи

 (Issue Type)

Если в вашем  CSV-файле тип задачи не указан, он  будет присвоен импортированным задачам по умолчанию (то есть первый), как указано в вашей системе JIRA, определяющей значения поля  «Тип задачи». Вы также можете создавать новые значения JIRA «на лету» в  процессе импорта.

Метки

(Labels)

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

 Приоритет

 (Priority)

Если в вашем CSV-файле приоритет не указан, он  будет присвоен импортированным задачам по умолчанию (то есть первый), как указано в вашей системе JIRA, определяющей значения поля «Приоритет». Вы также можете создавать новые значения JIRA «на лету» в процессе импорта.

Первначальная оценка

(Original Estimate)

Значение этого поля должно быть указано в секундах.

 Остальные оценки

 (Remaining Estimate)

Значение этого поля должно быть указано в секундах.

 Потраченное время

 (Time Spent)

Значение этого поля должно быть указано в секундах.

Пользователи

(Users)

Вы можете выбрать, чтобы импортер автоматически создавал пользователей JIRA для любых значений поля «Правопреемник» (Assignee) или «Репортер» (Reporter).

  • Пользователи будут созданы как активные  учетные записи в JIRA. Они должны будут получить свои пароли   по электронной почте при первом входе в JIRA.
  • Пользователи, не имеющие реального имени, получат часть своего адреса электронной почты (имя пользователя) до символа «@» в качестве полного имени в JIRA.
  • Если вы используете внешнее управление пользователями, процесс импорта не сможет создавать пользователей JIRA; вместо этого импортер предоставит вам список новых пользователей, которые должны быть созданы. Перед началом импорта вам нужно будет создать пользователей во внешнем пользовательском репозитории.
  • Если у вас есть  ограниченная пользовательская лицензия (например, личная лицензия), а количество требуемых пользователей превышает лимит, то импорт будет остановлен. Отобразится страница с указанием списка пользователей, которые не могут быть созданы.
  • Если «Правопреемник» (Assignee) и «Репортер» (Reporter) не сопоставлены, то имена пользователей не будут созданы.

 Другие поля

(Other fields)

Если вы хотите импортировать какие-либо другие поля, вы можете выбрать их сопоставление с определенными пользовательскими полями JIRA. Если ваши пользовательские поля еще не существуют в JIRA, импортер может автоматически создать их для вас. Если ваше настраиваемое поле является полем даты, используйте формат даты, указанный на втором шаге мастера импорта CSV.

По материалам Atlassian JIRA User's Guide: Creating issues using the CSV importer