Files
pi-kit/skills/jira-workflow/scripts/add-comment.sh
Aleksey Shakhmatov 0725b6b034 feat(skills): add jira-workflow, repo-map, docs-map, go-standards
- descriptions state WHEN each skill applies
- jira-workflow ships curl scripts reading TRACKER_URL/JIRA_TOKEN from env, no hardcoded secrets/URLs
- repo-map/docs-map defer values to session corporate context; company specifics left as TODO
- go-standards uses realistic Go defaults, company-specific bits marked TODO
2026-07-16 10:57:00 +03:00

28 lines
948 B
Bash
Executable File

#!/usr/bin/env bash
# add-comment.sh <ISSUE_KEY> "<comment text>"
# Adds a comment to a tracker issue.
# Reads TRACKER_URL and JIRA_TOKEN from the environment. No secrets are hardcoded.
set -euo pipefail
KEY="${1:?usage: add-comment.sh <ISSUE_KEY> \"<text>\"}"
TEXT="${2:?usage: add-comment.sh <ISSUE_KEY> \"<text>\"}"
: "${TRACKER_URL:?set TRACKER_URL (or take the tracker address from the session corporate context)}"
: "${JIRA_TOKEN:?set JIRA_TOKEN (tracker personal access token)}"
BASE="${TRACKER_URL%/}"
# Build JSON body safely (jq escapes the text); fall back to a naive body if jq is absent.
if command -v jq >/dev/null 2>&1; then
BODY="$(jq -n --arg b "$TEXT" '{body: $b}')"
else
BODY="{\"body\": \"${TEXT//\"/\\\"}\"}"
fi
curl -fsS -X POST \
-H "Authorization: Bearer ${JIRA_TOKEN}" \
-H "Content-Type: application/json" \
-d "$BODY" \
"${BASE}/rest/api/2/issue/${KEY}/comment" >/dev/null
echo "Comment added to ${KEY}"