Skip to content

Update all dependencies #1950

Update all dependencies

Update all dependencies #1950

name: AFDKO Test Suite
on:
push:
paths-ignore:
- 'docs/**'
- '**.md'
pull_request:
branches: [develop]
types: [opened]
paths-ignore:
- 'docs/**'
- '**.md'
schedule:
- cron: '0 11 1 * *'
workflow_dispatch:
inputs:
reason:
description: 'Reason for running workflow'
required: true
jobs:
run_tests:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ["3.9", "3.10", "3.11", "3.12"]
exclude:
- os: macos-latest
python-version: "3.9"
- os: macos-latest
python-version: "3.10"
- os: macos-latest
python-version: "3.11"
- os: windows-latest
python-version: "3.9"
- os: windows-latest
python-version: "3.10"
- os: windows-latest
python-version: "3.11"
steps:
- name: Log reason (manual run only)
if: github.event_name == 'workflow_dispatch'
run: |
echo "Reason for triggering: ${{ github.event.inputs.reason }}"
- name: Check out
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
with:
fetch-depth: 0 # unshallow fetch for setuptools-scm
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Use MSBuild (Windows)
if: matrix.os == 'windows-latest'
uses: microsoft/setup-msbuild@v1.3
with:
vs-version: '[17.0,]'
msbuild-architecture: x64
- name: Set Windows generator to Visual Studio
if: matrix.os == 'windows-latest'
run: |
echo "CMAKE_GENERATOR=Visual Studio 17 2022" >> $GITHUB_ENV
echo "CMAKE_GENERATOR_PLATFORM=x64" >> $GITHUB_ENV
echo "FORCE_BUILD_LIBXML2=ON" >> $GITHUB_ENV
shell: bash
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install -r requirements.txt -r requirements-dev.txt
- name: Lint Python code with flake8 using .flake8 config file (Linux only)
if: matrix.os == 'ubuntu-latest'
run: |
flake8 --count --show-source --statistics --config=.flake8
- name: Lint C code with cpplint using script (Linux only)
if: matrix.os == 'ubuntu-latest'
run: |
./.run_cpplint.sh
- name: Install AFDKO
run: |
python -m pip install .
python -m pip freeze --all
- name: Test with pytest
run: |
python -m pytest -n auto --dist loadfile --no-cov tests --color=yes
- name: Test uninstall AFDKO
run: |
python -m pip uninstall afdko -y