3.9: a finished queue no longer leaves FFmpeg running #8
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build binaries | |
| on: | |
| push: | |
| tags: ["*"] | |
| workflow_dispatch: | |
| inputs: | |
| tag: | |
| description: "Existing release tag to attach the binaries to (leave empty to only keep artifacts)" | |
| required: false | |
| default: "" | |
| permissions: | |
| contents: write | |
| jobs: | |
| build: | |
| name: ${{ matrix.name }} | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - { os: windows-latest, name: windows } | |
| - { os: ubuntu-22.04, name: linux } | |
| - { os: macos-latest, name: macos } | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.12" | |
| cache: pip | |
| - name: Install build dependencies | |
| shell: bash | |
| run: | | |
| python -m pip install --upgrade pip | |
| python -m pip install -r requirements.txt pyinstaller | |
| if [ "$RUNNER_OS" = "Linux" ]; then | |
| sudo apt-get update | |
| sudo apt-get install -y libgl1 libegl1 libxkbcommon0 libdbus-1-3 libfontconfig1 | |
| fi | |
| - name: Build with PyInstaller | |
| run: python build.py | |
| - name: Smoke-test the frozen build (Linux) | |
| if: runner.os == 'Linux' | |
| run: | | |
| sudo apt-get install -y ffmpeg | |
| ffmpeg -y -loglevel error -f lavfi -i testsrc=size=320x240:rate=25 -f lavfi -i sine=frequency=440 -t 3 -c:v libx264 -c:a aac /tmp/clip.mp4 | |
| mkdir -p /tmp/frozen && tar xzf dist/*.tar.gz -C /tmp/frozen | |
| QT_QPA_PLATFORM=offscreen VIDEER_SELFTEST=/tmp/clip.mp4 timeout 600 /tmp/frozen/*/videer | |
| ls -la /tmp/clip_libx264_aac_crf30_abr96.mkv | |
| test ! -e /tmp/clip_libx264_aac_crf30_abr96.part.mkv | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: videer-${{ matrix.name }} | |
| path: dist/* | |
| if-no-files-found: error | |
| - name: Attach to release | |
| if: startsWith(github.ref, 'refs/tags/') || inputs.tag != '' | |
| shell: bash | |
| env: | |
| GH_TOKEN: ${{ github.token }} | |
| run: | | |
| TAG="${{ inputs.tag }}" | |
| if [ -z "$TAG" ]; then TAG="${GITHUB_REF#refs/tags/}"; fi | |
| gh release upload "$TAG" dist/* --clobber --repo "$GITHUB_REPOSITORY" |