agnes-the-ai-analyst/.github/workflows/deploy-guard.yml
Petr c56905d34f Initial commit: OSS data distribution platform
Open-source AI data analyst platform extracted from internal repo.
Includes data sync engine, Keboola adapter, Flask web portal,
server deployment scripts, and configuration templates.
2026-03-08 23:31:28 +01:00

34 lines
971 B
YAML

name: Deploy Guard
on:
pull_request:
branches: [main]
jobs:
deploy-guard:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.11'
cache: 'pip'
- name: Install test dependencies
run: pip install pytest
- name: Run deploy guard tests
run: pytest tests/test_deploy_guard.py tests/test_sync_data.py -v -m "not live"
- name: Validate sudoers syntax (Docker)
run: |
SUDOERS_FILES=$(find server/ -name 'sudoers-*' -type f)
if [ -z "$SUDOERS_FILES" ]; then
echo "No sudoers files found, skipping"
exit 0
fi
docker run --rm -v "${{ github.workspace }}:/src:ro" -w /src ubuntu:24.04 \
/bin/bash -c "apt-get update -qq && apt-get install -y -qq sudo >/dev/null 2>&1 && \
find server/ -name 'sudoers-*' -exec visudo -cf {} \;"