인프런 커뮤니티 질문&답변

Dev님의 프로필 이미지

작성한 질문수

AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)

1인 개발자를 위한 통합 배포 파이프라인 구축하기 (Pull Request 과정 제거)

SSH and deploy 과정에서 error

작성

·

581

2

   - name: SSH and deploy
        run: |
          ssh ${{secrets.SSH_USER_NAME}}@${{secrets.SSH_PUBLIC_IP}} "
            cd devops-practice
            git pull || exit 1
            npm install || exit 1
            npm run build || exit 1
            sudo pkill node || exit 1
            sudo npm run start & npx wait-on http://localhost 
            exit"

 

SSH and deploy 과정에서 exit 명령어가 실행되지 않고 무한 루프를 돌다가 cd가 실패하는 이슈가 발생합니다.

 

스크린샷 2023-10-20 오후 3.49.36.png

 

  • ubuntu 18.04로 변경 ⇒ github action에서 18.04은 이제 지원하지 않는 것 같음

GitHub Actions: The Ubuntu 18.04 Actions runner image is being deprecated and will be removed by 12/1/22

  • env에 AWS_DEFAULT_REGION을 추가 ⇒ 여전히 에러 발생

    이슈해결을 위해 다음 방식을 찾아보았으나, 아직 해결하지 못하였습니다.

    어떤 부분이 문제일까요?

답변 3

1

김시훈님의 프로필 이미지
김시훈
지식공유자

강의에서 ubunty 22.04버전으로 진행했을텐데 18.04로 한 이유가 있을까요?

Dev님의 프로필 이미지
Dev
질문자

SSH and deploy 과정에서 exit 명령어가 실행되지 않고 무한 루프를 돌다가 cd가 실패하는 이슈를 해결하기 위한 방안 중 하나로 ubuntu 18.04로 변경하라는 방법이 있었습니다.

ubuntu-latest 버전으로 진행한 환경에서 발생한 이슈입니다.
vm에 접근해서 deploy script에 배포 과정을 직접 입력하면 문제가 없습니다.
github action 돌릴 때만 해당 이슈가 발생합니다.


이슈 링크 입니다.
https://github.com/onejaejae/devops-practice/actions/runs/6596355071/job/17922345697

김시훈님의 프로필 이미지
김시훈
지식공유자

ㅇㅎ 액션 공유해주셔서 감사합니다! 혹시 실행을 다시 해도 같은 문제가 반복될까요?

공유해주신 링크를 확인해보니 sudo npm run start & npx wait-on http://localhost exit 이 부분에서 진행이 안된거 같네요. wait-on이 문제를 일으켰을 가능성이 있습니다. wait-on이 빨리 마무리 되어야 최종적으로 exit을 실행하고 워크플로우가 종료되거든요. wait-on이 너무 오래 걸려서 ssh 연결이 끊어졌을 수 있습니다. 일단 재실행을 해봐주세요! 그리고 강의 후반부에 컨테이너로 넘어가면서 훨씬 더 효과적이고 간결한 방법을 다루게 됩니다~

0

다른 분들도 보실 수 있게 thumbs-up 하고 갑니당

0

저도 동일한 문제가 발생하네요.

local PC 에서 ssh 로 instance 에 접근하면 npm start & npx wait-on http://localhost 동작하는데, Action 으로 실행되면 동작을 안해서 timeout 나면서 실패하네요.

이걸로 하루넘게 이것저것 해봐도 일단 안되서 패스해야 할 것 같네요. 혹시 이거 해결법 아시는 분 있으면 공유 부탁드려요.

Dev님의 프로필 이미지

작성한 질문수

질문하기