feat: add python-security-checks reusable workflow

Dedicated security-only workflow using python:VERSION-slim.
Runs Bandit (or any security tool) without pytest or coverage.
Supports python_version, install_command, security_command,
and working_directory inputs with sensible defaults.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
dresber
2026-05-28 20:43:00 +02:00
parent 1434f75112
commit 5708713a48

View File

@@ -0,0 +1,35 @@
name: Reusable Python Security Checks
on:
workflow_call:
inputs:
python_version:
type: string
default: "3.14"
install_command:
type: string
default: 'python -m pip install "bandit[toml]"'
security_command:
type: string
default: "python -m bandit -r app -c pyproject.toml"
working_directory:
type: string
default: "."
jobs:
security:
runs-on: docker
container:
image: python:${{ inputs.python_version }}-slim
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install security tools
working-directory: ${{ inputs.working_directory }}
run: ${{ inputs.install_command }}
- name: Run security scan
working-directory: ${{ inputs.working_directory }}
run: ${{ inputs.security_command }}