[section 4] Cloud - 배포 자동화(2) - Github Actions

수경·2023년 2월 5일
0

코드스테이츠

목록 보기
55/57

Github Actions

Github가 공식적으로 제공하는 빌드, 테스트 및 배포 파이프라인을 자동화할 수 있는 CI/CD 플랫폼

  • push / pull request 와 같은 이벤트를 트리거로 Github 작업 워크플로우를 구성

  • .yml 파일에 의해 워크플로우 구성 -> ./github/workflows 에 저장

  • 비공개 repository의 경우 용량과 시간 제한됨


리소스 설정

  1. public repository 생성

  2. Actions 탭
    Java with Gradle 선택, yml 파일 commit

  3. AWS 리소스와 연결하기 위한 secret key값 저장

    repo > settings > secrets > new repository secret

  • AWS_ACCESS_KEY
  • AWS_SECRET_ACCESS_KEY
  1. yml 파일 수정

    secret key에 대한 값을 찾기위해 환경변수 설정

➡️ S3 버킷에 저장됨


빌드파일 배포 및 실행

  1. 애플리케이션 새로 만들기

  2. appspec.sh , scripts/deploy.sh 파일 생성

  3. .yml 파일 수정

  • S3 버킷 이름 수정
  • 압축한 프로젝트 S3로 전송
  • CodeDeploy에 배포 명령

➡️ 배포


삽질...🫥

deploy.sh 파일에서 찾는 build 파일명과 실제로 만들어진 build 파일명이 달라서 파일을 못 찾아서 페이지를 띄우지 못함

정확히는 build 파일 복사부터 실패했으니 배포도 실패한 것..................

  • 프로젝트 이름 : practice-githubAction-deploy

  • deploy.sh 에서 지정한 빌드 파일명 : practice-githubAction-deploy-0.0.1-SNAPSHOT.jar

  • 실제 빌드 파일명 : practice-github.Action-deploy-0.0.1-SNAPSHOT.jar

애초에 spring 프로젝트를 만들 때 이름을 잘못 설정함,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ㅠ

이거 찾느라 하루 종일 걸렸는데, 그래도 log 파일 덕분에 금방(?) 눈치챌 수 있었다..

log 파일을 잘 활용해보자,,,

profile
어쩌다보니 tmi뿐인 블로그😎

0개의 댓글