name: Update Homey App Version
on:
  workflow_dispatch:
    inputs:
      version:
        type: choice
        description: Version
        required: true
        default: patch
        options:
          - major
          - minor
          - patch
      changelog:
        type: string
        description: Changelog
        required: true

# Needed in order to push the commit and create a release
permissions:
  contents: write

jobs:
  main:
    name: Update Homey App Version
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Update Homey App Version
        uses: athombv/github-action-homey-app-version@master
        id: update_app_version
        with:
          version: ${{ inputs.version }}
          changelog: ${{ inputs.changelog }}

      - name: Commit & Push
        run: |
          git config --local user.name "github-actions[bot]"
          git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com"

          git add -A
          git commit -m "Update Homey App Version to v${{ steps.update_app_version.outputs.version }}"
          git tag "v${{ steps.update_app_version.outputs.version }}"

          git push origin HEAD --tags
          gh release create "v${{ steps.update_app_version.outputs.version }}" -t "v${{ steps.update_app_version.outputs.version }}" --notes "" --generate-notes
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          GH_TOKEN: ${{ github.token }}
