テストターゲットを test_sumomo_amd_amf.py に変更する #67
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: e2e-test-workflow | |
| on: | |
| push: | |
| paths: | |
| - "e2e-test/**" | |
| - ".github/workflows/e2e-test.yml" | |
| workflow_call: | |
| workflow_dispatch: | |
| jobs: | |
| e2e-test: | |
| timeout-minutes: 10 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| platform: | |
| - name: ubuntu-24.04_x86_64 | |
| platform-name: ubuntu-24.04_x86_64 | |
| runs-on: ubuntu-24.04 | |
| - name: ubuntu-22.04_x86_64 | |
| platform-name: ubuntu-22.04_x86_64 | |
| runs-on: ubuntu-22.04 | |
| - name: ubuntu-24.04_armv8 | |
| platform-name: ubuntu-24.04_armv8 | |
| runs-on: ubuntu-24.04-arm | |
| - name: ubuntu-22.04_armv8 | |
| platform-name: ubuntu-22.04_armv8 | |
| runs-on: ubuntu-22.04-arm | |
| - name: macos_arm64 | |
| platform-name: macos_arm64 | |
| runs-on: macos-14 | |
| - name: windows_x86_64 | |
| platform-name: windows_x86_64 | |
| runs-on: windows-2025 | |
| # Self-hosted runner for Apple Video Toolbox | |
| - name: apple_video_toolbox | |
| platform-name: macos_arm64 | |
| runs-on: | |
| group: Self | |
| labels: [self-hosted, macOS, ARM64, Apple-M2-Pro] | |
| test-target: test_sumomo_apple_video_toolbox.py | |
| env-vars: | | |
| APPLE_VIDEO_TOOLBOX=true | |
| # Self-hosted runner for NVIDIA Video Codec | |
| - name: nvidia_video_codec | |
| platform-name: ubuntu-24.04_x86_64 | |
| runs-on: | |
| group: Self | |
| labels: [self-hosted, linux, x64, NVIDIA-Video-Codec-SDK] | |
| test-target: test_sumomo_nvidia_video_codec.py | |
| env-vars: | | |
| NVIDIA_VIDEO_CODEC=true | |
| # Self-hosted runner for Intel VPL | |
| - name: intel_vpl | |
| platform-name: ubuntu-24.04_x86_64 | |
| runs-on: | |
| group: Self | |
| labels: [self-hosted, linux, x64, Intel-VPL] | |
| test-target: test_sumomo_intel_vpl.py | |
| env-vars: | | |
| INTEL_VPL=true | |
| LIBVA_MESSAGING_LEVEL=0 | |
| # Self-hosted runner for AMD AMF | |
| - name: amd_amf | |
| platform-name: ubuntu-24.04_x86_64 | |
| runs-on: | |
| group: Self | |
| labels: [self-hosted, linux, x64, AMD-AMF] | |
| env-vars: | | |
| AMD_AMF=true | |
| test-target: test_sumomo_amd_amf.py | |
| # Self-hosted runner for Raspberry Pi | |
| - name: raspberry_pi | |
| platform-name: raspberry-pi-os_armv8 | |
| runs-on: | |
| group: Self | |
| labels: [self-hosted, linux, arm64, Raspberry-Pi] | |
| test-target: test_sumomo_raspberry_pi.py | |
| env-vars: | | |
| RASPBERRY_PI=true | |
| name: E2E Test for ${{ matrix.platform.name }} | |
| runs-on: ${{ matrix.platform.runs-on }} | |
| env: | |
| TEST_SIGNALING_URL: ${{ secrets.TEST_SIGNALING_URL }} | |
| TEST_CHANNEL_ID_PREFIX: ${{ secrets.TEST_CHANNEL_ID_PREFIX }} | |
| TEST_SECRET_KEY: ${{ secrets.TEST_SECRET_KEY }} | |
| OPENH264_VERSION: 2.6.0 | |
| steps: | |
| - uses: actions/checkout@v5 | |
| # Homebrew のセットアップ (self-hosted macOS ランナー用) | |
| - name: Setup Homebrew | |
| if: ${{ runner.environment == 'self-hosted' && startsWith(matrix.platform.platform-name, 'macos') }} | |
| uses: Homebrew/actions/setup-homebrew@master | |
| # GitHub CLI のインストール (self-hosted macOS ランナー用) | |
| - name: Install GitHub CLI | |
| if: ${{ runner.environment == 'self-hosted' && startsWith(matrix.platform.platform-name, 'macos') }} | |
| run: | | |
| if ! command -v gh &> /dev/null; then | |
| echo "gh コマンドが見つかりません。インストールします。" | |
| brew install gh | |
| else | |
| echo "gh コマンドは既にインストールされています。" | |
| fi | |
| # UV のセットアップ | |
| - uses: astral-sh/setup-uv@v7 | |
| - run: uv sync | |
| working-directory: ./e2e-test | |
| # ランタイム依存関係のインストール (GitHub-hosted Linux のみ) | |
| - name: Install system dependencies | |
| if: ${{ runner.environment != 'self-hosted' && runner.os == 'Linux' }} | |
| run: | | |
| sudo apt-get update | |
| # X11 | |
| sudo apt-get install -y libx11-dev libxext-dev | |
| # OpenGL | |
| sudo apt-get install -y libgl-dev | |
| # 環境変数の設定 (HWA テスト用) | |
| - name: Set environment variables | |
| if: matrix.platform.env-vars | |
| run: | | |
| echo "${{ matrix.platform.env-vars }}" | while read line; do | |
| if [ -n "$line" ]; then | |
| echo "$line" >> $GITHUB_ENV | |
| fi | |
| done | |
| # OpenH264 のダウンロード (GitHub-hosted ランナーのみ) | |
| - name: Download OpenH264 | |
| if: ${{ runner.environment != 'self-hosted' }} | |
| uses: shiguredo/github-actions/.github/actions/download-openh264@main | |
| id: openh264 | |
| with: | |
| openh264_version: ${{ env.OPENH264_VERSION }} | |
| use-cache: true | |
| # OpenH264 環境変数の設定 (GitHub-hosted ランナーのみ) | |
| - name: Setup OpenH264 environment | |
| if: ${{ runner.environment != 'self-hosted' && steps.openh264.outputs.openh264_path }} | |
| run: echo "OPENH264_PATH=${{ steps.openh264.outputs.openh264_path }}" >> $GITHUB_ENV | |
| # self-hosted runner の場合このダウンロードが凄く時間かかる | |
| - name: Download and setup sumomo binary | |
| uses: ./.github/actions/download-sumomo | |
| with: | |
| platform-name: ${{ matrix.platform.platform-name }} | |
| branch-name: ${{ github.ref_name }} | |
| - name: Run E2E tests | |
| run: | | |
| # テストを実行(最初の失敗で停止、詳細ログ出力) | |
| uv run pytest -v -x ${{ matrix.platform.test-target || '.' }} | |
| working-directory: ./e2e-test |