Установить Jira на локальной машине
Описание доступно по ссылке:
https://developer.atlassian.com/display/DOCS/Set+up+the+Atlassian+Plugin+SDK+and+Build+a+Project
Описание на официальном сайте немного устарело. Ниже описан работающий на данный момент способ.
Java
Скачать JDK 1.7 с сайта Oracle и установить на компьютер.
Прописать путь в переменной окружения JAVA_HOME: C:\Program Files\Java\jdk1.7.0_51
Добавить путь к бинарникам в начало переменной окружения Path: %JAVA_HOME%\bin;
Проверить версию компилятора: javac -version
Plugin SDK
Скачать SDK: https://marketplace.atlassian.com/download/plugins/atlassian-plugin-sdk-windows
Создать директорию на жёстком диске.
Запустить установщик.
Maven
После установки Plugin SDK добавить переменную окружения M2_HOME так, чтобы использовать Maven, который идет в комплекте к SDK:
D:\atlassian-plugin-sdk\apache-maven-3.2.1
Создать переменную окружения M2:
%M2_HOME%\bin
Создать переменную MAVEN_OPTS:
-Xms768m -Xmx3072m -XX:MaxPermSize=1200m
Добавить путь к бинарникам к переменной окружения Path:
;%M2%
Вписать прокси-сервер в файл настроек:
D:\atlassian-plugin-sdk\apache-maven-3.2.1\conf\settings.xml
<proxies>
<proxy>
<id>tp-local</id>
<active>true</active>
<protocol>http</protocol>
<username>ваше имя в домене Winows</username>
<password>ваш пароль</password>
<host>free.tp-local.ru</host>
<port>3128</port>
<nonProxyHosts>localhost</nonProxyHosts>
</proxy>
</proxies>
Создать папку на локальном диске и записать путь к ней в файл настроек:
D:\atlassian-plugin-sdk\apache-maven-3.2.1\conf\settings.xml
<localRepository>D:\atlassian-maven-repository</localRepository>
Если этого не сделать, то репозиторий у меня окажется на другой машине в сети:
\\srv09\UserFolders$\novikov\.m2\repository
Дополнительная информация на странице: http://maven.apache.org/download.cgi
Проверка
В командной строке запустить:
atlas-version
Убедиться, что все пути правильные.
Запустить экземпляр Jira
Создать на диске директорию для запуска Jira с произвольным именем:D:/jira
Открыть командную строку и перейти в эту директорию.
Запустить команду
atlas-run-standalone --product jira
Более подробно смотри Step 1. Install and configure the local JIRA instance и
https://developer.atlassian.com/display/DOCS/atlas-run-standalone
По окончании работы команды на экране появится подобное сообщение:
Скопировать в адресную строку браузера подчёркнутую часть.
Войти в Jira под пользователем admin с паролем admin.
Создать проект с названием TEST и задачу в нём с ключом TEST-1.
Настроить шину WSO2 ESB
Установить Jira Connector
Правила установки Jira Connector приведены в документации:
https://docs.wso2.com/display/ESB480/JIRA+Connector#JIRAConnector-createIssue
Нужно скачать архив с плагином.
Загрузить плагин в шину через браузер.
В списке коннекторов нажать на слово Disabled, чтобы сделать загруженный коннектер активным.
Создать локальную запись jiraauth, которая потребуется позже в медиаторах для авторизации в Jira.
https://docs.wso2.com/display/ESB480/JIRA+Connector#JIRAConnector-ConnectingtoJIRA
Вставить значение
<jira.init xmlns="http://ws.apache.org/ns/synapse">
<username>admin</username>
<password>admin</password>
<uri>http://02-128.tp-local.ru:2990/jira</uri>
</jira.init>
URI взять то, что указано в командной строке после запуска Jira.
Создать 2 последовательности медиаторов jiratest и jiraerror для последующего использования в REST API.
Начать с последовательности jiraerror
Последовательность содержит только медиатор для ведения лога.
Сохранить последовательность в реестр.
После jiraerror создать последовательность jira для обработки входящих запросов.
Указать название последовательности и прикрепить последовательность jiraerror, которая служит для обработки ошибок.
Переключаемся в XML-представление, чтобы вставить медиатор для получения сведений о задаче в Jira.
Вставить определение медиатора, составленное по примеру в документации:
https://docs.wso2.com/display/ESB480/JIRA+Connector#JIRAConnector-getIssue
<sequence xmlns="http://ws.apache.org/ns/synapse" name="jira" onError="conf:/jiraerror">
<jira.getIssue configKey="jiraauth">
<issueIdOrKey>TEST-1</issueIdOrKey>
</jira.getIssue>
</sequence>
Добавляем медиатор для записи параметров сообщения в лог.
Определяем параметр id.
По ссылке http://02-128.tp-local.ru:2990/jira/rest/api/2/issue/TEST-1 видно, что REST API Jira возвращает JSON.
Об этом также написано в документации:
https://docs.atlassian.com/jira/REST/latest/
https://docs.atlassian.com/jira/REST/latest/jira-rest-plugin.wadl
Как работать с JSON в WSO2 ESB описано здесь:
https://docs.wso2.com/display/ESB481/JSON+Support#JSONSupport-AccessingcontentfromJSONpayloads
Поэтому, чтобы извлечь значение id, пишем json-eval($.id)
Сохраняем последовательность jira в реестр.
Создать API для обращения к Jira.
Назвать API и задать контекст (начало URL). Перейти к созданию ресурса.
Определяем метод GET, стиль URL и определить путь, на который будет отзываться создаваемый ресурс. О маппинге написано в документации:
https://docs.wso2.com/display/ESB481/Creating+APIs#CreatingAPIs-URLmappings
Начать прикрепление последовательности медиаторов с именем jira. Для этого открыть реестр.
Выбрать последовательность из списка.
Перейти к определению последовательности медиаторов, которая будет обрабатывать ошибки, возникающие при обращении к ресурсу. В данном случае повторно использовать последовательность jiraerror. Если последовательности для обработки сбоев нет, то может появится ошибка.
Выбрать последовательность из списка.
Сохранить ресурс.
Сохранить API.
Закрыть сообщение.
Создание API завершено.
Выполнить проверку. Открыть в браузере URL:
http://192.168.4.163:8280/jiratest/test
Убедиться, что id получен из Jira и занесён в лог.
На этом пошаговая инструкция окончена.
Ссылки на материалы в документации
https://docs.wso2.com/display/ESB480/Managing+Connectors+in+Your+ESB+Instance
https://docs.wso2.com/display/ESB480/Using+a+Connector
https://docs.wso2.com/display/ESB480/JIRA+Connector
https://docs.wso2.com/display/ESB481/JSON+Support
https://docs.wso2.com/display/ESB481/Creating+APIs
https://developer.atlassian.com/display/JIRADEV/Creating+a+JIRA+SOAP+Client
https://docs.atlassian.com/jira/REST/latest/
Комментариев нет:
Отправить комментарий