GitLab CI/CD 템플릿 개발 가이드 (지원 종료)
GitLab CI/CD 템플릿 작성 요건, 디렉터리 구조, 버전 관리, 테스트 및 보안 고려 사항을 설명합니다.
CI/CD 카탈로그 의 도입으로 인해, GitLab은 더 이상 코드베이스에 새로운 CI/CD 템플릿 기여를 수락하지 않습니다. 대신, 팀원들이 카탈로그를 위한 CI/CD 컴포넌트 를 생성하도록 권장합니다. 이 전환은 공유 CI/CD 리소스의 모듈성과 유지보수성을 향상시키고, 새로운 CI/CD 템플릿 기여의 복잡성을 방지합니다. 기존 템플릿을 업데이트해야 하는 경우, 일치하는 CI/CD 컴포넌트도 함께 업데이트해야 합니다. CI/CD 템플릿과 일치하는 컴포넌트가 아직 존재하지 않는 경우, 일치하는 컴포넌트 생성 을 고려하세요. 이를 통해 템플릿과 컴포넌트 기능이 동기화 상태를 유지하며, 새로운 개발 관행에 부합하게 됩니다. 이 문서에서는 GitLab CI/CD 템플릿을 개발하는 방법을 설명합니다. CI/CD 템플릿 요건 # 새 CI/CD 템플릿을 추가하거나 기존 템플릿을 업데이트하는 머지 리퀘스트를 제출하기 전에 다음 사항을 완료해야 합니다: 올바른 디렉터리 에 템플릿을 배치합니다. CI/CD 템플릿 작성 가이드라인 을 따릅니다. *.gitlab-ci.yml 형식으로 템플릿 이름을 지정합니다. 유효한 .gitlab-ci.yml 문법 을 사용합니다. CI/CD lint 도구 로 유효성을 검증하세요. 템플릿 메트릭을 추가 합니다. 머지 리퀘스트가 사용자 대면 변경 사항을 도입하는 경우 변경 이력(changelog) 을 포함합니다. 템플릿 검토 프로세스 를 따릅니다. (선택 사항이지만 강력히 권장) 검토자가 접근할 수 있는 예시 GitLab 프로젝트에서 템플릿을 테스트합니다. 검토자가 템플릿에 필요한 데이터나 구성을 직접 만들지 못할 수 있으므로, 예시 프로젝트는 검토자가 템플릿의 정확성을 확인하는 데 도움이 됩니다. 머지 리퀘스트를 검토를 위해 제출하기 전에 예시 프로젝트의 파이프라인이 성공해야 합니다. 템플릿 디렉터리 # 모든 템플릿 파일은 lib/gitlab/ci/templates 에 저장됩니다. 일반 템플릿은 이 디렉터리에 저장하되, 특정 템플릿 유형은 별도로 예약된 디렉터리가 있습니다. 새 파일 UI에서 템플릿을 선택 할 수 있는지 여부는 템플릿이 있는 디렉터리에 따라 결정됩니다: 하위 디렉터리 UI에서 선택 가능 템플릿 유형 /* (루트) 예 일반 템플릿 /AWS/* 아니요 클라우드 배포(AWS) 관련 템플릿 /Jobs/* 아니요 Auto DevOps 관련 템플릿 /Pages/* 예 GitLab Pages에서 정적 사이트 생성기를 사용하기 위한 샘플 템플릿 /Security/* 예 보안 스캐너 관련 템플릿 /Terraform/* 아니요 코드형 인프라(Terraform) 관련 템플릿 /Verify/* 예 테스트 기능 관련 템플릿 /Workflows/* 아니요 workflow: 키워드 사용을 위한 샘플 템플릿 템플릿 작성 가이드라인 # 다음 가이드라인을 사용하여 템플릿 제출이 표준을 따르는지 확인하세요: 템플릿 유형 # 템플릿에는 두 가지 유형이 있으며, 이는 템플릿을 작성하고 사용하는 방식에 영향을 미칩니다. 템플릿의 스타일은 다음 두