Files
YoutubePlaylistSync/.gitea/workflows/integration.yml
T

39 lines
1.3 KiB
YAML

name: Integration tests (full workflow)
on:
push:
branches: [ main, Next ]
pull_request:
branches: [ main, Next ]
jobs:
integration:
name: Run integration full-workflow tests
runs-on: ubuntu-latest
env:
# opt-in flag consumed by the integration script
INTEGRATION_TEST: '1'
# default playlist (override via repo secret or workflow dispatch if desired)
TEST_PLAYLIST_URL: 'https://www.youtube.com/playlist?list=PLUmRr21IDW9WCW87FnbWAbIwwZHbf-lAz'
steps:
- name: Checkout repository
uses: https://gitea.com/actions/checkout@v5
- name: Install system packages (Python, ffmpeg, aria2, yt-dlp)
run: |
sudo apt-get update -y
# ensure venv support is available so we can create an isolated environment
sudo apt-get install -y python3 python3-pip python3-venv ffmpeg aria2 yt-dlp
- name: Install project into virtual environment
run: |
# create a venv and use it for installs to avoid modifying the system Python
python3 -m venv .venv
# activate the venv for this step
. .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install -e .
- name: Run integration test
run: python3 tests/integration_full_workflow_test.py