실제로 작동하는 간단한 CI/CD 파이프라인
대부분의 CI/CD 튜토리얼은 기본적인 배포에만 초점을 맞춰 지나치게 단순화하며, secrets management 및 rollbacks와 같은 중요한 측면을 간과합니다. 저자는 접근성을 위해 GitHub Actions를 사용하여 Test, Build, Deploy의 간단한 3단계 파이프라인을 옹호합니다. 이 과정은 빌드나 배포가 발생하기 전에 반드시 통과해야 하는 자동화된 테스트로 시작됩니다. 메인 브랜치로의 푸시만이 빌드 단계를 트리거하며, 이는 애플리케이션을 아티팩트로 컴파일합니다. 그런 다음 배포 단계는 SCP를 사용하여 이 아티팩트를 서버로 전송하며, GitHub secrets를 통해 서버 자격 증명을 안전하게 관리해야 합니다. 빠른 롤백을 가능하게 하기 위해 저자는 서버에 마지막 세 개의 배포 버전을 유지할 것을 제안합니다. lockfile을 사용하여 종속성 일관성을 유지하며, 환경 전반에 걸쳐 재현 가능한 빌드를 보장합니다. 커밋하기 전에 테스트 및 빌드 단계를 로컬에서 테스트하여 문제를 조기에 발견하는 것이 좋습니다. 일반적인 문제에는 잘못된 SSH 키 형식, 빌드 출력의 경로 불일치, 배포 사용자의 서버 경로 권한 부족 등이 있습니다. 린팅 또는 데이터베이스 마이그레이션과 같은 추가 기능은 나중에 추가할 수 있으며, 단순성과 디버깅 용이성을 우선시합니다. 이 미니멀리스트 접근 방식은 많은 프로젝트에 적합하며, 반복적인 개발을 강조하고 기능적인 코어로 시작합니다.