Procházet zdrojové kódy

chore: Remove Jira sync workflow

We use a different method instead
Michael Bromley před 6 měsíci
rodič
revize
12f6260cd5
1 změnil soubory, kde provedl 0 přidání a 161 odebrání
  1. 0 161
      .github/workflows/sync-jira.yml

+ 0 - 161
.github/workflows/sync-jira.yml

@@ -1,161 +0,0 @@
-name: Sync core-team issues to Jira
-
-on:
-  issues:
-    types: [opened, reopened, edited, labeled]
-
-
-permissions:
-  issues: write
-  contents: read
-
-jobs:
-  sync:
-    if: contains(github.event.issue.labels.*.name, 'core-team')
-    runs-on: ubuntu-latest
-    steps:
-      - name: Create or update Jira ticket
-        id: jira
-        env:
-          JIRA_EMAIL:  ${{ secrets.JIRA_EMAIL }}
-          JIRA_TOKEN:  ${{ secrets.JIRA_API_TOKEN }}
-          JIRA_BASE:   ${{ secrets.JIRA_BASE }}    
-          PROJECT_KEY: VEN
-          ISSUE_TITLE: ${{ github.event.issue.title }}
-        run: |
-          set -e  # Exit on any error
-          
-          # Verify environment variables
-          if [ -z "$JIRA_EMAIL" ] || [ -z "$JIRA_TOKEN" ] || [ -z "$JIRA_BASE" ]; then
-            echo "Error: Required Jira environment variables are not set"
-            exit 1
-          fi
-          
-          GH_URL="https://github.com/${{ github.repository }}/issues/${{ github.event.issue.number }}"
-          echo "GitHub URL: $GH_URL"
-          
-          # Test jq installation
-          if ! command -v jq &> /dev/null; then
-            echo "Error: jq is not installed"
-            exit 1
-          fi
-          
-          # Prepare the data with error checking
-          SUMMARY="$ISSUE_TITLE"
-          DESC="Imported from GitHub: $GH_URL"
-          
-          # Create the search request body
-          SEARCH_BODY=$(jq -n --arg url "$GH_URL" --arg proj "$PROJECT_KEY" '
-            {
-              "jql": "project = \($proj) AND description ~ \"\($url)\""
-            }' || {
-              echo "Error creating search request body"
-              exit 1
-            })
-          
-          echo "Search request body: $SEARCH_BODY"
-          
-          # Search with JQL endpoint
-          SEARCH_RESULT=$(curl -f -s -u "$JIRA_EMAIL:$JIRA_TOKEN" \
-            -H "Content-Type: application/json" \
-            -H "Accept: application/json" \
-            --data "$SEARCH_BODY" \
-            "$JIRA_BASE/rest/api/3/search" || { 
-              echo "Error: Jira search failed with status $?"
-              exit 1
-            })
-          
-          # Parse the key with error checking
-          # The search endpoint returns issues in an issues array
-          KEY=$(echo "$SEARCH_RESULT" | jq -r 'if .issues[0] then .issues[0].key else empty end' || { 
-            echo "Error parsing search result"
-            exit 1
-          })
-          
-          echo "Found existing key: $KEY"
-          
-          if [ -z "$KEY" ]; then
-            echo "No existing ticket found, creating new one"
-            BODY=$(jq -n --arg summary "$SUMMARY" --arg url "$GH_URL" --arg proj "$PROJECT_KEY" '
-              {
-                "fields": {
-                  "project": {
-                    "key": $proj
-                  },
-                  "summary": $summary,
-                  "description": {
-                    "type": "doc",
-                    "version": 1,
-                    "content": [
-                      {
-                        "type": "paragraph",
-                        "content": [
-                          {
-                            "type": "text",
-                            "text": "Imported from GitHub: "
-                          },
-                          {
-                            "type": "inlineCard",
-                            "attrs": {
-                              "url": $url
-                            }
-                          }
-                        ]
-                      }
-                    ]
-                  },
-                  "issuetype": {
-                    "name": "Task"
-                  }
-                }
-              }' || {
-                echo "Error creating request body"
-                exit 1
-              })
-            
-            echo "Creating ticket with body: $BODY"
-            
-            # Create with error checking
-            CREATE_RESULT=$(curl -f -s -u "$JIRA_EMAIL:$JIRA_TOKEN" \
-                   -H "Content-Type: application/json" \
-                   -H "Accept: application/json" \
-                   --data "$BODY" "$JIRA_BASE/rest/api/3/issue" || {
-                     echo "Error: Jira create failed with status $?"
-                     exit 1
-                   })
-            
-            echo "Create result: $CREATE_RESULT"
-            
-            KEY=$(echo "$CREATE_RESULT" | jq -r .key || {
-              echo "Error parsing create result"
-              exit 1
-            })
-            
-            echo "Created new key: $KEY"
-          fi
-          
-          if [ -z "$KEY" ]; then
-            echo "Error: Failed to get a valid Jira key"
-            exit 1
-          fi
-          
-          echo "Final key value: $KEY"
-          echo "key=$KEY" >> $GITHUB_OUTPUT
-      - name: Record the mapping on the GH issue
-        uses: actions/github-script@v7
-        env:
-          JIRA_KEY: ${{ steps.jira.outputs.key }}
-        with:
-          script: |
-            const issue_number = context.issue.number;
-            const owner = context.repo.owner;
-            const repo  = context.repo.repo;
-            const jira  = process.env.JIRA_KEY;
-            const body  = `🔗 Linked to Core Team Jira ticket **${jira}**`;
-            const {data:comments} = await github.rest.issues.listComments({owner,repo,issue_number});
-            const existing = comments.find(c=>/Linked to Core Team Jira ticket/i.test(c.body));
-            if (existing) {
-              await github.rest.issues.updateComment({owner,repo,comment_id:existing.id,body});
-            } else {
-              await github.rest.issues.createComment({owner,repo,issue_number,body});
-            }