release #27
Workflow file for this run
This file contains 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
# This workflow will create ant test a new release | |
name: release | |
on: | |
workflow_dispatch: | |
inputs: | |
version: | |
description: 'Release version (e.g., 0.1.0)' | |
required: true | |
notes: | |
description: 'Release notes (e.g., changelog)' | |
required: false | |
default: 'Changelog: \n- Added feature 1\n- Added feature 2\n- Fixed issue 2' | |
push: | |
tags: | |
- 'v*.*.*' | |
jobs: | |
min_linux: | |
name: linux with min supported deps | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python 3.7 | |
uses: actions/setup-python@v5 | |
with: | |
python-version: 3.7 | |
- name: Install dependencies | |
run: | | |
make install_deps | |
sudo apt update && sudo apt install \ | |
git \ | |
cmake \ | |
gcc-multilib \ | |
g++-multilib \ | |
gstreamer1.0-tools \ | |
gstreamer1.0-libav \ | |
gstreamer1.0-plugins-bad \ | |
ffmpeg \ | |
vpx-tools \ | |
wget \ | |
unzip | |
- name: Check | |
run: | | |
make check | |
- name: Test Build the wheel | |
run: | | |
pip wheel . | |
- name: Build all reference decoders | |
run: | | |
make all_reference_decoders | |
- name: Clean up | |
run: | | |
make clean | |
linux: | |
runs-on: ubuntu-24.04 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python 3.13 | |
uses: actions/setup-python@v5 | |
with: | |
python-version: 3.13 | |
- name: Install dependencies | |
run: | | |
make install_deps | |
sudo apt update && sudo apt install \ | |
git \ | |
cmake \ | |
gcc-multilib \ | |
g++-multilib \ | |
gstreamer1.0-tools \ | |
gstreamer1.0-libav \ | |
gstreamer1.0-plugins-bad \ | |
ffmpeg \ | |
vpx-tools \ | |
wget \ | |
unzip | |
- name: Check | |
run: | | |
make check | |
- name: Test Build the wheel | |
run: | | |
pip wheel . | |
- name: Build all reference decoders | |
run: | | |
make all_reference_decoders | |
- name: Clean up | |
run: | | |
make clean | |
windows: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python 3.7 | |
uses: actions/setup-python@v5 | |
with: | |
python-version: 3.7 | |
- name: Install dependencies | |
run: | | |
make install_deps | |
- name: Check | |
run: | | |
make check | |
- name: Test Build the wheel | |
run: | | |
pip wheel . | |
create_release: | |
name: Create Release | |
runs-on: ubuntu-20.04 | |
needs: | |
- min_linux | |
- linux | |
- windows | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Create Git Tag | |
run: | | |
git config user.name "github-actions" | |
git config user.email "[email protected]" | |
git tag v${{ github.event.inputs.version }} | |
git push origin v${{ github.event.inputs.version }} | |
- name: Create temporary notes file | |
run: | | |
echo -e "${{ github.event.inputs.notes }}" > notes.txt | |
- name: Create GitHub Release | |
run: | | |
VERSION=${{ github.event.inputs.version }} | |
git archive --format=zip HEAD | |
gh release create v$VERSION \ | |
--title "Release v$VERSION" \ | |
--notes "$(cat notes.txt)" | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Clean up notes file | |
run: rm notes.txt | |
continue-on-error: true |