Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
131 changes: 131 additions & 0 deletions .github/scripts/extract-jira-issue.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,131 @@
#!/usr/bin/env bash
set -euo pipefail

# Script to extract Jira issue from PR title and body with priority order:
# 1. Title
# 2. ticket:<url> pattern
# 3. Anywhere in description

# Usage:
# ./extract-jira-issue.sh <pr_number>
# or
# PR_TITLE="..." PR_BODY="..." ./extract-jira-issue.sh

extract_jira_issue() {
local PR_TITLE="$1"

Check warning on line 15 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Local variable 'PR_TITLE' should use lower_case naming convention.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_6774&open=AZ0fQNPECIaBrby_6774&pullRequest=5134
local PR_BODY="$2"

Check warning on line 16 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Local variable 'PR_BODY' should use lower_case naming convention.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_6775&open=AZ0fQNPECIaBrby_6775&pullRequest=5134

echo "PR Title: $PR_TITLE"
echo "PR Body:"
echo "$PR_BODY"
echo "---"

local JIRA_ISSUE=""

Check warning on line 23 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Local variable 'JIRA_ISSUE' should use lower_case naming convention.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_6776&open=AZ0fQNPECIaBrby_6776&pullRequest=5134
local FOUND_AT=""

Check warning on line 24 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Local variable 'FOUND_AT' should use lower_case naming convention.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_6777&open=AZ0fQNPECIaBrby_6777&pullRequest=5134

# Priority 1: Check title for WPB-* pattern
echo "Checking PR title for Jira issues..."
local TITLE_ISSUES

Check warning on line 28 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Local variable 'TITLE_ISSUES' should use lower_case naming convention.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_6778&open=AZ0fQNPECIaBrby_6778&pullRequest=5134
TITLE_ISSUES=$(echo "$PR_TITLE" | grep -oE '\[?WPB-[0-9]+\]?' | tr -d '[]' | sort -u || true)
local TITLE_COUNT

Check warning on line 30 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Local variable 'TITLE_COUNT' should use lower_case naming convention.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_6779&open=AZ0fQNPECIaBrby_6779&pullRequest=5134
if [ -z "$TITLE_ISSUES" ]; then

Check failure on line 31 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Use '[[' instead of '[' for conditional tests. The '[[' construct is safer and more feature-rich.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_677-&open=AZ0fQNPECIaBrby_677-&pullRequest=5134
TITLE_COUNT=0
else
TITLE_COUNT=$(echo -n "$TITLE_ISSUES" | grep -c '^')
fi

if [ "$TITLE_COUNT" -gt 1 ]; then

Check failure on line 37 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Use '[[' instead of '[' for conditional tests. The '[[' construct is safer and more feature-rich.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_677_&open=AZ0fQNPECIaBrby_677_&pullRequest=5134
echo "ERROR: Multiple Jira issues found in title (ambiguous):"

Check warning on line 38 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Redirect this error message to stderr (>&2).

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678A&open=AZ0fQNPECIaBrby_678A&pullRequest=5134
echo "$TITLE_ISSUES"
exit 1
elif [ "$TITLE_COUNT" -eq 1 ]; then

Check failure on line 41 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Use '[[' instead of '[' for conditional tests. The '[[' construct is safer and more feature-rich.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678B&open=AZ0fQNPECIaBrby_678B&pullRequest=5134
JIRA_ISSUE="$TITLE_ISSUES"
FOUND_AT="title"
echo "Found Jira issue in title: $JIRA_ISSUE"
else
# Priority 2: Check for ticket:<url> or bare Jira URL pattern with WPB-* (case-insensitive)
echo "No issue in title, checking for ticket URL patterns..."
local TICKET_ISSUES

Check warning on line 48 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Local variable 'TICKET_ISSUES' should use lower_case naming convention.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678C&open=AZ0fQNPECIaBrby_678C&pullRequest=5134
# Match both: ticket:<url> or https://.../browse/WPB-* or .../WPB-*
TICKET_ISSUES=$(echo "$PR_BODY" | grep -ioE '(ticket:|https?://[^ ]*/browse/)WPB-[0-9]+' | grep -ioE 'WPB-[0-9]+' | sort -u || true)
local TICKET_COUNT

Check warning on line 51 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Local variable 'TICKET_COUNT' should use lower_case naming convention.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678D&open=AZ0fQNPECIaBrby_678D&pullRequest=5134
TICKET_COUNT=$(echo -n "$TICKET_ISSUES" | grep -c '^' || echo 0)
# Handle empty string case
if [ -z "$TICKET_ISSUES" ]; then

Check failure on line 54 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Use '[[' instead of '[' for conditional tests. The '[[' construct is safer and more feature-rich.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678E&open=AZ0fQNPECIaBrby_678E&pullRequest=5134
TICKET_COUNT=0
fi

if [ "$TICKET_COUNT" -gt 1 ]; then

Check failure on line 58 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Use '[[' instead of '[' for conditional tests. The '[[' construct is safer and more feature-rich.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678F&open=AZ0fQNPECIaBrby_678F&pullRequest=5134
echo "ERROR: Multiple Jira issues found in ticket URLs (ambiguous):"

Check warning on line 59 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Redirect this error message to stderr (>&2).

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678G&open=AZ0fQNPECIaBrby_678G&pullRequest=5134
echo "$TICKET_ISSUES"
exit 1
elif [ "$TICKET_COUNT" -eq 1 ]; then

Check failure on line 62 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Use '[[' instead of '[' for conditional tests. The '[[' construct is safer and more feature-rich.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678H&open=AZ0fQNPECIaBrby_678H&pullRequest=5134
JIRA_ISSUE="$TICKET_ISSUES"
FOUND_AT="ticket URL"
echo "Found Jira issue in ticket URL: $JIRA_ISSUE"
else
# Priority 3: Check anywhere in description for WPB-*
echo "No ticket URL found, checking entire description..."
local DESC_ISSUES

Check warning on line 69 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Local variable 'DESC_ISSUES' should use lower_case naming convention.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678I&open=AZ0fQNPECIaBrby_678I&pullRequest=5134
DESC_ISSUES=$(echo "$PR_BODY" | grep -oE '\[?WPB-[0-9]+\]?' | tr -d '[]' | sort -u || true)
local DESC_COUNT

Check warning on line 71 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Local variable 'DESC_COUNT' should use lower_case naming convention.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678J&open=AZ0fQNPECIaBrby_678J&pullRequest=5134
if [ -z "$DESC_ISSUES" ]; then

Check failure on line 72 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Use '[[' instead of '[' for conditional tests. The '[[' construct is safer and more feature-rich.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678K&open=AZ0fQNPECIaBrby_678K&pullRequest=5134
DESC_COUNT=0
else
DESC_COUNT=$(echo -n "$DESC_ISSUES" | grep -c '^')
fi

if [ "$DESC_COUNT" -gt 1 ]; then

Check failure on line 78 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Use '[[' instead of '[' for conditional tests. The '[[' construct is safer and more feature-rich.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678L&open=AZ0fQNPECIaBrby_678L&pullRequest=5134
echo "ERROR: Multiple Jira issues found in description (ambiguous):"

Check warning on line 79 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Redirect this error message to stderr (>&2).

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678M&open=AZ0fQNPECIaBrby_678M&pullRequest=5134
echo "$DESC_ISSUES"
exit 1
elif [ "$DESC_COUNT" -eq 1 ]; then

Check failure on line 82 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Use '[[' instead of '[' for conditional tests. The '[[' construct is safer and more feature-rich.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678N&open=AZ0fQNPECIaBrby_678N&pullRequest=5134
JIRA_ISSUE="$DESC_ISSUES"
FOUND_AT="description"
echo "Found Jira issue in description: $JIRA_ISSUE"
fi
fi
fi

if [ -z "$JIRA_ISSUE" ]; then

Check failure on line 90 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Use '[[' instead of '[' for conditional tests. The '[[' construct is safer and more feature-rich.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678O&open=AZ0fQNPECIaBrby_678O&pullRequest=5134
echo "No Jira issue found"
return 1
else
echo "========================================="
echo "Final Jira issue: $JIRA_ISSUE (found in $FOUND_AT)"
echo "========================================="
# Output in format that can be easily parsed
echo "JIRA_ISSUE=$JIRA_ISSUE"
echo "FOUND_AT=$FOUND_AT"
return 0
fi
}

