
name: CI

on:
  push:
    branches:
      - '*'
    tags:        
      - '*'
  pull_request:
    branches:
      - '*'

  workflow_dispatch:

jobs:
  build_windows:
    runs-on: self-hosted

    steps:
      - uses: actions/checkout@v2

      - name: Hash
        shell: cmd
        working-directory: ./
        run: echo '%GITHUB_SHA:~0,7%' > tag.inc

      - name: Tag
        shell: cmd
        working-directory: ./
        if: startsWith(github.ref, 'refs/tags/')
        run: echo '%GITHUB_REF_NAME%' > tag.inc

      - name: Compile
        shell: cmd
        working-directory: ./
        run: |
          lazbuild -B fpPS4.lpi > nul
          strip fpPS4.exe

      - name: Upload artifacts
        uses: actions/upload-artifact@v2
        if: ${{ !startsWith(github.ref, 'refs/tags/') }}
        with:
          name: fpPS4
          path: fpPS4.exe
          if-no-files-found: warn

      - name: Pack
        shell: cmd
        working-directory: ./
        if: startsWith(github.ref, 'refs/tags/')
        run: |
          mkdir sce_module
          echo "Put libSceNgs2.prx and etc. here" > sce_module/info.txt
          zip -9 -qq -r "fpPS4_%GITHUB_REF_NAME%.zip" "fpPS4.exe" "sce_module/info.txt"

      - name: Release
        uses: red-prig/action-gh-release@v1
        if: startsWith(github.ref, 'refs/tags/')
        with:
          files: ./fpPS4_${{ github.ref_name }}.zip
