Примеры использования хуков: Difference between revisions
(Add redmine hook example) |
(fix general hooks documentation page link) |
||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
__TOC__ | __TOC__ | ||
Общую документацию по использованию хуков смотрите на [[Help: | Общую документацию по использованию хуков смотрите на [[Help:CLI#Хуки|другой странице]]. | ||
== Создание кейсов в системах отслеживания ошибок == | == Создание кейсов в системах отслеживания ошибок == | ||
Line 8: | Line 8: | ||
На сервере, где будет выполняться хук, должен быть установлен '''python3'''. | На сервере, где будет выполняться хук, должен быть установлен '''python3'''. | ||
* Скачайте и распакуйте архив со скриптом и конфигом хука: [[ | * Скачайте и распакуйте архив со скриптом и конфигом хука: [[Media:Gitlab-hooks.zip|Gitlab-hooks.zip]] | ||
* Сделайте файл '''gitlab-create-issue.py''' исполняемым | * Сделайте файл '''gitlab-create-issue.py''' исполняемым | ||
chmod u+x gitlab-create-issue.py | chmod u+x gitlab-create-issue.py | ||
Line 37: | Line 37: | ||
На сервере, где будет выполняться хук, должен быть установлен '''python3'''. | На сервере, где будет выполняться хук, должен быть установлен '''python3'''. | ||
* Скачайте и распакуйте архив со скриптом и конфигом хука: [[ | * Скачайте и распакуйте архив со скриптом и конфигом хука: [[Media:Jira-hooks.zip|Jira-hooks.zip]] | ||
* Сделайте файл '''jira-create-issue.py''' исполняемым | * Сделайте файл '''jira-create-issue.py''' исполняемым | ||
chmod u+x jira-create-issue.py | chmod u+x jira-create-issue.py | ||
Line 68: | Line 68: | ||
На сервере, где будет выполняться хук, должен быть установлен '''python3'''. | На сервере, где будет выполняться хук, должен быть установлен '''python3'''. | ||
* Скачайте и распакуйте архив со скриптом и конфигом хука: [[ | * Скачайте и распакуйте архив со скриптом и конфигом хука: [[Media:Redmine-hooks.zip|Redmine-hooks.zip]] | ||
* Сделайте файл '''redmine-create-issue.py''' исполняемым | * Сделайте файл '''redmine-create-issue.py''' исполняемым | ||
chmod u+x redmine-create-issue.py | chmod u+x redmine-create-issue.py | ||
Line 75: | Line 75: | ||
* В качестве второго аргумента args впишите ID проекта редмайна. Его можно найти в настройках проекта, или взять из URL | * В качестве второго аргумента args впишите ID проекта редмайна. Его можно найти в настройках проекта, или взять из URL | ||
:[[File:Redmine-project-id.png|thumb|left]]<br clear=all /> | :[[File:Redmine-project-id.png|thumb|left]]<br clear=all /> | ||
* В Redmine должен быть включен REST API в '''Administration | * В Redmine должен быть включен REST API в '''Administration > Settings > API''' | ||
:[[File:Redmine-enable-api.png|thumb|left]]<br clear=all /> | :[[File:Redmine-enable-api.png|thumb|left]]<br clear=all /> | ||
* Когда REST API включен, вы найдете свой API-ключ на странице аккаунта (/my/account), в правой панели | * Когда REST API включен, вы найдете свой API-ключ на странице аккаунта (/my/account), в правой панели |
Latest revision as of 16:04, 30 May 2024
Общую документацию по использованию хуков смотрите на другой странице.
Создание кейсов в системах отслеживания ошибок
Gitlab
На сервере, где будет выполняться хук, должен быть установлен python3.
- Скачайте и распакуйте архив со скриптом и конфигом хука: Gitlab-hooks.zip
- Сделайте файл gitlab-create-issue.py исполняемым
chmod u+x gitlab-create-issue.py
- Поменяйте в файле gitlab-create-issue.py путь к интерпретатору python3, если в вашей системе он не такой, как указано там в первой строчке
- В файле hooks.json поменяйте URL гитлаба в args
- В качестве второго аргумента args впишите ID проекта гитлаба. Его можно найти на главной странице проекта, под именем
- В гитлабе создайте Access Token для проекта в Settings > Access Tokens. Выберите роль 'Reporter', scope — 'api'
- Созданный токен впишите как третий аргумент в args
- В аргументе cmd этого же файла укажите полный путь к скрипту gitlab-create-issue.py
- Если вы настраиваете хук на Windows, то вместо этого укажите в cmd путь к интерпретатору python (или просто имя, если он есть в PATH), а в качестве первого аргумента в args добавьте путь к скрипту хука
"cmd": "python", "args": [ "C:\\svacer-hooks\\gitlab-create-issue.py", "https://gitlab.example.com", ...
- Запустите svacer с указанием пути к файлу hooks.json в аргументе hooks
svacer server --hooks=/home/user/svacer/hooks.json
- Хук будет доступен в UI Svacer, на правой панели, в Details > Hooks > Run
- После нажатия на хук он выполнится и в указанном проекте гитлаба будет создан новый кейс с информацией из предупреждения в заголовке и описании, в качестве лейбла (тега) будет задан severity чекера
Jira
На сервере, где будет выполняться хук, должен быть установлен python3.
- Скачайте и распакуйте архив со скриптом и конфигом хука: Jira-hooks.zip
- Сделайте файл jira-create-issue.py исполняемым
chmod u+x jira-create-issue.py
- Поменяйте в файле jira-create-issue.py путь к интерпретатору python3, если в вашей системе он не такой, как указано там в первой строчке
- В файле hooks.json поменяйте URL джиры в args
- В качестве второго аргумента args впишите ID проекта джиры. Его можно найти на главной странице проекта в графе Key, или взять из URL проекта
- Создайте Personal Access Token для аккаунта, от которого будут создаваться кейсы в Profile > Personal Access Tokens > Create Token. У этого аккаунта должны быть права на создание кейсов в соответствующем проекте
- Созданный токен впишите как третий аргумент в args
- В качестве четвертого аргумента в args укажите тип кейса, который будет создаваться. Посмотреть какие типы доступны в вашем проекте можно при создании кейса в поле issue type
- В аргументе cmd этого же файла укажите полный путь к скрипту jira-create-issue.py
- Если вы настраиваете хук на Windows, то вместо этого укажите в cmd путь к интерпретатору python (или просто имя, если он есть в PATH), а в качестве первого аргумента в args добавьте путь к скрипту хука
"cmd": "python", "args": [ "C:\\svacer-hooks\\jira-create-issue.py", "https://jira.example.com", ...
- Запустите svacer с указанием пути к файлу hooks.json в аргументе hooks
svacer server --hooks=/home/user/svacer/hooks.json
- Хук будет доступен в UI Svacer, на правой панели, в Details > Hooks > Run
- После нажатия на хук он выполнится и в указанном проекте джиры будет создан новый кейс с информацией из предупреждения в заголовке и описании, в качестве лейбла (тега) будет задан severity чекера
Redmine
На сервере, где будет выполняться хук, должен быть установлен python3.
- Скачайте и распакуйте архив со скриптом и конфигом хука: Redmine-hooks.zip
- Сделайте файл redmine-create-issue.py исполняемым
chmod u+x redmine-create-issue.py
- Поменяйте в файле redmine-create-issue.py путь к интерпретатору python3, если в вашей системе он не такой, как указано там в первой строчке
- В файле hooks.json поменяйте URL редмайна в args
- В качестве второго аргумента args впишите ID проекта редмайна. Его можно найти в настройках проекта, или взять из URL
- В Redmine должен быть включен REST API в Administration > Settings > API
- Когда REST API включен, вы найдете свой API-ключ на странице аккаунта (/my/account), в правой панели
- Впишите этот ключ как третий аргумент в args
- В аргументе cmd этого же файла укажите полный путь к скрипту redmine-create-issue.py
- Если вы настраиваете хук на Windows, то вместо этого укажите в cmd путь к интерпретатору python (или просто имя, если он есть в PATH), а в качестве первого аргумента в args добавьте путь к скрипту хука
"cmd": "python", "args": [ "C:\\svacer-hooks\\redmine-create-issue.py", "https://redmine.example.com", ...
- Запустите svacer с указанием пути к файлу hooks.json в аргументе hooks
svacer server --hooks=/home/user/svacer/hooks.json
- Хук будет доступен в UI Svacer, на правой панели, в Details > Hooks > Run
- После нажатия на хук он выполнится и в указанном проекте редмайна будет создан новый кейс с информацией из предупреждения в заголовке и описании