CICD(6)
-
한 달에 42시간 절약한 개선 건 (React 빌드 속도 개선 feat.Tekton)
새해 들어 회사에서 한 해 목표를 정하다가Devops 엔지니어의 역할에 대해서 재고하게 되었다. 타 사는 어떻게 하고 있을까 찾아보다가토스의 박서진 개발자분이 빌드 속도를 올리는 것이사내 개발 효율 증진에 큰 도움이 된다는게 인상깊었다.출처: https://www.youtube.com/watch?v=2IE68SDTYvI&t=315s 내 장점은 추진력이니! 바로 사내에서 가장 많이 쓰고 오래걸리는 빌드를 찾아보다React를 쓰는 UI 쪽 빌드 양이 상당한데,빌드시간이 9~10분대인걸 보고 빠르게 개선해드리자는 다짐을 하게되었다! 결론부터 말하면 next 의 빌드 캐시를 이용해 9분 -> 5분대로 줄이는 데 성공하였다. 위 토스에서 본 방식도 써보려했으나, yarn classic(1.x) 에서 ya..
2025.01.25 -
2. Jenkins Git/Maven 설정
JDK 설정 JDK 경로는 which java 로 볼수있는데, jdk 가 전부 포함된 폴더를 가르켜야 하므로 설정할때는 bin 폴더의 상위 폴더인 opt/java/openjdk 폴더를 쓴다. Gihub 플러그인 설치 유무 확인 1. Jenkins 관리 > Plugins Installed plugins > github 검색 Github plugin 가 있으면 있는거다. 아래 처럼 설정하고 Apply > SaveMaven 설정 1. Jenkins 관리 > Plugins > Available plugins > maven 검색 Maven Integration 설 Tool 에 들어가서 설정 clean: 빌드 했었다면, 이전 작업물 지우기compile: 컴파일 package : 컴파일이 완료되면, pom.xml..
2024.09.10 -
1. Jenkins 설치 및 샘플 빌드
Jenkins 란? 오픈소스 CI/CD 툴이다.java sunmicrosystems 에서 허드슨이라는 프로젝트로 시작이 되었고, 이후 Oracle 에 합병이 되면서 Jenkins 라는 이름으로 프로젝트가 이어졌다. since 2005~ - 플러그인도 풍부하다.- Jira,redmine 같은 이슈 트래킹소프트웨어와 연계하는 면에서는 다소 불편하다.Build: Maven,Ant,Gradle VCS Plugins : Git, SVN...Lananguages Plugins : Java , Python ,Node.js Jenkins 설치 - docker desktop 을 먼저 설치한다. docker pull jenkins/jenkins# LTS 버전 설치docker pull jenkins/jenkins:lts..
2024.09.08 -
Hmall 빌드 속도 개선 건 (21분 -> 9분)
Hmall 업무에서 소스 통합 건으로 빌드가 21분 정도 소요되는게 이슈가 되어 빌드 속도 개선을 고려하였다. 결과적으로 21분-> 9분으로 속도를 개선했다. AS_ISTO_BE전체 빌드 속도21분9분 방법1. PV 변경 : git clone 위치 변경 (21분 ->12분)2. Kaniko filesystem option 튜닝 : single snapshot (12분-> 9분) 1. PV 변경 tekton에서 소스를 gitclone 해오는 위치를 변경하였는데, PV 를 NAS(Network Attached Storage)에서 워커노드 내의 파일시스템으로 변경 하였다. pv 종류yaml설명nfsname: tekton-pv-nfsspec: nfs: path: /vol-test/tekton se..
2024.08.17 -
새로운 repo 에 git commit이력까지 복사하기
git bash 창에 아래 순서 대로 입력한다. git clone --mirror // ex) git clone --mirror https://github.com/myunggiM/asis.git cd asis.git // 로컬로 클론한 곳으로 이동 git remote set-url --push origin // ex) git remote set-url --push origin https://github.com/myunggiM/tobe.git git push --mirror // 신규 레파지토리에 push
2023.05.02 -
AWS- Bamboo 솔루션 별 개념 비교
분류 Atlassian AWS 서비스명 기능 서비스명 기능 서버 X (on-premise 서버) 회사 서버 EC2 임대 서버 소스 형상관리 Bitbucket 웹기반 소스 형상관리(git 역할) Project > Repository 구조 ECR (Elastic Container Registry) 컨테이너 이미지와 아티팩트를 손쉽게 저장, 관리, 공유 및 배포 할수 있는 완전 관리형 컨테이너 레지스트리다. 배포 스크립트 정의 Bamboo Plan → stage → Job →Task 단계로 정의된 task 빌드/배포 스크립트 작성 / 실행/ 로그 관리 가능 ECS (Elastic Container Service) EC2 인스턴스에서 컨테이너 실행을 관리하는 관리형 서비스 json 으로 작성된 작업 정의서를 기..
2023.05.02