github actions 자동 배포 : ssh-action 사용 방법
영상 : https://www.youtube.com/watch?v=Np64aq4AlLg
참고 : https://github.com/appleboy/ssh-action
GitHub - appleboy/ssh-action: GitHub Actions for executing remote ssh commands.
GitHub Actions for executing remote ssh commands. Contribute to appleboy/ssh-action development by creating an account on GitHub.
github.com
1. ssh-action 설명
1. 동작 정의 : github action의 yml 파일에서 ssh를 이용해 배포 작업을 지원한다.
2. 주의 사항 : 리눅스 기반 컨테이너만 지원한다고 명시되어 있다.
3. 예시 :
name: remote ssh command
on: [push]
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- name: executing remote ssh commands using key
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.HOST }}
username: ${{ secrets.USERNAME }}
key: ${{ secrets.KEY }}
port: ${{ secrets.PORT }}
script: | // 버티컬바를 사용하면 여러 명령어를 순차 실행할 수 있다.
./deploy.sh
1. 일반적으로 사용하는 aliace
1. 사용 예시 : deploy='ssh -i ~/keys/okkyelk.pem ec2-user@okdevtv.com "./deploy.sh"'
2. deploy.sh 소스 예시 :
#!/bin/sh
HOME=home/dev
source $HOME/.zshrc
git pull;
SRC=.
DEST=$HOME/local/okdevtv
cp -rf $SRC/* $DEST
cd $DEST
npm install
pm2 restart all
# end
🐧 리눅스 Alias 설정 & 사용법 정리 (+ 단축 예제 TIP)
리눅스 Alias 설정 Alias는 명령어를 간소화하여 다른 이름으로 사용할 수 있도록 해주는 쉘내부 명령어이다. 즉 복잡한 명령어나 여러 옵션을 사용하는 명령어를 간단한 이름으로 사용할 수 있도
inpa.tistory.com
4. 환경 변수 설정 방법
1. project의 settings에 Secrets라는 메뉴를 선택하여 등록 가능
5. 확장 사용 방법
1. 메일 혹은 slack 등으로 action 결과를 전달 받을 수 있음