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

송민철님의 프로필 이미지
송민철

작성한 질문수

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

배포용 Workflow 만들기

deploy.yml이 workflow에서 작동되지 않는 이유

작성

·

376

·

수정됨

0

섹션 4의 "배포용 Workflow 만들기"를 수강 중 deploy.yml이 진행되지 않습니다..

test.yml은 진행이 잘 됩니다

뭐가 문제일까요?
.yml 파일 작성할 때 들여쓰기가 상관이 있나요?

아래는 작성한 deploy.yml 파일입니다.

추가로 한 탭씩 들여쓰기 하지 않고 중간 중간에 스페이스 두 번으로 들여쓰기 하는게 있는데, 규칙인가요?

- (대시)기호 이것도 규칙인가요? 안 적으면 실행이 안되는건가요?


name: deploy

on:
    push:
      branches:
        - main

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - name: Set up SSH
        run: |
            mkdir -p ~/.ssh/
            echo "${{secrets.SSH_PRIVATE_KEY}}" > ~/.ssh/id_rsa
            chmod 600 ~/.ssh/id_rsa
      - name: Set up known hosts
        run: |
         echo "${{secrets.SSH_KNOWN_HOSTS}}" >> ~/.ssh/known_hosts
         chmod 644 ~/.ssh/known_hosts
      - name: SSH and deploy
        run: |
         ssh ${{secrets.SSH_USERNAME}}@${{secrets.SSH_PUBLIC_IP}} "
          cd express
          git pull || exit 1
          npm install || exit 1
          npm run build || exit 1
          sudo pkill node || exit 1
          sudo npm run start & || exit 1
          sudo npm run start & npx wait-on http://localhost
          exit
         "

 

 

 

답변 2

1

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

안녕하세요~

음 일단 이렇게만 봐서는 저도 정확한 원인을 알 수가 없습니다.

 

마지막에 보면 npm run start가 중복으로 되어 있는데 강의에서도 제가 그렇게 했었나요??

이 workflow 배포하실 때 github action에 들어가면 상세한 로그가 나오는데 그걸 보고 디버깅을 해보셔야할듯 합니다. 그래도 해결안되면 해당 로그를 공유해주세요!

송민철님의 프로필 이미지
송민철
질문자

아.. 해결했습니다.

깃 브랜치가 저는 main이 아닌 master여서 문제가 발생했습니다

0

저도 안되요

name: deploy

on:
  push:
    branches:
      - main

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - name: Debug SSH_USERNAME and SSH_PUBLIC_IP
        run: |
          echo "SSH_USERNAME: ${{ secrets.SSH_USERNAME }}"
          echo "SSH_PUBLIC_IP: ${{ secrets.SSH_PUBLIC_IP }}"

      - name: Set up SSH
        run: |
          mkdir -p ~/.ssh
          echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa
          chmod 600 ~/.ssh/id_rsa

      - name: Set up known hosts
        run: |
          echo "${{ secrets.SSH_KNOWN_HOSTS }}" >> ~/.ssh/known_hosts
          chmod 644 ~/.ssh/known_hosts

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

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

이건 ssh 키들 중에서 뭔가 설정이 잘못된 경우 같습니다. ssh username, public ip가 잘못된걸 수도 있고 ssh private key에 문제가 있을 수도 있습니다.

송민철님의 프로필 이미지
송민철

작성한 질문수

질문하기