Skip to main content Link Menu Expand (external link) Document Search Copy Copied

created at 2024-12-01

Table of contents

  1. 자동화 파이프라인 정리
    1. MODULE TO BUILD
    2. JIB
    3. GRAFANA

자동화 파이프라인 정리

MODULE TO BUILD

  • 변경된 파일 목록들 가져와서 공통 모듈이 변경되면 해당 모듈로부터 파생된 다른 모듈들 전부 deploy list 에 넣기.
  • 만약 특정 하위 모듈만 변경되면 해당 모듈만 list 에 추가. 여기서도 추가 반복되는 작업이 발생. (자꾸 빌드 머신이 죽음 -> 리붓 + git runner start cmd 실행 -> 다시 idle 확인) 귀찮아서 다음과 같이 자동화시킴. aws lambda 로 instance reboot, git runner start cmd 실행 자동화, cronjob 으로 매일 리붓, aws api gateway 연결해서 restapi GET 보내면 자동 리붓하도록 만듬. 그래서 버튼 딸깍으로 정상화 가능. 근데 HTTP api gateway inbound traffic 제한 못시켜서(ACL X) ALB 랑 lambda 연결시켜야 할 듯.

JIB

jib 로 docker image build + ./gradlew build + Dockerfile 없이 그냥 ./gradlew jib 이 명령어 하나로 build + image push 하도록. 근데 jib 로 하니까 파일 COPY 했을 때 해시 값이 변경되는 문제가 발생(정상 COPY X). 그래서 copy 할 때 tar 로 압축해서 COPY 하도록 변경. 이게 살짝 불편함.

GRAFANA

cronjob 배치 상태 체크 위해 grafana 에 batch db 에서 데이터 가져와서 시간 별 상황 표시. 근데 만약 job repo 에 넣지 않도록 job 설정해 놨으면 못읽음. 그래서 좀 더 정확하게 할려면 k8s cronjob 로그 읽고 저장할 수 있도록 prometheus 랑 연동하는게 좋을듯? 추가적으로 button 클릭 시 restapi 전송하는 플러그인 찾는중.