calexil/FightstickDisplay

View on GitHub
.github/workflows/python-app.yml

Summary

Maintainability
Test Coverage
# This workflow file will install Python dependencies,
# create a desktop, joystick, and test the application's GUI on multiple versions of Python

name: Fightstick Display

on:
  push:
    branches: [ master ]
  pull_request:
    branches: [ master ]

jobs:
  build:

    env:
        DISPLAY: ":99.0"
    runs-on: ubuntu-latest
    strategy:
      matrix:
        python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12' ]

    steps:
    - uses: actions/checkout@v4
    - name: Set up Python ${{ matrix.python-version }}
      uses: actions/setup-python@v5
      with:
        python-version: ${{ matrix.python-version }}
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install pyglet configparser
        if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
        sudo apt install xvfb
    - name: Make the dummy joystick
      run: |
        sudo touch /dev/input/js0
    - name: Start xvfb
      run: |
        Xvfb :99 -screen 0 1920x1080x24 &disown
    - name: Test the gui
      run: |
        python3 fightstick.py &disown