stages:
    - templates

include:
    - local: 'templates/python/testing/pytest/pytest.yml'
    - local: 'templates/python/code_quality/flake8/flake8.yml'
    - local: 'templates/python/code_quality/black/black.yml'

pytest:
    stage: templates
    variables:
        PROJECT_PATH: "tests/pytest_project"
        PYTHON_SETUP: "pip install ${PROJECT_PATH} pytest"
    only:
        changes:
            - .gitlab-ci.yml
            - pyproject.toml
            - templates/python/testing/pytest/**/*

flake8:
    stage: templates
    variables:
        PROJECT_PATH: "tests/flake8_project"
    only:
        changes:
            - .gitlab-ci.yml
            - pyproject.toml
            - templates/python/code_quality/flake8/**/*
            - tests/flake8_project/**/*

black:
    stage: templates
    variables:
        PROJECT_PATH: "tests/black_project"
        PYTHON_SETUP: "pip install ${PROJECT_PATH} black"
    only:
        changes:
            - .gitlab-ci.yml
            - pyproject.toml
            - templates/python/code_quality/black/**/*
            - tests/black_project/**/*