refactor: integrate SlidingWindowRateLimiter component across metrics… #28
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # ==================================================================== | |
| # SATS High-Frequency Telemetry Pipeline - Continuous Integration Suite | |
| # ==================================================================== | |
| name: Continuous Integration | |
| on: | |
| push: | |
| branches: [main, master] | |
| pull_request: | |
| branches: [main, master] | |
| permissions: | |
| contents: read | |
| jobs: | |
| test-backend: | |
| name: Run Verification Suite (Python ${{ matrix.python-version }}) | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| # Cross-runtime validation tracking matrices | |
| python-version: ["3.12", "3.13"] | |
| steps: | |
| - name: Checkout repository code | |
| uses: actions/checkout@v4 | |
| - name: Set up Python ${{ matrix.python-version }} runtime environment | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| cache: "pip" | |
| - name: Install backend dependencies and testing utilities | |
| run: | | |
| python -m pip install --upgrade pip | |
| if [ -f requirements.txt ]; then pip install -r requirements.txt; fi | |
| pip install pytest bandit | |
| - name: Execute automated static application security testing via Bandit | |
| run: | | |
| # Audit application layer scripts for security flaws, ignoring non-production test files | |
| bandit -r backend -x backend/test_*.py -ll | |
| - name: Run automated unit regression tests via pytest | |
| run: | | |
| cd backend | |
| pytest |