본문 바로가기

GitHub Actions3

[의사 결정] SonarCloud를 사용하여 사이드 프로젝트에 정적 분석을 하기까지 잘못된 내용이나 의견 있다면 편하게 말씀해주세요 🙏🏻 상황, 사건의 개요 상황 5명이 모여 사이드 프로젝트를 하고 있습니다. 팀원이 함께 코드를 작성하니 문제들이 발생했습니다. 문제 1. 작은 실수(오타, 제거하지 못한 인라인 주석...)는 반드시 존재한다. 2. 페어 프로그래밍을 했음에도 코드 스타일, 컨밴션 통일이 잘 안 된다. 3. 코드 리뷰에서 발견하지 작은 실수들이 모여 Code Smells이 더 짙어진다. 4. 작성한 코드에 대한 예상치 못한 보안 문제나 더 좋은 패턴이 존재한다. 재발 방지를 위한 조치 항목 정적 코드 분석 도구를 사용해보는 것은 어떨까? 자동화할 수 있는 것은 자동화해보자! 정적 코드 분석이란? 정적 코드 분석(static code analysis)은 말 그대로 정적으로 코.. 2022. 8. 7.
Git Submodules를 활용한 secret, config 파일 관리, 배포 (feat. SpringBoot, GitHub Actions) 잘못된 내용이나 다른 의견 있다면 편하게 말씀해주세요 🙏🏻 이전 글 secret, config 파일 관리 방법 소개(feat. SpringBoot의 application.*) 에서 소개한 방법 3 : Git Submodules를 활용한 방법 예제를 소개한다. Git Submodules Git Submodules란 저장소 안에 다른 저장소를 원하는 디렉토리를 복제하는 기능이다. 예를 들어 A,B 프로젝트에서 공통되게 사용하는 모듈(라이브러리, 설정 값 등) C가 있다고 하자. A,B,C 모두 저장소이다. 이때 A, B 저장소에 C 소스 코드가 중복될 수 있다. 이를 A,B 저장소에 C를 서브 모듈로 두어 공통되게 사용할 수 있다. C가 수정되면 A,B 모두 수정된 코드를 사용할 수 있다. (생활 코딩 : .. 2022. 7. 2.
[일일회고] 22.05.31 - "Github Actions을 활용한 배포 자동화, 빌드(테스트 통과)에 문제 없었지만 런타임에는 에러가 발생한 문제" 📚 배운 것 배포 자동화와 아키텍처 Airbnb 프로젝트 15일 중 7일 차 진행 중이다. 어제, 오늘은 Github Actions을 활용한 배포 자동화를 하였다. 아키텍처는 아래와 같다. AWS를 활용하였다. VPC을 사용하여 public, private subnet을 구분하여 Web Server와 DB를 구분하였다. 특별한 점으론 DB ec2 네트워크를 private subnet으로 설정하여 외부 User에서 곧바로 접속할 수 없도록 하였다. VPC NAT Gateway를 활용하여 아웃바운드만 허용하였는데 VPC NAT Gateway 비용 문제로 ec2를 활용해 NAT을 직접 구현하거나 잠깐 외부 접속이 필요할 때 Elastic IP를 인터넷 게이트웨이에 잠깐 붙여 통신하는 방법을 사용하였다. 자동화.. 2022. 6. 1.