Computer Science/Git & Github

    [Github Actions] 태그 생성 및 릴리즈 자동화 후 배포 파이프라인 작동

    📕 목차1. 설계2. 태그 생성 및 릴리즈 자동화3. 배포 workflows 호출1. 설계 📌 고려 사항멀티 모듈 아키텍처로 구성된 프로젝트를 진행하던 중, 드디어 Application 영역의 도메인이 하나 더 추가가 되었다.기존의 CD 파이프라인은 external-api 모듈만을 타겟팅하여 빌드하고 있었는데, 이 방식은 현재 작업한 내용이 Socket, Admin, Batch 모듈과 관련한 작업이라면 문제가 발생할 수밖에 없었다. 그래서 CD 파이프라인을 분리하기 위해 git tag를 활용하는 것이 가장 안전하다고 판단했다.하지만 태그는 혼자서 하는 프로젝트에서 조차 휴먼 에러가 쉽게 발생할 수 있는 것 중 하나인 것을 이미 경험해봐서 알고 있었다.또한 작업 후에 태그를 push하고 릴리즈를 반영하..

    [Github Actions] Github Actions로 Spring Boot 애플리케이션을 Naver Cloud Platform Server에 지속적 배포(CD) 파이프라인 구축하기

    📕 목차 1. 고민해봐야 할 것들 2. NCP CLI 3. Github Action script 1. 고민해봐야 할 것들 요새 밥도 안 먹고, 잠도 안 자고 하루종일 개발만 하느라 포스팅 수도 확 줄어버렸네. 최근 DB Query 최적화 문제도 그렇고 포스팅 할 게 제법 많아서, 하나씩 정리해둘 생각. 📌 ACG 22번 포트를 자유롭게 두면, 거기만 집중적으로 찔러보고 다니는 매크로에 당할 수 있다. 그래서 보통 개발자가 서버에 접근하는 주요 IP만을 제외하고 모두 막아야 한다. 문제는 Github action의 host를 사용하면 IP 주소를 특정할 수 없다는 점인데, 처음에는 그냥 귀찮아서 포트포워딩 해버리고 해당 port를 전체 개방해버릴 심산이었다. 일단 동작하는 거 확인하고 나중에 바꾸려던 거였..

    [Git] What is Git? (2)

    Git은 솔직히 이론 공부보다는 실전 사용이 훨씬 중요하다. 공부를 목적으로 팀 프로젝트 해보면서 커밋 내역도 날려먹었다가 욕도 먹어보고, 충돌나서 뇌가 정지하는 경험을 반복하다 보면 능숙해진다. (난 42Seoul에서 리눅스 명령어와 함께 뇌에 강제 주입시켰었다.) [Git] What is Git? 올해 동아리 대표로 활동하게 되면서 어디서부터 일반 부원들을 가르쳐야 할까 고민하다가, 생각보다 많은 학생들이 모르던 Git에 대해 다루게 되었다. (전공자라도 별도로 프로젝트나 웹에 대 jaeseo0519.tistory.com 이전 포스팅에서 git의 기초를 다뤘고 이번에는 branch에 대해 설명할 것이다. 개인 프로젝트에서도 중요하긴 하지만 팀 프로젝트에서 branch에 대한 개념을 모른다면..여러모로..

    [Git] What is Git?

    올해 동아리 대표로 활동하게 되면서 어디서부터 일반 부원들을 가르쳐야 할까 고민하다가, 생각보다 많은 학생들이 모르던 Git에 대해 다루게 되었다. (전공자라도 별도로 프로젝트나 웹에 대해 공부를 해보지 않은 분들은 모르는 경우가 많았다.) 어차피 git을 검색해볼 정도라면 대부분 프로젝트를 이제 막 처음 시작해보는 분들이 많을 것 같으니, 최대한 쉽고 간단하게 정리하려고 노력했다. git branch를 나누고 팀플을 진행하는 방식과 commit 내역을 관리하는 내용까지 쓰려니 너무 길어져서 다음 포스트에 이어적을 계획이다. 목차 1. What is Git & Github? 2. Git command & flow 3. git init, git status : git 영역을 생성하고 확인하자. 4. git..