Resolve CI/CD branch conflicts
CI/CD Pipeline / Unit Tests (Python 3.11) (push) Successful in 42s
CI/CD Pipeline / Unit Tests (Python 3.13) (push) Successful in 46s
CI/CD Pipeline / Unit Tests (Python 3.12) (push) Successful in 46s
CI/CD Pipeline / Code Quality & Linting (push) Successful in 30s
CI/CD Pipeline / Unit Tests (Python 3.11) (pull_request) Successful in 45s
CI/CD Pipeline / Unit Tests (Python 3.12) (pull_request) Successful in 33s
CI/CD Pipeline / Unit Tests (Python 3.13) (pull_request) Successful in 36s
CI/CD Pipeline / Code Quality & Linting (pull_request) Successful in 33s
CI/CD Pipeline / Security Scanning (push) Successful in 2m28s
CI/CD Pipeline / Security Scanning (pull_request) Successful in 2m24s
CI/CD Pipeline / Build Docker Image (pull_request) Skipped
CI/CD Pipeline / Integration Tests (push) Successful in 25s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 21s
CI/CD Pipeline / Build Docker Image (push) Successful in 39s
CI/CD Pipeline / Generate Test Report (push) Successful in 9s
CI/CD Pipeline / Generate Test Report (pull_request) Successful in 12s
CI/CD Pipeline / CI/CD Pipeline Status (push) Successful in 6s
CI/CD Pipeline / CI/CD Pipeline Status (pull_request) Successful in 14s

This commit is contained in:
k.eaven committed 2026-10-24 07:46:22 +00:00
1 parent d830033b8f
commit d891b21ffd
1 file changed
+45 -45
+45 -45
View File
@@ -23,7 +23,7 @@ jobs:
# ==========================================
# TESTING STAGE
# ==========================================
unit-tests:
name: Unit Tests (Python ${{ matrix.python-version }})
runs-on: ubuntu-latest
@@ -32,7 +32,7 @@ jobs:
fail-fast: false
matrix:
python-version: ['3.11', '3.12', '3.13']
steps:
- name: Checkout code
uses: actions/checkout@v3
@@ -46,24 +46,21 @@ jobs:
git config --global http.lowSpeedLimit 0
git config --global http.lowSpeedTime 999999
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
- name: Set up uv & Python ${{ matrix.python-version }}
uses: astral-sh/setup-uv@v5
with:
python-version: ${{ matrix.python-version }}
- name: Cache pip dependencies
uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-py${{ matrix.python-version }}-pip-${{ hashFiles('requirements.txt', 'requirements-test.txt') }}
restore-keys: |
${{ runner.os }}-py${{ matrix.python-version }}-pip-
activate-environment: true
enable-cache: true
cache-dependency-glob: |
requirements.txt
requirements-test.txt
- name: Install dependencies
run: |
python -m pip install --upgrade pip setuptools wheel
pip install -r requirements.txt
pip install -r requirements-test.txt
uv pip install --upgrade setuptools wheel
uv pip install -r requirements.txt
uv pip install -r requirements-test.txt
- name: Create test configuration
run: |
@@ -81,7 +78,7 @@ jobs:
- name: Run unit tests with coverage
run: |
pytest test_pterodisbot.py \
python -m pytest test_pterodisbot.py \
-v \
--tb=short \
--cov=pterodisbot \
@@ -104,7 +101,7 @@ jobs:
name: Code Quality & Linting
runs-on: ubuntu-latest
if: ${{ !inputs.skip_tests }}
steps:
- name: Checkout code
uses: actions/checkout@v3
@@ -118,15 +115,17 @@ jobs:
git config --global http.lowSpeedLimit 0
git config --global http.lowSpeedTime 999999
- name: Set up Python
uses: actions/setup-python@v4
- name: Set up uv & Python
uses: astral-sh/setup-uv@v5
with:
python-version: '3.12'
activate-environment: true
enable-cache: true
- name: Install linting tools
run: |
python -m pip install --upgrade pip
pip install flake8 pylint black isort mypy
uv pip install --upgrade setuptools wheel
uv pip install flake8 pylint black isort mypy
- name: Run flake8
run: |
@@ -176,7 +175,7 @@ jobs:
name: Security Scanning
runs-on: ubuntu-latest
if: ${{ !inputs.skip_tests }}
steps:
- name: Checkout code
uses: actions/checkout@v3
@@ -190,15 +189,17 @@ jobs:
git config --global http.lowSpeedLimit 0
git config --global http.lowSpeedTime 999999
- name: Set up Python
uses: actions/setup-python@v4
- name: Set up uv & Python
uses: astral-sh/setup-uv@v5
with:
python-version: '3.12'
activate-environment: true
enable-cache: true
- name: Install security tools
run: |
python -m pip install --upgrade pip
pip install bandit safety pip-audit
uv pip install --upgrade setuptools wheel
uv pip install bandit safety pip-audit
- name: Run bandit security scan
run: |
@@ -211,7 +212,7 @@ jobs:
- name: Run safety dependency check
run: |
pip install -r requirements.txt
uv pip install -r requirements.txt
safety check --json --output safety-report.json || true
continue-on-error: true
@@ -234,7 +235,7 @@ jobs:
runs-on: ubuntu-latest
needs: [unit-tests]
if: ${{ !inputs.skip_tests }}
steps:
- name: Checkout code
uses: actions/checkout@v3
@@ -248,22 +249,21 @@ jobs:
git config --global http.lowSpeedLimit 0
git config --global http.lowSpeedTime 999999
- name: Set up Python
uses: actions/setup-python@v4
- name: Set up uv & Python
uses: astral-sh/setup-uv@v5
with:
python-version: '3.12'
- name: Cache dependencies
uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-integration-${{ hashFiles('requirements.txt') }}
activate-environment: true
enable-cache: true
cache-dependency-glob: |
requirements.txt
requirements-test.txt
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install -r requirements-test.txt
uv pip install --upgrade setuptools wheel
uv pip install -r requirements.txt
uv pip install -r requirements-test.txt
- name: Create test configuration
run: |
@@ -281,7 +281,7 @@ jobs:
- name: Run integration tests
run: |
pytest test_pterodisbot.py::TestIntegration \
python -m pytest test_pterodisbot.py::TestIntegration \
-v \
--tb=short \
--timeout=60
@@ -289,7 +289,7 @@ jobs:
# ==========================================
# BUILD STAGE
# ==========================================
docker-build:
name: Build Docker Image
runs-on: ubuntu-latest
@@ -298,7 +298,7 @@ jobs:
always() &&
(needs.unit-tests.result == 'success' || inputs.skip_tests) &&
(github.event_name == 'push' || github.event_name == 'workflow_dispatch')
steps:
- name: Checkout code
uses: actions/checkout@v3
@@ -384,13 +384,13 @@ jobs:
# ==========================================
# REPORTING STAGE
# ==========================================
test-report:
name: Generate Test Report
runs-on: ubuntu-latest
needs: [unit-tests, code-quality, security-scan, integration-tests]
if: always() && !inputs.skip_tests
steps:
- name: Download all artifacts
uses: actions/download-artifact@v3
@@ -419,7 +419,7 @@ jobs:
runs-on: ubuntu-latest
needs: [test-report, docker-build]
if: always()
steps:
- name: Check pipeline status
run: |