Jetsada117's picture
debug feature test project
592569f
Raw
History Blame Contribute Delete
1.92 kB
name: CI/CD Pipeline
# ส่วนที่ 1: กำหนดเหตุการณ์ (Event) ที่จะให้ Workflow เริ่มทำงาน
on:
push:
branches: [ main, master ]
pull_request:
branches: [ main, master ]
jobs:
# ส่วนที่ 2: Continuous Integration (CI) - การทดสอบและตรวจสอบคุณภาพโค้ด
test:
runs-on: ubuntu-latest
# กำหนดค่า Environment Variables สำหรับตอนรัน Test
# ใส่เครื่องหมายคำพูด (Quotes) ครอบค่าไว้เพื่อป้องกัน Error ของ YAML Syntax
env:
DATABASE_URL: "sqlite+aiosqlite:///:memory:"
SECRET_KEY: "test_secret_key_for_ci"
ALGORITHM: "HS256"
R2_BUCKET_NAME: "test-bucket"
R2_ACCOUNT_ID: "test-id"
R2_ACCESS_KEY: "test-key"
R2_SECRET_KEY: "test-secret"
HF: "test-hf-token"
REDIS_URL: "redis://localhost:6379/0"
GMAIL: "test@gmail.com"
BREVO_API_KEY: "test-brevo-key"
PROJECT_NAME: "FaceSearchTest"
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install uv
run: curl -LsSf https://astral.sh/uv/install.sh | sh
- name: Set up Python
run: uv python install 3.11
- name: Install dependencies
run: uv sync --frozen
- name: Run Pytest
run: uv run pytest tests
# ส่วนที่ 3: Continuous Deployment (CD) - การนำไปใช้งาน (ตัวอย่าง)
deploy:
needs: test
if: github.event_name == 'push'
runs-on: ubuntu-latest
steps:
- name: Deploy Status
run: |
echo "🎉 All tests passed successfully!"
echo "🚀 Deployment process would start here."
echo "Branch: ${{ github.ref }}"