# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions

name: build KCC for windows with docker

on:
  workflow_dispatch:
  push:
    tags:
      - "v*.*.*"

jobs:
  build:
    strategy:
      matrix:
        entry: [ kcc-c2e, kcc-c2p ]
        include:
          - entry: kcc-c2e
            capital: KCC_c2e
          - entry: kcc-c2p
            capital: KCC_c2p
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Package Application
        uses: JackMcKew/pyinstaller-action-windows@main
        with:
          path: .
          spec: ./${{ matrix.entry }}.spec
      - name: rename binaries
        run: |   
          version_built=$(cat kindlecomicconverter/__init__.py | grep version | awk '{print $3}' | sed "s/[^.0-9b]//g")
          mv dist/windows/${{ matrix.entry }}.exe dist/windows/${{ matrix.capital }}_${version_built}.exe 

      - name: upload-unsigned-artifact
        id: upload-unsigned-artifact
        uses: actions/upload-artifact@v4
        with:
          name: windows-build-${{ matrix.entry }}
          path: dist/windows/*.exe
      
      - id: optional_step_id
        uses: signpath/github-action-submit-signing-request@v1.2
        if: ${{ github.repository == 'ciromattia/kcc' }}
        with:
          api-token: '${{ secrets.SIGNPATH_API_TOKEN }}'
          organization-id: '1dc1bad6-4a8c-4f85-af30-5c5d3d392ea6'
          project-slug: 'kcc'
          signing-policy-slug: 'release-signing'
          github-artifact-id: '${{ steps.upload-unsigned-artifact.outputs.artifact-id }}'
          wait-for-completion: true
          output-artifact-directory: 'dist/windows/'
      
      - name: Release
        uses: softprops/action-gh-release@v2
        if: startsWith(github.ref, 'refs/tags/')
        with:
          prerelease: true
          generate_release_notes: true
          files: |
            LICENSE.txt
            dist/windows/*.exe
