Skip to content

Add permissions(id-token: write) #64

Add permissions(id-token: write)

Add permissions(id-token: write) #64

Workflow file for this run

name: Run CI
on:
push:
branches: [ main, testci ]
pull_request:
branches: [ main, testci ]
jobs:
test-on-windows:
runs-on: windows-latest
defaults:
run:
shell: pwsh
env:
PYTHONIOENCODING: utf-8
steps:
- name: Download and extract FFmpeg
run: |
Invoke-WebRequest -Uri "https://www.gyan.dev/ffmpeg/builds/ffmpeg-git-full.7z" -OutFile "ffmpeg.7z"
$ffmpegDir = "$env:USERPROFILE\ffmpeg"
New-Item -ItemType Directory -Path $ffmpegDir -Force | Out-Null
& "C:\Program Files\7-Zip\7z.exe" x "ffmpeg.7z" -o"$ffmpegDir" -y
$binPath = Get-ChildItem "$ffmpegDir" | Where-Object { $_.PSIsContainer } | Select-Object -First 1
$ffmpegBin = "$ffmpegDir\$($binPath.Name)\bin"
echo "FFMPEG_BIN=$ffmpegBin" >> $env:GITHUB_ENV
echo "PATH=$ffmpegBin;$env:PATH" >> $env:GITHUB_ENV
Write-Host "FFmpeg path: $ffmpegBin"
& "$ffmpegBin\ffmpeg.exe" -version
shell: pwsh
- name: Clone HwCodecDetect
run: git clone -b main --single-branch https://github.com/whyb/HwCodecDetect.git
- name: Upgrade pip
run: python -m pip install --upgrade pip
working-directory: HwCodecDetect
- name: Install dependencies
run: python -m pip install -r requirements.txt
working-directory: HwCodecDetect
- name: Run tests
run: python -m src.HwCodecDetect.run_tests --encoder-count 8 --decoder-count 8 --verbose
working-directory: HwCodecDetect
test-on-ubuntu:
runs-on: ubuntu-latest
env:
PYTHONIOENCODING: utf-8
steps:
- name: Install Python 3.10
uses: actions/setup-python@v5
with:
python-version: '3.10'
- name: Install latest FFmpeg (static build)
run: |
set -e
sudo apt-get update
sudo apt-get install -y xz-utils ca-certificates
curl -L -o ffmpeg.tar.xz https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz
tar -xJf ffmpeg.tar.xz
FF_DIR=$(find . -maxdepth 1 -type d -name "ffmpeg-*-amd64-static" | head -n1)
sudo mv "$FF_DIR/ffmpeg" "$FF_DIR/ffprobe" /usr/local/bin/
ffmpeg -version
ffprobe -version
- name: Clone HwCodecDetect
run: git clone -b main --single-branch https://github.com/whyb/HwCodecDetect.git
- name: Upgrade pip
run: python -m pip install --upgrade pip
working-directory: HwCodecDetect
- name: Install dependencies
run: python -m pip install -r requirements.txt
working-directory: HwCodecDetect
- name: Run tests
run: python -m src.HwCodecDetect.run_tests --encoder-count 8 --decoder-count 8 --verbose
working-directory: HwCodecDetect
test-on-archlinux:
runs-on: ubuntu-latest
container:
image: archlinux:latest
env:
PYTHONIOENCODING: utf-8
steps:
- name: Update system and install dependencies
run: |
pacman -Syu --noconfirm
pacman -S --noconfirm python python-pip git ffmpeg
- name: Clone HwCodecDetect
run: git clone -b main --single-branch https://github.com/whyb/HwCodecDetect.git
- name: Create virtualenv and install project
run: |
python -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install -e .
working-directory: HwCodecDetect
- name: Run tests
run: |
source .venv/bin/activate
python -m src.HwCodecDetect.run_tests --encoder-count 8 --decoder-count 8 --verbose
working-directory: HwCodecDetect
test-on-debian:
runs-on: ubuntu-latest
container:
image: debian:latest
defaults:
run:
shell: bash
env:
PYTHONIOENCODING: utf-8
steps:
- name: Install dependencies
run: |
apt-get update
apt-get install -y bash python3 python3-pip git ffmpeg python3-venv
- name: Clone HwCodecDetect
run: git clone -b main --single-branch https://github.com/whyb/HwCodecDetect.git
- name: Create virtualenv and install project
run: |
python3 -m venv .venv
. .venv/bin/activate
pip install --upgrade pip
pip install -e .
working-directory: HwCodecDetect
- name: Run tests
run: |
. .venv/bin/activate
python -m src.HwCodecDetect.run_tests --encoder-count 8 --decoder-count 8 --verbose
working-directory: HwCodecDetect
#test-on-alpine:
# runs-on: ubuntu-latest
# container:
# image: alpine:latest
# env:
# PYTHONIOENCODING: utf-8
# steps:
# - name: Install dependencies
# run: |
# apk update
# apk add python3 py3-pip git ffmpeg py3-virtualenv
# - name: Clone HwCodecDetect
# run: git clone -b main --single-branch https://github.com/whyb/HwCodecDetect.git
# - name: Create virtualenv and install project
# run: |
# python3 -m venv .venv
# source .venv/bin/activate
# pip install --upgrade pip
# pip install -e .
# working-directory: HwCodecDetect
# - name: Run tests
# run: |
# source .venv/bin/activate
# python -m src.HwCodecDetect.run_tests --encoder-count 8 --decoder-count 8 --verbose
# working-directory: HwCodecDetect
test-on-fedora:
runs-on: ubuntu-latest
container:
image: fedora:latest
env:
PYTHONIOENCODING: utf-8
steps:
- name: Install dependencies
run: |
dnf install -y python3 python3-pip git ffmpeg python3-virtualenv
- name: Clone HwCodecDetect
run: git clone -b main --single-branch https://github.com/whyb/HwCodecDetect.git
- name: Create virtualenv and install project
run: |
python3 -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install -e .
working-directory: HwCodecDetect
- name: Run tests
run: |
source .venv/bin/activate
python -m src.HwCodecDetect.run_tests --encoder-count 8 --decoder-count 8 --verbose
working-directory: HwCodecDetect
test-on-rockylinux-like-centos:
runs-on: ubuntu-latest
container:
image: rockylinux/rockylinux:9
defaults:
run:
shell: bash
env:
PYTHONIOENCODING: utf-8
steps:
- name: Install basic tools and Python
run: |
dnf install -y curl tar xz python3 python3-pip git --allowerasing
- name: Install latest FFmpeg (static build)
run: |
curl -L -o ffmpeg.tar.xz https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz
tar -xJf ffmpeg.tar.xz
FF_DIR=$(find . -maxdepth 1 -type d -name "ffmpeg-*-amd64-static" | head -n1)
mv "$FF_DIR/ffmpeg" "$FF_DIR/ffprobe" /usr/local/bin/
ffmpeg -version
ffprobe -version
- name: Clone HwCodecDetect
run: git clone -b main --single-branch https://github.com/whyb/HwCodecDetect.git
- name: Upgrade pip
run: python3 -m pip install --upgrade pip
working-directory: HwCodecDetect
- name: Install dependencies
run: python3 -m pip install -r requirements.txt
working-directory: HwCodecDetect
- name: Run tests
run: python3 -m src.HwCodecDetect.run_tests --encoder-count 8 --decoder-count 8 --verbose
working-directory: HwCodecDetect
test-on-opensuse:
runs-on: ubuntu-latest
container:
image: opensuse/leap:15.5
defaults:
run:
shell: bash
env:
PYTHONIOENCODING: utf-8
steps:
- name: Install Python 3.10 and dependencies
run: |
zypper refresh
zypper install -y python310 git ffmpeg
python3.10 -m ensurepip
ln -s /usr/bin/python3.10 /usr/local/bin/python3
ln -s /usr/lib/python3.10/site-packages/pip /usr/local/bin/pip || true
- name: Clone HwCodecDetect
run: git clone -b main --single-branch https://github.com/whyb/HwCodecDetect.git
- name: Create virtualenv and install project
run: |
python3 -m venv .venv
. .venv/bin/activate
pip install --upgrade pip
pip install -e .
working-directory: HwCodecDetect
- name: Run tests
run: |
. .venv/bin/activate
python -m src.HwCodecDetect.run_tests --encoder-count 8 --decoder-count 8 --verbose
working-directory: HwCodecDetect
test-on-macos-arm:
runs-on: macos-latest
env:
PYTHONIOENCODING: utf-8
steps:
- name: Install Python 3.10
uses: actions/setup-python@v5
with:
python-version: '3.10'
- name: Install FFmpeg
run: |
brew update
brew install ffmpeg
ffmpeg -version
- name: Clone HwCodecDetect
run: git clone -b main --single-branch https://github.com/whyb/HwCodecDetect.git
- name: Upgrade pip
run: python -m pip install --upgrade pip
working-directory: HwCodecDetect
- name: Install dependencies
run: python -m pip install -r requirements.txt
working-directory: HwCodecDetect
- name: Run tests
run: python -m src.HwCodecDetect.run_tests --encoder-count 8 --decoder-count 8 --verbose
working-directory: HwCodecDetect
test-on-macos-x86-64:
runs-on: macos-15-intel
env:
PYTHONIOENCODING: utf-8
steps:
- name: Install Python 3.10
uses: actions/setup-python@v5
with:
python-version: '3.10'
- name: Install FFmpeg
run: |
brew update
brew install ffmpeg
ffmpeg -version
- name: Clone HwCodecDetect
run: git clone -b main --single-branch https://github.com/whyb/HwCodecDetect.git
- name: Upgrade pip
run: python -m pip install --upgrade pip
working-directory: HwCodecDetect
- name: Install dependencies
run: python -m pip install -r requirements.txt
working-directory: HwCodecDetect
- name: Run tests
run: python -m src.HwCodecDetect.run_tests --encoder-count 8 --decoder-count 8 --verbose
working-directory: HwCodecDetect