Files
npm-its-doc/teamcity/run-workflow.ps1
T
admrene 821486e2a0 feat(jira): auf REST API v2 umgestellt und Ticket-Schließung erweitert
- Jira Core API-Aufrufe von `rest/api/3` auf `rest/api/2` umgestellt
- Ticket-Schließung um JQL-basierte Selektion erweitert:
  - `JIRA_CLOSE_JQL`
  - `JIRA_CLOSE_JQL_MAX_RESULTS` (Default: 100)
- Kombination aus expliziten Keys und per JQL gefundenen Keys implementiert (dedupliziert)
- Optionales Setzen der Resolution beim Transition-Call ergänzt:
  - `JIRA_CLOSE_RESOLUTION_NAME`
- Workflow-Logging für Close-JQL, gefundene Tickets und Resolution erweitert
- Config/Help um neue Close-Parameter ergänzt
- `.env.example` und README mit neuer Konfiguration aktualisiert
- TeamCity-Skripte (`run-workflow.sh`, `run-workflow.ps1`) um neue ENV-Variablen ergänzt
2026-03-24 08:20:25 +00:00

54 lines
1.7 KiB
PowerShell

$ErrorActionPreference = "Stop"
$imageTag = if ($env:TEAMCITY_BUILD_NUMBER) { $env:TEAMCITY_BUILD_NUMBER } else { "local" }
$imageName = "its-workflow-npm:$imageTag"
$hostReportDir = "${PWD}\report-output"
$containerReportDir = "/opt/app-root/src/report-output"
Write-Host "Builde Docker Image $imageName"
docker build -t $imageName .
Write-Host "Starte Workflow Container"
Write-Host "Kontext: IMAGE_TAG=$imageTag, JIRA_DRY_RUN=$($env:JIRA_DRY_RUN), JIRA_CLOSE_ISSUE_KEYS=$($env:JIRA_CLOSE_ISSUE_KEYS), JIRA_CLOSE_JQL=$($env:JIRA_CLOSE_JQL), ATLASSIAN_WIKI_ENABLED=$($env:ATLASSIAN_WIKI_ENABLED), SMTP_ENABLED=$($env:SMTP_ENABLED)"
Write-Host "Volume Mapping: $hostReportDir -> $containerReportDir"
docker run --rm `
-e JIRA_BASE_URL `
-e JIRA_USER_EMAIL `
-e JIRA_API_TOKEN `
-e JIRA_SOURCE_JQL `
-e JIRA_SOURCE_MAX_RESULTS `
-e JIRA_TARGET_PROJECT_KEY `
-e JIRA_TARGET_BOARD_ID `
-e JIRA_TARGET_ISSUE_TYPE `
-e JIRA_TARGET_SUMMARY_PREFIX `
-e JIRA_TARGET_LABELS `
-e SOLUTION_VERSION `
-e XRAY_REPORT_URL `
-e SONAR_REPORT_URL `
-e JIRA_CLOSE_ISSUE_KEYS `
-e JIRA_CLOSE_JQL `
-e JIRA_CLOSE_JQL_MAX_RESULTS `
-e JIRA_CLOSE_ALLOWED_STATUSES `
-e JIRA_CLOSE_TRANSITION_NAME `
-e JIRA_CLOSE_RESOLUTION_NAME `
-e ATLASSIAN_WIKI_ENABLED `
-e ATLASSIAN_WIKI_BASE_URL `
-e ATLASSIAN_WIKI_USER_EMAIL `
-e ATLASSIAN_WIKI_API_TOKEN `
-e ATLASSIAN_WIKI_SPACE_KEY `
-e ATLASSIAN_WIKI_PARENT_PAGE_ID `
-e ATLASSIAN_WIKI_TITLE_PREFIX `
-e JIRA_DRY_RUN `
-e OUTPUT_HTML_PATH `
-e SMTP_ENABLED `
-e SMTP_HOST `
-e SMTP_PORT `
-e SMTP_SECURE `
-e SMTP_USER `
-e SMTP_PASS `
-e SMTP_FROM `
-e SMTP_TO `
-e SMTP_SUBJECT_PREFIX `
-v "${hostReportDir}:$containerReportDir" `
$imageName