Skip to content

Branches Development Workflow #384

Branches Development Workflow

Branches Development Workflow #384

Workflow file for this run

name: Branches Development Workflow
on:
pull_request:
branches:
- "**"
- "!master"
push:
branches:
- "**"
- "!master"
schedule:
- cron: "0 0 * * *"
permissions:
contents: read
jobs:
lint:
name: Lint Extension
runs-on: "${{ matrix.os }}"
strategy:
fail-fast: false
matrix:
python_version:
- "3.12"
os:
- ubuntu-latest
steps:
- uses: actions/checkout@v6
name: Clone repository
- name: Set up Python ${{ matrix.python_version }}
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python_version }}
- name: Install dependencies
run: |
pip install --upgrade pip
pip install --upgrade .[dev]
pip install pylint
- name: Lint with Pylint
run: pylint PyFunceble
sec_check:
name: Check the safety of the codebase with Bandit
runs-on: "${{ matrix.os }}"
strategy:
fail-fast: false
matrix:
python_version:
- "3.12"
os:
- ubuntu-latest
steps:
- uses: actions/checkout@v6
name: Clone repository
- name: Set up Python ${{ matrix.python_version }}
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python_version }}
- name: Install dependencies
run: |
pip install --upgrade pip
pip install .[test,dev]
- name: Check the safety of the codebase with Bandit
run: bandit --ini=setup.cfg -r PyFunceble
test:
needs: [lint, sec_check]
name: "[${{ matrix.os }}-py${{ matrix.python_version }}] Test Extension"
runs-on: "${{ matrix.os }}"
strategy:
fail-fast: false
matrix:
python_version:
- "3.9"
- "3.10"
- "3.11"
- "3.12"
- "3.13"
os:
- ubuntu-latest
- macos-latest
- windows-latest
steps:
- uses: actions/checkout@v6
name: Clone repository
- name: Set up Python ${{ matrix.python_version }}
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python_version }}
- name: Install dependencies
run: |
pip install --upgrade pip
pip install --upgrade .[test]
pip install tox coveralls
- name: Test as defined by tox.ini
run: |
tox -c tox.ini
example-test:
needs: [lint]
name: "[${{ matrix.os }}-py${{ matrix.python_version }}] Integration Test"
runs-on: "${{ matrix.os }}"
strategy:
fail-fast: false
matrix:
python_version:
- "3.9"
- "3.10"
- "3.11"
- "3.12"
- "3.13"
os:
- ubuntu-latest
- macos-latest
- windows-latest
steps:
- uses: actions/checkout@v6
name: Clone repository
- name: Set up Python ${{ matrix.python_version }}
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python_version }}
- name: Install dependencies
run: |
pip install --upgrade pip
pip install --upgrade .
- name: Run example (without dynamic scaling)
run: |
python examples/data_filter.py
- name: Run example (with dynamic scaling)
run: |
python examples/data_filter.py dynamic-scaling