[워밍업클럽: 쿠버네티스] 미션 #6. ArgoCD - Github 업데이트
큐브옵스 카페의 실습 미션을 기반으로 작성한 내용이다.https://cafe.naver.com/kubeops/553 1. ArgoCD로 App 생성 및 배포1-1. App 생성 하기▶ GENERALApplication Name : api-tester-2232-build-push-git Project Name : default SYNC POLICY : Manual▶ SOURCE※ <Github-Useranme>은 본인의 Username으로 수정Repository URL : https://github.com/wnsrlf0721/kubernetes-anotherclass-sprint2.git Revision : main Path : 2232-build-push-git/deploy/helm/api-tester▶ DESTINATIONCluster URL : https://kubernetes.default.svc Namespace : anotherclass-223▶ HELM 확인 후 Values files 지정VALUES FILES : values-dev.yamlCreate 버튼으로 App 생성을 하면다음과 같은 ArgoCD App이 만들어지게 된다(Healthy 같이 초록창이 뜨지는 않음). 1-2. 자동 배포 설정api-tester-2232-build-push-git > details > SYNC POLICY 순서로 클릭을 해서 아래와 같이 만들자.1-3. 자동 배포 확인잠시 기다리면 Healthy 상태가 되며 파드가 생성될거고, 대시보드를 확인하면 anotherclass-223 ns에 파드가 생성된 걸 볼수 있다. 2. Jenkins에 Github Token 등록카페에 가면 Github에서 토큰을 생성하는 방법이 자세하게 나와있다. 가서 배우자.토큰을 받은 후에 젠킨스 설정에 토큰을 등록하게 되면,Jenkins관리 > Credentials에서 github_token을 확인할 수 있다. Jekninsfile 에서 Credential 사용 확인▶ 2232-build-push-git > JenkinsfileJenkinsfile을 보면, github_token으로 github USERNAME과 PASSWORD로 깃허브에 파일을 업데이트하는 동작을 수행한다. 3. Jeknins에서 Source/Container 빌드 후 Docker로 업로드 하기3-1.새보기 및 item 생성[새보기] 만들기 -> 조회명 : 223, Type : List View [item name] 만들기 -> item name :2232-build-push-git, [Pipeline] 선택 3-2. Configure▶ Configure > General > GitHub project > Project urlProject url : https://github.com/wnsrlf0721/kubernetes-anotherclass-sprint2/▶ Configure > Advanced Project Options > Pipeline > [저장]※ <Github-Useranme>은 본인의 Username으로 수정Definition : Pipeline script from SCM Definition > SCM : Git Definition > SCM > Repositories > Repository URL : https://github.com/<Github_Username>/kubernetes-anotherclass-sprint2.git Definition > SCM > Branches to build > Branch Specifier : */main Definition > SCM > Branches to build > Additional Behaviours > Sparse Checkout paths > Path : 2232-build-push-git Definition > Script Path : 2232-build-push-git/Jenkinsfile3-3.[저장] 후 [지금 빌드] 실행 (이때는 파라미터가 없어서 실행되지 않아요!)3-4.[파라미터와 함께 빌드] 선택 후 본인의 DockerHub와 Github의 Username 입력 후 [빌드] 실행3-5.Stage View결과 확인3-6. ArgoCD에서 자동 배포 확인새로운 이미지가 들어온 걸 인식해서 생성한 후,이미지가 교체된 모습을 볼 수 있다.3-7. 다시 빌드 후 재확인깃허브에도 변경내용이 잘 반영된걸 볼 수 있다.