ci: fix pip install under PEP 668 (externally-managed-environment)
Lint / Python (flake8) (push) Successful in 59s
Security / Python Security (bandit) (push) Successful in 48s
Test / Python Tests (pytest) (push) Successful in 2m29s
Lint / Notify on failure (push) Has been skipped

The Debian runner image marks its Python as externally managed, so
`pip3 install` fails with error: externally-managed-environment, breaking
the test/lint/security workflows at the install step (unrelated to the code
under test). Add --break-system-packages; the runner is ephemeral so a
system-wide install is fine.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-30 20:49:52 -04:00
co-authored by Claude Opus 4.8
parent b15fa58cd5
commit d9de2dde82
3 changed files with 6 additions and 3 deletions
+2 -1
View File
@@ -17,7 +17,8 @@ jobs:
run: |
apt-get update -qq
apt-get install -y -qq python3 python3-pip
pip3 install flake8
# Debian's Python is externally managed (PEP 668); the runner is ephemeral.
pip3 install --break-system-packages flake8
- name: Run flake8
run: flake8 . --exclude=__pycache__,.git
+2 -1
View File
@@ -19,7 +19,8 @@ jobs:
run: |
apt-get update -qq
apt-get install -y -qq python3 python3-pip
pip3 install bandit
# Debian's Python is externally managed (PEP 668); the runner is ephemeral.
pip3 install --break-system-packages bandit
- name: Run bandit
run: bandit -r . --exclude .git,__pycache__ -ll
+2 -1
View File
@@ -17,7 +17,8 @@ jobs:
run: |
apt-get update -qq
apt-get install -y -qq python3 python3-pip python3-pytest python3-psutil python3-requests
pip3 install pytest-cov
# Debian's Python is externally managed (PEP 668); the runner is ephemeral.
pip3 install --break-system-packages pytest-cov
- name: Run pytest with coverage
run: python3 -m pytest tests/ -v --cov=. --cov-report=term-missing --cov-config=.coveragerc