ci: BE 패턴 기반 FastAPI CI/CD 정비#138
Conversation
develop 중심 CI와 OIDC EB 배포(스모크·롤백)를 도입.
There was a problem hiding this comment.
Code Review
This pull request introduces a deployment issue template, a CI/CD OIDC setup guide, a Python runtime configuration, and an infrastructure smoke test script for PostgreSQL, Redis, and S3. The reviewer provided several critical recommendations: updating the Python runtime in runtime.txt and the documentation from the unsupported python-3.14 to python-3.12; modifying the PostgreSQL smoke test to correctly use the loaded environment variables from the .env file; and updating the S3 smoke test to support OIDC-based authentication by allowing boto3 to fall back to default credentials when static AWS keys are not provided.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
|
|
||
| ## EB Python 플랫폼 | ||
|
|
||
| `runtime.txt`에 `python-3.14`를 명시했습니다. dev/prod EB 환경이 Python 3.14 플랫폼을 지원하는지 확인하고, 미지원 시 플랫폼 업그레이드를 선행하세요. |
There was a problem hiding this comment.
runtime.txt에 명시된 Python 버전을 python-3.12로 변경함에 따라 가이드 문서의 설명도 이에 맞게 수정합니다.
| `runtime.txt`에 `python-3.14`를 명시했습니다. dev/prod EB 환경이 Python 3.14 플랫폼을 지원하는지 확인하고, 미지원 시 플랫폼 업그레이드를 선행하세요. | |
| `runtime.txt`에 `python-3.12`를 명시했습니다. dev/prod EB 환경이 Python 3.12 플랫폼을 지원하는지 확인하고, 미지원 시 플랫폼 업그레이드를 선행하세요. |
develop 중심 CI와 OIDC EB 배포(스모크·롤백) 도입
✨ 작업 개요
FastAPI AI 서버의 CI/CD를 BE 패턴에 맞게 재구성했습니다.
CI (
ci.yml)developpush/PR,main대상 PR,workflow_dispatchcompileall→ci_infra_smoke.py(PG/Redis/S3) →unittest→ uvicorn/health200 검증CI_ENVsecret + workflow에서 CI용 DB/Redis overrideCD (dev/prod)
deploy.yml/prod_deploy.yml→ reusable workflow(_reusable-eb-deploy.yml)로 공통화vars.AWS_ROLE_ARN) 기반 인증tests,rag/raw,docs제외 및 zip 내용 검증기타
docs/cicd-oidc-setup.md: OIDC·GitHub Variables/Secrets 설정 가이드runtime.txt:python-3.14명시🧐 집중 리뷰 요청
_reusable-eb-deploy.yml롤백 조건deploy실패 또는smoke_test실패 시PREVIOUS_VERSION으로 롤백하는 분기가 의도대로인지 봐주세요.브랜치/트리거 전략
develop중심 (mainpush는 CI 미실행)mainmerge 시prodmerge 시운영 플로우와 맞는지 확인 부탁드립니다.
Python 3.14
CI(
setup-python),runtime.txt, EB 플랫폼 버전 정합성 — EB가 3.14 미지원이면 배포 실패 가능성이 있습니다.ci_infra_smoke.pyS3 smokeCI에서 실 버킷에 put/get/delete 합니다. CI 전용 IAM 권한·버킷 정책이 적절한지 검토해주세요.
보안
OIDC Trust policy scope(
repo:...:*)와output-credentials: true+beanstalk-deploy조합 — org 정책상 허용 범위인지 의견 부탁드립니다.