[1주차][CF, S3] 프론트엔드 개발자를 위한 CI/CD 실습 후기

두선아 Dusuna·2024년 4월 10일
1
post-thumbnail

해당 포스트는 월간 CS: React, Next의 배포와 배포자동화 A부터 Z 1주차 참여 후기입니다 👩‍💻

💻 프론트엔드 개발자를 위한 CI/CD 실습 후기

🚀 안녕하세요! 저는 월간 CS에서 진행하는 React, Next의 배포와 배포자동화를 A부터 Z에 참여하고 있는데요. 이번 4월 7일 일요일, 첫 주차에 Terraform과 GitHub Actions를 활용한 AWS CF, S3 CI/CD 실습을 진행했습니다.

과거 AWS 인프라를 사용한 프로젝트에서는 AWS를 수동으로 프로비저닝하고 배포했기 때문에 설정 오류, 일관성 부족, 반복적인 작업 등의 문제점이 있었습니다. 하지만 이번 실습에서는 인프라를 코드로 정의하고 자동화할 수 있는 Terraform을 체험해봤습니다. 🛠️

  • 협업을 처음 배웠던 2022년 당시, 팀 프로젝트 cupick의 FE 인프라. 정말 많은 트러블슈팅이 있었습니다🥹 [링크]

Terraform으로 AWS 인프라 자동화하기 [링크]

이번 스터디의 Terraform 코드로 S3 버킷, CloudFront 배포, Route53 호스팅 영역 등의 AWS 리소스를 declarative하게 정의하고, Apply 명령어로 실제 프로비저닝까지 진행해봤습니다. 이를 통해 반복 가능하고 일관된 인프라 환경을 구축할 수 있었습니다. (최강 DevOps 민석님👏)

GitHub Actions로 CI/CD 파이프라인 구축하기 🤖

또한 GitHub Actions 워크플로우를 추가하여 CI/CD 파이프라인을 구축해보는 실습도 있었습니다.

GitHub Actions는 CI/CD 외에도 이슈 자동화, 프로젝트 관리, 스케줄링 작업 등 다양한 기능을 제공하기 때문에 프론트엔드 개발 프로세스 전반에 활용할 수 있습니다. 예를 들어 풀리퀘스트가 열리면 자동으로 코드 스타일 검사와 테스트를 수행하도록 설정할 수 있습니다.

실습에 앞선 강의로 GitHub Flow 브랜칭 전략도 알아봤습니다. 기능 개발용 브랜치를 만들고 풀리퀘스트를 통해 코드리뷰를 거친 후에 메인 브랜치에 병합하는 방식으로 작업하는 Git Flow보다 간소한 방식입니다. 이를 통해 안전하게 코드를 통합하고 지속적으로 제품에 가치를 더할 수 있습니다.

인프라 자동화, CI/CD 등의 현대적 기술 도입을 통해 개발과 운영의 격차를 점점 쉽게 좁힐 수 있습니다! 궁극적으로는 개발 생산성 향상과 제품 출시 주기 단축으로 이어질 수 있습니다.

앞으로의 목표 💯

8주 동안 이어질 실습을 통해 AWS 기반의 클라우드 환경에서 모던 애플리케이션 개발 방식을 경험해보고자 합니다. 물론 Netlify, Vercel 등의 SaaS를 활용하는 것도 간편하고 다양한 기능을 제공하지만, 직접 클라우드 인프라를 관리하는 과정에서 더 깊이 있는 학습이 가능할 것입니다.

클라우드 네이티브 기술을 지속해서 공부하면서, 이를 통해 더욱 효율적이고 안정적인 애플리케이션 개발 및 운영 역량을 갖출 수 있을 것으로 기대합니다. 😄

profile
안녕하세요.

0개의 댓글