해결된 질문
24.08.09 17:52 작성
·
123
0
현재 github actions 실행할때마다 계속 Run Command timeout 뜨는 상태입니다. swap 생성을 해주었는데도 계속 실패하네요..
아래는 yml 코드입니다.
# Workflow의 이름
# Workflow : 하나의 yml 파일을 하나의 Workflow라고 부른다.
name: Deploy To EC2
# Event : 실행되는 시점을 설정
# main이라는 브랜치에 push 될 때 아래 Workflow를 실행
on:
push:
branches:
- step3
# 하나의 Workflow는 1개 이상의 Job으로 구성된다.
# 여러 Job은 기본적으로 병렬적으로 수행된다.
jobs:
# Job을 식별하기 위한 id
deploy:
# Github Actions를 실행시킬 서버 종류 선택
runs-on: ubuntu-latest
# Step : 특정 작업을 수행하는 가장 작은 단위
# Job은 여러 Step들로 구성되어 있다.
steps:
- name: SSH(원격 접속)로 EC2에 접속하기 # Step에 이름 붙이는 기능
uses: appleboy/ssh-action@v1.0.3
with:
host: ${{ secrets.EC2_HOST }} # IP 주소
username: ${{ secrets.EC2_USERNAME }}
key: ${{ secrets.EC2_PRIVATE_KEY }} # 키페어 값
script_stop:
script: |
cd /home/ubuntu/spring-gift-point
git pull origin step3
./gradlew bootJar -x test
sudo fuser -k -n tcp 8080 || true
nohup java -jar build/libs/*SNAPSHOT.jar > ./output.log >&1 &
답변 6
0
2024. 08. 09. 20:37
강사님 말씀대로 한 줄씩 추가해가면서 원인을 찾았습니다!
마지막 줄인 nohup부분을 잘못적어서 실패한거였습니다.
도움 주셔서 감사합니다!
0
2024. 08. 09. 18:48
아하 그렇군요ㅠㅠ!!
조금 더 쉽게 디버깅을 하기 위해서
script에 있는 명령어를 한 줄 씩 테스트해보는 것도 추천드립니다!
cd /home/ubuntu/spring-gift-point
이 명령어만 있을 때는 잘 작동하는 지 체크해보시고 잘 작동한다면
cd /home/ubuntu/spring-gift-point
git pull origin step3
이렇게 2줄을 테스트해보세요.
이런 식으로 1줄씩 늘려가면서 어떤 명령줄에서 문제가 있는 지 먼저 파악해보시면
쉽게 원인을 찾으실 수 있을거에요~!!
0
0
2024. 08. 09. 18:24
아! 이 부분 때문에 Github Actions에서 timeout이 발생했던 것 같네요.
./gradlew bootJar -x test
Github Actions 코드에서 위 부분을 아래의 코드로 수정해보시기 바랍니다.
./gradlew clean build -x test
0
0
2024. 08. 09. 18:06
안녕하세요 yso829612님!
Github Actions 코드에서 script_stop:
부분에 true
값이 빠져있는 것 같습니다!
script_stop: true
값을 입력해주신 뒤에 실행 한 번 시켜보시겠어요~??
2024. 08. 10. 09:32
해결하셨다니 다행이네요👍
다음에 또 공부하시다가 막히시는 점 있으면 질문 남겨주세요~~