name: Release Notes

on:
  pull_request:
    types: [ assigned, opened, synchronize, reopened, edited ]
env:
  CURRENT_RELEASE_JSON_FILE_PATH: tool/release_notes/release_notes.json
jobs:
  release-preparedness:
    runs-on: ubuntu-latest
    name: Verify PR Release Note Requirements
    steps:

      - name: Get Pull Request Number
        id: get-pull-request-number
        run: |
          PULL_REQUEST_NUMBER=$(jq --raw-output .pull_request.number "$GITHUB_EVENT_PATH")
          echo "::set-output name=PULL_REQUEST_NUMBER::$PULL_REQUEST_NUMBER"

      - name: Check if we have modified release_notes.json 
        id: get-modified-files
        env:
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          PULL_NUMBER: ${{steps.get-pull-request-number.outputs.PULL_REQUEST_NUMBER}}
        run: |
          FILES_RESPONSE=$(gh api /repos/flutter/devtools/pulls/$PULL_NUMBER/files)
          echo "FILES_RESPONSE: $FILES_RESPONSE"
          
          HAS_CHANGED_RELEASE_NOTES=$(echo $FILES_RESPONSE | jq '.[].filename' | jq -s '. | any(. == env.CURRENT_RELEASE_JSON_FILE_PATH)')
          echo "HAS_CHANGED_RELEASE_NOTES: $HAS_CHANGED_RELEASE_NOTES"
          echo "::set-output name=HAS_CHANGED_RELEASE_NOTES::$HAS_CHANGED_RELEASE_NOTES"
      - name: Get PR Description
        id: check-release-note-exceptions
        env:
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          PULL_NUMBER: ${{steps.get-pull-request-number.outputs.PULL_REQUEST_NUMBER}}
        run: |
          PULLS_RESPONSE=$(gh api /repos/flutter/devtools/pulls/$PULL_NUMBER)
          DESCRIPTION_BODY=$(echo $PULLS_RESPONSE | jq '.body')
          echo $DESCRIPTION_BODY
          if $(echo $DESCRIPTION_BODY | grep -q "> NO RELEASE NOTE CHANGES:"); then
            HAS_RELEASE_NOTE_EXCEPTION_STRING=true
          else
            HAS_RELEASE_NOTE_EXCEPTION_STRING=false
          fi
          echo "::set-output name=HAS_RELEASE_NOTE_EXCEPTION_STRING::$HAS_RELEASE_NOTE_EXCEPTION_STRING"

      - name: Check Release Preparedness requirements
        env:
          HAS_CHANGED_RELEASE_NOTES: ${{steps.get-modified-files.outputs.HAS_CHANGED_RELEASE_NOTES}}
          HAS_RELEASE_NOTE_EXCEPTION_STRING: ${{steps.check-release-note-exceptions.outputs.HAS_RELEASE_NOTE_EXCEPTION_STRING}}
        run: |
          if [ "$HAS_CHANGED_RELEASE_NOTES" != "true" ] && [ "$HAS_RELEASE_NOTE_EXCEPTION_STRING" != "true" ] ; then
            echo "Release Preparedness check failed"
            echo "::error file=$CURRENT_RELEASE_JSON_FILE_PATH,line=0,col=0,endColumn=0,title='Release Notes Weren\'t Modified'::Please add a release note entry or a reason to your description using: \`> NO RELEASE NOTE CHANGES: [reason goes here]\`"
            exit 1
          fi

      - uses: dart-lang/setup-dart@9a04e6d73cca37bd455e0608d7e5092f881fd603
        name: Setup Dart

      - name: Verify the release note content
        run: |
          cd tool/
          dart pub get
          dart release_note_helper.dart verify -f "../$CURRENT_RELEASE_JSON_FILE_PATH"

      - name: Check PR Urls
        env:
          PULL_NUMBER: ${{steps.get-pull-request-number.outputs.PULL_REQUEST_NUMBER}}
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        run: |
          cd tool/
          dart pub get
          dart ./release_note_helper.dart pr-url \
            -f "../$CURRENT_RELEASE_JSON_FILE_PATH" \
            -u https://github.com/flutter/devtools/pull/$PULL_NUMBER 
