community.general.jira – создание и изменение задач в JIRA
Примечание
Этот плагин входит в коллекцию community.general (версия 2.0.1).
Для установки используйте: ansible-galaxy collection install community.general.
Чтобы использовать его в книге задач, укажите: community.general.jira.
Обзор
- Создание и изменение задач в системе JIRA.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| assignee строка | Устанавливает исполнителя при создании или переходе по операциям. Обратите внимание, что не все переходы позволят это сделать. | |
| comment строка | Текст комментария для добавления. | |
| description строка | Описание задачи, где это уместно. | |
| fields словарь | Это структура данных в свободном формате, которая может содержать произвольные данные. Она передаётся непосредственно в API JIRA (возможно, после слияния с другими необходимыми данными, как при создании). См. примеры для получения дополнительной информации и API JIRA для структуры, необходимой для различных полей. | |
| inwardissue строка | Установить задачу, из которой будет создана ссылка. | |
| issue строка | Ключ существующей задачи для обработки. псевдонимы: ticket | |
| issuetype строка | Тип задачи для создания задачи. | |
| jql строка добавлен в 0.2.0 community.general | Запрос JIRA в формате JQL, например, 'CMDB Hostname'='test.example.com'. | |
| linktype строка | Установить тип ссылки, когда выбран действие 'link'. | |
| maxresults целое число добавлен в 0.2.0 community.general | Ограничить результат операции operation=search. Если значение не указано, будет использоваться стандартное ограничение JIRA. Используется только при operation=search, в противном случае игнорируется. | |
| operation строка / обязательно |
| Операция для выполнения. псевдонимы: команда |
| outwardissue строка | Установить задачу, к которой будет создана ссылка. | |
| password строка / обязательно | Пароль для входа. | |
| project строка | Проект для этой операции. Требуется для создания задачи. | |
| status строка | Желаемый статус; актуально только для операции перехода. | |
| summary строка | Краткое описание задачи, где это уместно. | |
| timeout вещественное число | Значение по умолчанию: 10 | Установить тайм-аут в секундах для запросов к API JIRA. |
| uri строка / обязательно | Базовый URI для экземпляра JIRA. | |
| username строка / обязательно | Имя пользователя для входа. | |
| validate_certs логическое значение |
| Требовать действительные сертификаты SSL (установите в `false`, если вы хотите использовать самоподписанные сертификаты) |
Примечания
Примечание
- В настоящее время это работает только с basic-auth.
Примеры
# Create a new issue and add a comment to it:
- name: Create an issue
community.general.jira:
uri: '{{ server }}'
username: '{{ user }}'
password: '{{ pass }}'
project: ANS
operation: create
summary: Example Issue
description: Created using Ansible
issuetype: Task
args:
fields:
customfield_13225: "test"
customfield_12931: '{"value": "Test"}'
register: issue
- name: Comment on issue
community.general.jira:
uri: '{{ server }}'
username: '{{ user }}'
password: '{{ pass }}'
issue: '{{ issue.meta.key }}'
operation: comment
comment: A comment added by Ansible
# Assign an existing issue using edit
- name: Assign an issue using free-form fields
community.general.jira:
uri: '{{ server }}'
username: '{{ user }}'
password: '{{ pass }}'
issue: '{{ issue.meta.key}}'
operation: edit
assignee: ssmith
# Create an issue with an existing assignee
- name: Create an assigned issue
community.general.jira:
uri: '{{ server }}'
username: '{{ user }}'
password: '{{ pass }}'
project: ANS
operation: create
summary: Assigned issue
description: Created and assigned using Ansible
issuetype: Task
assignee: ssmith
# Edit an issue
- name: Set the labels on an issue using free-form fields
community.general.jira:
uri: '{{ server }}'
username: '{{ user }}'
password: '{{ pass }}'
issue: '{{ issue.meta.key }}'
operation: edit
args:
fields:
labels:
- autocreated
- ansible
# Updating a field using operations: add, set & remove
- name: Change the value of a Select dropdown
community.general.jira:
uri: '{{ server }}'
username: '{{ user }}'
password: '{{ pass }}'
issue: '{{ issue.meta.key }}'
operation: update
args:
fields:
customfield_12931: [ {'set': {'value': 'Virtual'}} ]
customfield_13820: [ {'set': {'value':'Manually'}} ]
register: cmdb_issue
delegate_to: localhost
# Retrieve metadata for an issue and use it to create an account
- name: Get an issue
community.general.jira:
uri: '{{ server }}'
username: '{{ user }}'
password: '{{ pass }}'
project: ANS
operation: fetch
issue: ANS-63
register: issue
# Search for an issue
# You can limit the search for specific fields by adding optional args. Note! It must be a dict, hence, lastViewed: null
- name: Search for an issue
community.general.jira:
uri: '{{ server }}'
username: '{{ user }}'
password: '{{ pass }}'
project: ANS
operation: search
maxresults: 10
jql: project=cmdb AND cf[13225]="test"
args:
fields:
lastViewed: null
register: issue
- name: Create a unix account for the reporter
become: true
user:
name: '{{ issue.meta.fields.creator.name }}'
comment: '{{ issue.meta.fields.creator.displayName }}'
# You can get list of valid linktypes at /rest/api/2/issueLinkType
# url of your jira installation.
- name: Create link from HSP-1 to MKY-1
community.general.jira:
uri: '{{ server }}'
username: '{{ user }}'
password: '{{ pass }}'
operation: link
linktype: Relates
inwardissue: HSP-1
outwardissue: MKY-1
# Transition an issue by target status
- name: Close the issue
community.general.jira:
uri: '{{ server }}'
username: '{{ user }}'
password: '{{ pass }}'
issue: '{{ issue.meta.key }}'
operation: transition
status: Done
args:
fields:
customfield_14321: [ {'set': {'value': 'Value of Select' }} ]
comment: [ { 'add': { 'body' : 'Test' } }]
Авторы
- Steve Smith (@tarka)
- Per Abildgaard Toft (@pertoft)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/general/jira_module.html