# Main script logic
if [ $# -eq 1 ]; then

Check failure on line 105 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Use '[[' instead of '[' for conditional tests. The '[[' construct is safer and more feature-rich.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678P&open=AZ0fQNPECIaBrby_678P&pullRequest=5134
# PR number provided, fetch from GitHub
PR_NUMBER="$1"
if ! command -v gh &> /dev/null; then
echo "ERROR: gh CLI is not installed. Please install it or provide PR_TITLE and PR_BODY environment variables."

Check warning on line 109 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Redirect this error message to stderr (>&2).

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678Q&open=AZ0fQNPECIaBrby_678Q&pullRequest=5134
exit 1
fi

echo "Fetching PR #$PR_NUMBER..."
PR_DATA=$(gh pr view "$PR_NUMBER" --json title,body)
PR_TITLE=$(echo "$PR_DATA" | jq -r '.title')
PR_BODY=$(echo "$PR_DATA" | jq -r '.body // ""')

extract_jira_issue "$PR_TITLE" "$PR_BODY"
elif [ -n "${PR_TITLE:-}" ] && [ -n "${PR_BODY:-}" ]; then

Check failure on line 119 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Use '[[' instead of '[' for conditional tests. The '[[' construct is safer and more feature-rich.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678R&open=AZ0fQNPECIaBrby_678R&pullRequest=5134

Check failure on line 119 in .github/scripts/extract-jira-issue.sh

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Use '[[' instead of '[' for conditional tests. The '[[' construct is safer and more feature-rich.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0fQNPECIaBrby_678S&open=AZ0fQNPECIaBrby_678S&pullRequest=5134
# Environment variables provided
extract_jira_issue "$PR_TITLE" "$PR_BODY"
else
echo "Usage:"
echo " $0 <pr_number> # Fetch PR from GitHub"
echo " PR_TITLE=\"...\" PR_BODY=\"...\" $0 # Use environment variables"
echo ""
echo "Examples:"
echo " $0 5134"
echo " PR_TITLE=\"WPB-12345 Fix bug\" PR_BODY=\"Some description\" $0"
exit 1
fi
196 changes: 196 additions & 0 deletions .github/workflows/jira-fix-version.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,196 @@
name: Set Jira Fix Version

on:
push:
tags:
- "test/*"

jobs:
set-fix-version:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Extract and calculate version
id: version
run: |
# Extract version from tag (e.g., chart/5.28.31 -> 5.28.31)
TAG_NAME="${GITHUB_REF#refs/tags/test/}"
echo "chart_version=$TAG_NAME" >> $GITHUB_OUTPUT

# Parse version components
IFS='.' read -r MAJOR MINOR PATCH <<< "$TAG_NAME"

# Round up: if patch > 0, increment minor and set patch to 0
if [ "$PATCH" -gt 0 ]; then
MINOR=$((MINOR + 1))
fi

RELEASE_VERSION="${MAJOR}.${MINOR}.0"
echo "release_version=$RELEASE_VERSION" >> $GITHUB_OUTPUT

echo "Chart version: $TAG_NAME"
echo "Release version (rounded up): $RELEASE_VERSION"

- name: Find associated PR
id: find_pr
env:
GH_TOKEN: ${{ github.token }}
run: |
# Get the commit SHA for this tag
COMMIT_SHA=$(git rev-list -n 1 "${GITHUB_REF}")
echo "Commit SHA: $COMMIT_SHA"

# Get the commit message
COMMIT_MESSAGE=$(git log -1 --format=%s "$COMMIT_SHA")
echo "Commit message: $COMMIT_MESSAGE"

# Extract PR number from commit message (format: "... (#1234)")
# This is the standard format when PRs are merged via GitHub
PR_NUMBER=$(echo "$COMMIT_MESSAGE" | grep -oE '\(#[0-9]+\)' | grep -oE '[0-9]+' || echo "")

if [ -z "$PR_NUMBER" ]; then
echo "No PR number found in commit message"
echo "pr_number=" >> $GITHUB_OUTPUT
else
echo "Found PR #$PR_NUMBER"
echo "pr_number=$PR_NUMBER" >> $GITHUB_OUTPUT
fi

- name: Extract Jira issues
id: jira_issues
if: steps.find_pr.outputs.pr_number != ''
env:
GH_TOKEN: ${{ github.token }}
run: |
PR_NUMBER="${{ steps.find_pr.outputs.pr_number }}"

# Get PR title and body
PR_DATA=$(gh pr view "$PR_NUMBER" --json title,body)
PR_TITLE=$(echo "$PR_DATA" | jq -r '.title')
PR_BODY=$(echo "$PR_DATA" | jq -r '.body // ""')

echo "PR Title: $PR_TITLE"
echo "PR Body:"
echo "$PR_BODY"
echo "---"

JIRA_ISSUE=""
FOUND_AT=""

# Priority 1: Check title for WPB-* pattern
echo "Checking PR title for Jira issues..."
TITLE_ISSUES=$(echo "$PR_TITLE" | grep -oE '\[?WPB-[0-9]+\]?' | tr -d '[]' | sort -u || true)
if [ -z "$TITLE_ISSUES" ]; then
TITLE_COUNT=0
else
TITLE_COUNT=$(echo -n "$TITLE_ISSUES" | grep -c '^')
fi

if [ "$TITLE_COUNT" -gt 1 ]; then
echo "ERROR: Multiple Jira issues found in title (ambiguous):"
echo "$TITLE_ISSUES"
exit 1
elif [ "$TITLE_COUNT" -eq 1 ]; then
JIRA_ISSUE="$TITLE_ISSUES"
FOUND_AT="title"
echo "Found Jira issue in title: $JIRA_ISSUE"
else
# Priority 2: Check for ticket:<url> or bare Jira URL pattern with WPB-* (case-insensitive)
echo "No issue in title, checking for ticket URL patterns..."
# Match both: ticket:<url> or https://.../browse/WPB-* or .../WPB-*
TICKET_ISSUES=$(echo "$PR_BODY" | grep -ioE '(ticket:|https?://[^ ]*/browse/)WPB-[0-9]+' | grep -ioE 'WPB-[0-9]+' | sort -u || true)
if [ -z "$TICKET_ISSUES" ]; then
TICKET_COUNT=0
else
TICKET_COUNT=$(echo -n "$TICKET_ISSUES" | grep -c '^')
fi

if [ "$TICKET_COUNT" -gt 1 ]; then
echo "ERROR: Multiple Jira issues found in ticket URLs (ambiguous):"
echo "$TICKET_ISSUES"
exit 1
elif [ "$TICKET_COUNT" -eq 1 ]; then
JIRA_ISSUE="$TICKET_ISSUES"
FOUND_AT="ticket URL"
echo "Found Jira issue in ticket URL: $JIRA_ISSUE"
else
# Priority 3: Check anywhere in description for WPB-*
echo "No ticket URL found, checking entire description..."
DESC_ISSUES=$(echo "$PR_BODY" | grep -oE '\[?WPB-[0-9]+\]?' | tr -d '[]' | sort -u || true)
if [ -z "$DESC_ISSUES" ]; then
DESC_COUNT=0
else
DESC_COUNT=$(echo -n "$DESC_ISSUES" | grep -c '^')
fi

if [ "$DESC_COUNT" -gt 1 ]; then
echo "ERROR: Multiple Jira issues found in description (ambiguous):"
echo "$DESC_ISSUES"
exit 1
elif [ "$DESC_COUNT" -eq 1 ]; then
JIRA_ISSUE="$DESC_ISSUES"
FOUND_AT="description"
echo "Found Jira issue in description: $JIRA_ISSUE"
fi
fi
fi

if [ -z "$JIRA_ISSUE" ]; then
echo "No Jira issue found in PR #$PR_NUMBER"
echo "issue=" >> $GITHUB_OUTPUT
echo "found_at=" >> $GITHUB_OUTPUT
else
echo "Final Jira issue: $JIRA_ISSUE (found in $FOUND_AT)"
echo "issue=$JIRA_ISSUE" >> $GITHUB_OUTPUT
echo "found_at=$FOUND_AT" >> $GITHUB_OUTPUT
fi

- name: Summary
run: |
echo "========================================="
echo "Chart Tag: ${GITHUB_REF#refs/tags/}"
echo "Chart Version: ${{ steps.version.outputs.chart_version }}"
echo "Release Version (Fix Version): ${{ steps.version.outputs.release_version }}"
echo "Associated PR: ${{ steps.find_pr.outputs.pr_number || 'None found' }}"
echo "Jira Issue: ${{ steps.jira_issues.outputs.issue || 'None found' }}"
echo "Found in: ${{ steps.jira_issues.outputs.found_at || 'N/A' }}"
echo "========================================="

# Create a formatted summary for GitHub Actions UI
cat >> $GITHUB_STEP_SUMMARY << EOF
## Jira Fix Version Assignment

- **Chart Tag**: \`${GITHUB_REF#refs/tags/}\`
- **Chart Version**: \`${{ steps.version.outputs.chart_version }}\`
- **Release Version (Fix Version)**: \`${{ steps.version.outputs.release_version }}\`
- **Associated PR**: ${{ steps.find_pr.outputs.pr_number && format('#{0}', steps.find_pr.outputs.pr_number) || 'None found' }}
- **Jira Issue**: \`${{ steps.jira_issues.outputs.issue || 'None found' }}\`
- **Found in**: ${{ steps.jira_issues.outputs.found_at || 'N/A' }}

### Next Steps
When ready to enable Jira updates:
1. Add Jira credentials to GitHub Secrets
2. Uncomment the "Update Jira" step in this workflow
3. Test with a real chart tag
EOF

# TODO: Uncomment this step when ready to actually update Jira

Check warning on line 180 in .github/workflows/jira-fix-version.yaml

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Complete the task associated to this "TODO" comment.

See more on https://sonarcloud.io/project/issues?id=wireapp_wire-server&issues=AZ0Ft4B8R4ixvkCx1fgP&open=AZ0Ft4B8R4ixvkCx1fgP&pullRequest=5134
# - name: Update Jira
# if: steps.jira_issues.outputs.issue != ''
# run: |
# # This is where you would make API calls to Jira
# # to set the fix version on the issue
# ISSUE="${{ steps.jira_issues.outputs.issue }}"
# FIX_VERSION="${{ steps.version.outputs.release_version }}"
#
# echo "Would update $ISSUE with fix version $FIX_VERSION"
#
# # Example Jira API call:
# # curl -X PUT \
# # -H "Authorization: Basic ${{ secrets.JIRA_API_TOKEN }}" \
# # -H "Content-Type: application/json" \
# # -d "{\"update\":{\"fixVersions\":[{\"add\":{\"name\":\"$FIX_VERSION\"}}]}}" \
# # "https://your-jira-instance.atlassian.net/rest/api/2/issue/$ISSUE"