본문 바로가기

전체 글232

Github Actions 자동배포화에 또다른 방법으로 GithubActions를 배웠다. ㅇ Github Actions 란? Github가 공식적으로 제공하는 빌드, 테스트 및 배포 파이프라인을 자동화할 수 있는 CI/CD 플랫폼. 워크플로는 .yml(.yaml)파일에 의해 구성됨. 테스트, 배포 등 기능에 따라 여러개의 워크플로 만들수 있음. 생성된 워크플로는 .github/workflows 디렉토리 이하에 위치하게 됨. 공개 레포지토리는 무료로 사용가능 ㅇ Github Actions main 브랜치에 적용된 변동 사항을 기준으로 프로젝트를 빌드함. 빌드를 마친 프로젝트를 S3 버킷에 저장하고 Code Deploy에 S3에서 EC2로 배포 명령을 내림 ㅇ S3 저번엔 S3를 정적 웹 페이지 배포에 사용했다. 이번엔 저장소로써 .. 2023. 2. 6.
Section3-4 ㅇ Service API계층에서 구현한 Controller클래스가 서비스 계층의 Service클래스와 상호작용함. 애플리케이션에서 Service 라 하믄, 도메인 업무 영역을 구현하는 비지니스 로직과 관련있음. 비지니스 로직을 처리하는 서비스계층은 도메인 모델을 포함한다. ㅇ Member 클래스, MemberService 클래스 구현! @Getter @Setter @NoArgsConstructor @AllArgsConstructor public class Member { private long memberId; private String email; private String name; private String phone; } Member클래스의 애너테이션들은 Lombok에서 제공하는 아주 편리한 애너.. 2023. 2. 4.
Section3-3 ㅇ JSON 문자열을 MAP으로 //MemberController에서 System.out.println()"# email: " + email); System.out.println()"# name: " + name); System.out.println()"# phone: " + phone); String response = "{\"" + "email\":\""+email+"\"," + "\"name\":\""+name+"\",\"" + "phone\":\"" + phone+ "\"}"; return response; //위 코드 JSON 문자열 수작업을 MAP 객체로 대체한다. Map map = new HashMap(); map.put("email", email); map.put("name", name);.. 2023. 2. 4.
자동배포방식 - Pipeline ㅇ 배포자동화 한번의 클릭 혹은 명령어 입력을 통해 전체 배포 과정을 자동으로 진행하는 것. 수동적이고 반복적인 배포과정을 자동화하며 휴먼 에러 발생가능성을 낮출 수 있다. ㅇ 배포 자동화 파이프라인 파이프라인은 소스 코드의 관리부터 실제 서비스로의 배포과정을 연결하는 구조를 뜻함. Source단계 : 원격 저장소에 관리되고 있는 소스 코드에 변경 사항이 일어날 경우, 이를 감지하고 다음 단계로 전달하는 작업을 수행함. Build 단계 : 전 단계에서 전달받은 코드를 컴파일, 빌드, 테스트해 가공한다. Deploy 단계 : 전 단계에선 Build 단계로부터 전달받은 결과물을 실제 서비스에 반영하는 작업을 수행함. ** 파이프라인의 단계는 세분화되거나 간소화될 수 있음. ** ㅇ AWS개발자 도구 AWS에.. 2023. 2. 4.