Archives
12-05 09:55
Today
7
Total
287,855
관리 메뉴

FILife

Shell Script로 npm build, git push, deploy 하기 본문

내가 자꾸 까먹어서 쓰는 개발 이야기/Linux Server

Shell Script로 npm build, git push, deploy 하기

FIL 2019. 7. 5. 18:02
728x90

Laravel-mix + Vue 를 쓰다보니 귀찮은 일이 생겼다.

 

바로 npm 빌드 시 평소에는 dev 모드로 빌드해서 debug를 하고, 배포할땐 production 빌드를 해야 하는 점이다.

 

고민하다 sh를 짜기로 했다.

 

역할은 매우 간단하다.

 

1. 배포할 서버를 입력 받는다.

2. 커밋 메시지를 입력 받는다. (없으면 커밋이 안되니까)

3. 빌드한다

4. git add, git commit, git push를 차례대로 수행한다.

5. deployer로 배포한다.

 

먼저 vi나 touch 커맨드로 dep.sh 파일을 생성한다.

 

chmod +x dep.sh 를 수행하여 실행 권한을 준다.

 

sh는 아래와 같다.

build=""
st () { #해당하는 번호가 없으면 다시 선택할 수 있도록 함수 작성
    echo -e "어디에 배포하나요? (1: qa, 9: production): c"
    read stage
    if [ $stage == "1" ]; then
        build="development"
    elif [ $stage == "9" ]; then
        build="production"
    else
        st
        exit 1 
    fi
}

st #call func

echo $build

echo -e "커밋 메시지를 입력하세요: c"
read msg

cd public && npm run ${build}
cd ..
git add .
git commit -m ${msg}
git push
dep deploy ${stage}

중간에 git을 사용하는 부분에서 계정을 자꾸 물어봐 저장해두기로 했다.

git config --global credential.helper 'cache --timeout=86400000'

(https://www.devkwon.com/posts/132)

 

LF를 CRLF로 변경한다는 메시지가 성가시지만, 일단 잘 된다.

 

0 Comments
댓글쓰기 폼