Для автоматического извлечения `issueKey` из имени ветки или сообщения коммита и последующего добавления комментария в задачу на Jira можно использовать несколько подходов.
### 1. Использование скриптов
Вы можете написать скрипт, который будет запускаться при слиянии ветки и извлекать `issueKey` из названия ветки. Например, если ваша ветка называется `feature/ZADACHA-122-new-feature`, то вы можете извлечь `ZADACHA-122` из ее имени.
Вот пример на Python:
```python
import re
def extract_issue_key(branch_name):
# Регулярное выражение для извлечения issueKey
match = re.search(r'\b[A-Z]+-\d+\b', branch_name)
if match:
return match.group(0)
return None
branch_name = 'feature/ZADACHA-122-new-feature'
issue_key = extract_issue_key(branch_name)
if issue_key:
print(f'Extracted issue key: {issue_key}')
# Здесь добавьте код для отправки комментария к задаче на Jira
# jiraComment(body='Отправлено на тестовый', issueKey=issue_key)
```
### 2. Настройка CI/CD
Если вы используете систему CI/CD, такую как Jenkins, GitLab CI/CD или GitHub Actions, вы можете использовать шаги для выполнения скрипта на основе имени ветки. Вот пример на GitLab CI/CD:
```yaml
stages:
- comment
comment:
stage: comment
script:
- export ISSUE_KEY=$(echo "$CI_COMMIT_REF_NAME" | grep -oP '\b[A-Z]+-\d+\b')
- if [ ! -z "$ISSUE_KEY" ]; then curl -u <username>:<api_token> -X POST -H 'Content-Type: application/json' --data '{"body":"Отправлено на тестовый"}' "https://your-jira-instance/rest/api/2/issue/$ISSUE_KEY/comments"; fi
```
### 3. Использование вебхуков
Если ваша система поддерживает вебхуки, вы можете настраивать вебхук на события слияния, который будет извлекать ключ и добавлять комментарий.
### 4. Использование плагинов
Если вы используете системы, такие как JIRA, GitHub или GitLab, возможно, существуют плагины или интеграции, которые могут облегчить этот процесс, извлекая `issueKey` прямо из имен веток или сообщений коммитов и автоматически добавляя комментарии.
### Заключение
Помимо вышеупомянутых методов, вы также можете использовать комбинированный подход, чтобы адаптировать решение под ваши требования. Главное — убедиться, что ваш процесс будет надежным и поддерживаемым.