diff --git a/.github/workflows/python-app.yml b/.github/workflows/python-app.yml index 31932b8..833f796 100644 --- a/.github/workflows/python-app.yml +++ b/.github/workflows/python-app.yml @@ -9,6 +9,12 @@ permissions: pull-requests: write issues: write repository-projects: write + +# Prevent concurrent releases +concurrency: + group: release + cancel-in-progress: false + jobs: build: strategy: @@ -133,6 +139,17 @@ jobs: fi shell: bash + - name: Verify Zip Created + run: | + if [ -f "PyTaiko-${{ runner.os }}-${{ runner.arch }}.zip" ]; then + echo "✅ Zip file created successfully" + ls -lh PyTaiko-${{ runner.os }}-${{ runner.arch }}.zip + else + echo "❌ Zip file not found!" + exit 1 + fi + shell: bash + - name: Upload Build Artifacts uses: actions/upload-artifact@v4 with: @@ -151,12 +168,36 @@ jobs: pattern: pytaiko-* merge-multiple: true - - name: Upload Release + - name: List Downloaded Files + run: | + echo "Current directory:" + pwd + echo "Files in current directory:" + ls -la + echo "Searching for zip files:" + find . -name "*.zip" -type f -ls + + - name: Delete Existing Release + continue-on-error: true + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + gh release delete latest --yes --repo ${{ github.repository }} || echo "Release doesn't exist yet" + + - name: Wait for Release Deletion + run: sleep 5 + + - name: Create New Release uses: softprops/action-gh-release@v2 with: - files: PyTaiko-*.zip + files: | + *.zip + **/*.zip name: "PyTaiko [Rolling Release]" tag_name: "latest" make_latest: true + draft: false + prerelease: false + fail_on_unmatched_files: true env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}