728x90
이전글
Gihub Secrets/ 환경변수 설정
해당 Repository의 Settings 탭의 Secrets and variables 메뉴에 있는 Actions를 눌러서 위와 같은 페이지로 이동한다.
이동 후 New repository secret버튼을 선택하여 키를 입력한다.
ACCESS_KEY와 SECRET_ACCESS_KEY를 둘 다 입력해서 Add 하게 되면 위와 같이 두 개의 Secrets가 생성된 것을 확인할 수 있다.
gradle.yml 설정
커밋된 gradle.yml을 수정해야한다.
IDE를 통해서 수정하던지, 깃허브 페이지를 통해 수정(풀 받아야 한다.)하면 된다.
기존에 작성한 yml 밑에 추가로 스크립트를 작성한다.
# 전송할 파일을 담을 디렉토리 생성
- name: Make Directory for deliver
run: mkdir deploy
# Jar 파일 Copy
- name: Copy Jar
run: cp ./build/libs/*.jar ./deploy/
# 압축파일 형태로 전달
- name: Make zip file
run: zip -r -qq -j ./<프로젝트 이름>.zip ./deploy
# S3 Bucket으로 copy
- name: Deliver to AWS S3
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
run: |
aws s3 cp \
--region ap-northeast-2 \
--acl private \
./<프로젝트 이름>.zip s3://<버킷이름>/
세 곳 부분만 해당 프로젝트 이름, 버킷 이름으로 각각 커스텀하게 입력하면 된다.
현재 진행하고 있는 프로젝트의 이름이 slog이므로 아래와 같이 입력하면 된다.
- name: Make zip file
run: zip -r -qq -j ./slog.zip ./deploy
appspec.yml 파일 추가
version: 0.0
os: linux
files:
- source: /
destination: /home/ubuntu/app
overwrite: yes
permissions:
- object: /
pattern: "**"
owner: ubuntu
group: ubuntu
hooks:
AfterInstall:
- location: scripts/stop.sh
timeout: 60
runas: ubuntu
ApplicationStart:
- location: scripts/start.sh
timeout: 60
runas: ubuntu
푸시 완료.
Code Deploy가 없으므로 에러가 발생한다.
참조
반응형
'Server > Infra' 카테고리의 다른 글
[CI/CD] Github Actions, AWS S3, AWS CodeDeploy를 이용한 CI/CD - 4 (0) | 2023.03.03 |
---|---|
[CI/CD] Github Actions, AWS S3, AWS CodeDeploy를 이용한 CI/CD - 3 (0) | 2023.03.01 |
[CI/CD] Github Actions, AWS S3, AWS CodeDeploy를 이용한 CI/CD - 1 (0) | 2023.03.01 |
[CI/CD] Github Actions, S3, CodeDeploy를 이용한 CI/CD - 0 (0) | 2023.03.01 |
[AWS S3] 이미지 업로드/삭제 테스트 (0) | 2023.01.26 |