Argo CD에 컨트리뷰트하며 본 새로운 것들

0
post-thumbnail

Argo CD? 그게 뭔데 씹덕아

Argo CD 는 쿠버네티스 진영의 대표적인 GitOps 도구입니다.
아시겠습니까 휴먼

AWS, Azure, GCP 같은 클라우드 플랫폼의 k8s 가이드를 보면
GitOps 부분에 항상 문어같은 녀석이 나타나는데, 그게 Argo CD 입니다.

꼴뚜기 왕자님?

내가 앞으로 열심히 쓰게 될 도구에는 많이 기여를 해야 애정이 생기고 잘 하게 된다고 생각해서
Argo CD에 컨트리뷰트를 하기로 했습니다.

지난 회사에 있었을 땐 Mozilla Hubs 에 열심히 기여했었거든요.
(대략 다 합쳐서 1000줄 정도 했던 듯)

그래서 뭘 컨트리뷰트 했는데?

마침 Web UI가 국제화(i18n) 되어있지 않아 그 부분을 기여하려 했는데,
PR을 올리고 보니 테스트 에러가 나길래
테스트를 고쳐서 PR을 올리고 컨트리뷰터가 됐습니다.(어?)

그러는 중에 PR의 Checks에 처음 보는 것들이 많길래 눈에 띄는 것 몇개를 가져와봤습니다.

DCO와 signoff commit

https://probot.github.io/apps/dco/

커밋이 signoff 되지 않았다는 생전 처음 보는 경고가 PR에 올라왔길래 봤더니
git rebase HEAD~1 --signoff 이라는걸 하라고 알려줘서 일단 해서 올렸었습니다.

signoff 를 하면 위 처럼 Signed-off-by 라는게 붙는데, DCO(Developer Certificate of Origin) 를 준수했다는 서명이라고 하더라구요.
DCO가 뭔지는 위의 링크를 눌러서 읽어보십시오.
나도 아직 정확하게 잘 모른다거나 그런거 아님

Semantic PR title

https://github.com/amannn/action-semantic-pull-request

Argo CD는 PR을 Squash and merge 를 하는데, 그러다보니 PR의 제목이 머지했을 때 커밋으로 올라갑니다.
그 때문에 PR의 제목을 커밋 형식에 맞추도록 하는 듯 한데, 꽤나 마음에 들어서 가져와봤습니다.

Argo CD 에서는
https://github.com/argoproj/argo-cd/blob/master/.github/workflows/pr-title-check.yml
이렇게 사용 중인데, 다음번에 참고해서 나도 써먹어야지 하는 생각이 듭니다.

snyk

https://app.snyk.io

Actions에 뭐가 많길래 둘러보다 첨 보는게 있길래 눌러봤는데, 취약성 점검 도구라고 합니다.
직접 제 라이브러리에 적용해보니 꽤나 유용하다는 생각이 들었습니다.

몰랐던 취약성이 나오는데, 아 이렇게 새로운걸 배우는구나 하는 기분도 들고 좋더라구요.
덤으로 취약성도 고치고
아니 그게 덤이 아니잖

USERS

https://github.com/argoproj/argo-cd/blob/master/USERS.md

Optional. My organization is added to USERS.md

이것도 꽤나 신선했는데,
"우리 회사도 Argo CD를 써요!"
하고 회사 이름을 추가할 수 있게 되어있었습니다.

PR을 올리고나서 체크리스트를 보니 이런게 있길래
추가해도 되나? 하고 올려봤는데 같이 올라갔습니다.

그래서 우리 회사의 이름도 올렸습니다.
아니 위에 CERN이 있다니
슈타인즈 게이트는 존재하는가
멍청아 그건 SERN...

profile
지상 최강의 개발자 쥬니니

0개의 댓글