하루하루 열심히 배워가고는 있으나
해도해도 오류가 뜨는 영역이 있으니 .. 그건 바로 배포
최근들어 github action의 감사함을 알고 열심히 활용하고있다
서버도 3개로 정리가 끝났고 ..
이제 이것들을 이용해서 action만 잘 긁어 쓰면 되는 상황이지만
항상 골치를 썩이는 action의 스크립트들 .. 쓰면서 헷갈렸던 것들을 정리해보자
가장 먼저, 그리고 가장 많이 쓰이는 것이 바로 기본이 되는 checkout
action이 실행되고 해당 레포지토리의 소스를 냅다 당기는 역할을 한다
여러 커스텀 값들이 많아 보이는데 레포지토리를 막 2~3개 쓰는 거 아니니까 ..
일단 " . " 에 모든 레포지토리의 내용을 clone한다 생각하자
shell- name: Setup Node.js
uses: actions/setup-node@v??
with:
node-version: 20
프론트 개발자들이 가장 많이 보게될 .. 그리고 무조건 쓰게될 구문이다
다른 의미는 없고 해당 action에 node를 설정한다
shell- name: Copy file to target server
run: scp -o StrictHostKeyChecking=no ./deploy.zip ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:/home/
보기만해도 끔찍하긴 하지만.. 이걸 ssh-action을 사용하면 아래와같이 적절한 커맨드로 사용 할 수 있다
shell- name: Upload deployment.zip to server
uses: appleboy/ssh-action@v0.1.6
with:
host: ${{ secrets.SSH_HOST }}
username: ${{ secrets.SSH_USER }}
key: ${{ secrets.SSH_KEY }}
file: "./deploy.zip"
target: "/home"
매우 가독성이 좋아졌다
애용하자
설명을 뭐 장황하게 써놨는데 간단히 설명하자면
이렇게 3가지만 기억하자
아마 가장 지루하고 멘탈이 나가는 작업이 CI/CD부분 아닐까 싶다
매번 개인프로젝트 새로 열면서 github action열 때마다 오류가 나서 애초에 action부터 잡고 시작하는데
그래도 화가 나는 것은 매한가지. 하지만 조금씩 나아지며 개발속도가 미친듯이 올라가는 것을 보면 뿌듯하기도하다
이전 회사에서는 jenkins로 지지고 볶고 다했는데 ..
이번회사에서 github action쓰는 거 보고 매우 행복해졌다
새로운 기술을 쓰는 느낌이 너무 좋다 행복하다
행복한 코딩 하자