diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000..c968d2b --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,23 @@ +default_stages: [pre-commit, pre-push] +default_language_version: + python: python3 +minimum_pre_commit_version: '3.2.0' + +repos: + # 기본 안전망: 민감정보, 충돌 마커, 대용량 파일, 공백 처리 + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v4.6.0 + hooks: + - id: detect-private-key # SSH 키, 비밀 토큰 유출 방지 + - id: end-of-file-fixer # EOF 빈 줄 자동 추가 + - id: check-added-large-files # 500KB 이상 큰 파일 커밋 차단 + - id: trailing-whitespace # 줄 끝 공백 제거 + - id: check-merge-conflict # Git 충돌 마커 차단 + + # Python 린트 & 포맷: Ruff + - repo: https://github.com/astral-sh/ruff-pre-commit + rev: v0.12.3 # 최신 안정 버전, 필요 시 https://github.com/astral-sh/ruff-pre-commit/releases 참고 + hooks: + - id: ruff # 린트 + 자동 수정 (--fix) + args: [--fix] + - id: ruff-format # 코드 포맷 정렬 diff --git a/requirements.txt b/requirements.txt index 4242c34..19d80bc 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,21 @@ -ruff +# CI/CD +cfgv==3.4.0 +distlib==0.3.9 +filelock==3.18.0 +identify==2.6.12 +nodeenv==1.9.1 +platformdirs==4.3.8 +pre_commit==4.2.0 +PyYAML==6.0.2 +ruff==0.12.3 +virtualenv==20.31.2 + +# Crawl & Data Processing selenium==4.15.2 webdriver-manager beautifulsoup4==4.12.2 pandas==2.1.4 seleniumbase==4.21.0 -boto3 + +# AWS Integration +boto3==1.39.4 \ No newline at end of file