name: Windows EXE build on: [push, pull_request] jobs: build: name: Windows EXE build runs-on: windows-latest steps: - name: Checkout Instaloader repository uses: actions/checkout@v2 - name: Setup Python uses: actions/setup-python@v2 with: python-version: "3.12" architecture: x64 - name: Get the tagged version id: get_version env: GITHUB_REF: ${{ github.ref }} run: echo "VERSION=${GITHUB_REF/refs\/tags\/v/}" >> $GITHUB_OUTPUT shell: bash - name: Run custom python script for EXE creation env: VERSION_TAG: v${{ steps.get_version.outputs.VERSION }} run: python deploy/windows/create_exe.py - name: Create draft release if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') id: create_release uses: actions/create-release@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: tag_name: v${{ steps.get_version.outputs.VERSION }} release_name: Version ${{ steps.get_version.outputs.VERSION }} draft: true prerelease: contains(steps.get_version.outputs.VERSION, 'a') || contains(steps.get_version.outputs.VERSION, 'b') || contains(steps.get_version.outputs.VERSION, 'c') - name: Upload EXE as release asset if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') id: upload-release-asset uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.create_release.outputs.upload_url }} asset_path: ./instaloader-v${{ steps.get_version.outputs.VERSION }}-windows-standalone.zip asset_name: instaloader-v${{ steps.get_version.outputs.VERSION }}-windows-standalone.zip asset_content_type: application/zip