Skip to content

Cleanup

Cleanup #948

name: Ubuntu Unittests
on: [push, pull_request]
env:
KIVY_SPLIT_EXAMPLES: 1
jobs:
PEP8_test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Set up Python 3
uses: actions/setup-python@v6
with:
python-version: 3.14
- name: Install CI/CD Python requirements
run: |
python -m pip install -r .ci/cicd-requirements.txt
- name: Validate PEP8
run: |
make style
unit_test:
runs-on: ubuntu-latest
strategy:
matrix:
python: [ '3.13', '3.14' ]
env:
DISPLAY: ':99.0'
# TODO: Only run tests on 3.14 once "ffpyplayer" works with Python 3.14
KIVY_TEST_AUDIO: ${{ matrix.python == '3.14' && '0' || '1' }}
steps:
- uses: actions/checkout@v6
- name: Set up Python 3
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python }}
- name: Install CI/CD Python requirements
run: |
python -m pip install -r .ci/cicd-requirements.txt
- name: Install dependencies
run: |
source .ci/ubuntu_ci.sh
install_ubuntu_build_deps
./tools/build_linux_dependencies.sh
- name: Setup env
run: |
source .ci/ubuntu_ci.sh
prepare_env_for_unittest
- name: Install Kivy
run: |
source .ci/ubuntu_ci.sh
export KIVY_DEPS_ROOT=$(pwd)/kivy-dependencies
install_kivy
- name: Test Kivy
run: |
source .ci/ubuntu_ci.sh
test_kivy
- name: Coveralls upload
if: github.event_name == 'push' && github.ref == 'refs/heads/master'
uses: coverallsapp/github-action@v2
- name: Test Kivy benchmarks
run: |
source .ci/ubuntu_ci.sh
test_kivy_benchmark
- name: Upload benchmarks as artifact
uses: actions/upload-artifact@v6
with:
name: benchmarks-ubuntu-unittests-python-3.x
path: .benchmarks-kivy
gen_docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Set up Python 3
uses: actions/setup-python@v6
with:
python-version: 3.14
- name: Install dependencies
run: |
source .ci/ubuntu_ci.sh
install_ubuntu_build_deps
./tools/build_linux_dependencies.sh
- name: Setup env
run: |
source .ci/ubuntu_ci.sh
prepare_env_for_unittest
- name: Install Kivy
run: |
source .ci/ubuntu_ci.sh
install_kivy
- name: Generate docs
run: |
source .ci/ubuntu_ci.sh
generate_docs
- name: Upload docs as artifact
uses: actions/upload-artifact@v6
with:
name: docs
path: doc/build/html
- name: Upload docs to kivy-website-docs
if: github.event_name == 'push'
env:
REF_NAME: ${{ github.ref }}
DOC_PUSH_TOKEN: ${{ secrets.DOC_PUSH_TOKEN }}
run: |
branch_name=$(python3 -c "print('$REF_NAME'.split('/')[-1])")
source .ci/ubuntu_ci.sh
upload_docs_to_server "$branch_name" "$GITHUB_SHA"