name: Build for Windows
on: [pull_request, push]

jobs:
  build:
    runs-on: windows-latest
    steps:
      - uses: msys2/setup-msys2@v2
        with:
          msystem: MINGW64
          update: true
          install: git
      - run: git config --global core.autocrlf input
      - uses: actions/checkout@v4
      - name: Git describe
        id: ghd
        uses: proudust/gh-describe@v2
      - name: Build Dino
        run: |
          msys2 -c './build-win64.sh --prepare'
          msys2 -c './build-win64.sh'
      - name: Build Dino installer
        run: |
          msys2 -c './build-win64.sh --build-installer'
      - name: Upload Dino installer
        uses: actions/upload-artifact@v4
        with:
          name: dino-installer
          path: windows-installer/dino-installer.exe
      - name: Release Dino installer
        if: ${{ github.ref_type == 'tag' }}
        uses: svenstaro/upload-release-action@2.9.0
        with:
          repo_token: ${{ secrets.GITHUB_TOKEN }}
          file: windows-installer/dino-installer.exe
          asset_name: dino-installer.exe
          tag: ${{ github.ref }}
          release_name: Dino ${{ steps.ghd.outputs.describe }}