test: create python-app.yml for automated testing #1
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 install Python dependencies, run tests and lint with a single version of Python | |
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python | |
name: Grand Prix '86 Pinball | |
on: | |
push: | |
branches: [ "main" ] | |
pull_request: | |
branches: [ "main" ] | |
permissions: | |
contents: read | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install system dependencies | |
run: | | |
sudo apt-get install build-essential git curl libsqlite3-dev \ | |
zlib1g-dev libjpeg-dev libtiff5-dev libtiff5-dev \ | |
libsdl2-dev libsdl2-ttf-dev libsdl2-image-dev \ | |
libsdl2-mixer-dev gstreamer1.0-plugins-base \ | |
gstreamer1.0-plugins-base gstreamer1.0-plugins-bad \ | |
gstreamer1.0-plugins-ugly libgstreamer1.0-dev \ | |
libxine2-ffmpeg libsmpeg-dev libswscale-dev \ | |
libavformat-dev libavcodec-dev libjpeg-dev libtiff5-dev \ | |
libx11-dev libmtdev-dev build-essential libgl1-mesa-dev \ | |
libgles2-mesa-dev pulseaudio lsb-release \ | |
libgl1-mesa-dri libavfilter-dev libavdevice-dev -y | |
- name: Install app dependencies | |
run: | | |
curl https://pyenv.run | bash | |
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile echo '[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile echo 'eval "$(pyenv init -)"' >> ~/.bash_profile | |
source ~/.bash_profile | |
pyenv install 3.10 | |
pyenv global 3.10 | |
pip install --upgrade pip setuptools wheel build coveralls pillow | |
pip install --upgrade Cython==0.29.36 | |
pip install mpf==0.57.0 | |
pip install mpf-mc==0.57.0 | |
pip install mpf-monitor==0.57.0 | |
- name: Test | |
run: | | |
bin/test |