CI/CD 용어 사전
학습노트에서 용어를 누르면 여기로 옵니다. 파이프라인 설정과 그 기본값의 의미, 그리고 그것이 잘못됐을 때 실제로 무엇이 터지는지를 함께 정리했습니다.
13개 용어 · 상세 정리 13개
총 13개 용어
파이프라인4
- 지속적 통합CI · Continuous Integration
빌드 자동화가 아니라 '모두의 변경을 자주 합치는' 습관이다. 자동화는 그걸 가능하게 하는 수단이다.
- 지속적 전달·배포Continuous Delivery · Continuous Deployment · CD
CD 두 글자에 서로 다른 두 개가 들어 있다. 갈리는 지점은 '사람이 버튼을 누르는가' 다.
- 한 번 빌드, 여러 번 배포아티팩트 승격 · 환경 승격 · 승격 · 빌드 한 번 · build once
환경마다 다시 빌드하지 않는다. 테스트한 그 산출물이 그대로 운영에 올라가야 한다.
- 브랜치 보호필수 상태 체크 · branch protection
이것이 없으면 파이프라인은 강제가 아니라 권고다. 통과 여부와 무관하게 합칠 수 있기 때문이다.
배포2
지표1
GitHub Actions6
- GITHUB_TOKEN 권한permissions · 최소 권한
워크플로에 자동 발급되는 토큰. 기본을 읽기로 두고 필요한 잡에서만 올린다.
- pull_request_targetpull_request
시크릿과 쓰기 권한을 갖고 도는 이벤트. 여기서 PR 코드를 실행하면 공급망 취약점이 된다.
- 스크립트 인젝션script injection
PR 제목·브랜치명은 공격자가 정하는 문자열이다. 셸에 그대로 보간하면 임의 명령이 실행된다.
- 액션 SHA 고정SHA 고정 · 액션 고정
태그는 옮길 수 있다. 전체 커밋 SHA만이 불변 참조다.
- OIDCOpenID Connect · id-token
장기 클라우드 키를 시크릿에 두지 않는다. 워크플로가 단기 토큰을 발급받아 역할을 맡는다.
- 셀프 호스티드 러너self-hosted runner · 러너
우리 인프라에서 도는 러너. 공개 저장소에 붙이면 누구나 우리 안에서 코드를 실행할 수 있다.