Terraform 모듈 레지스트리
Terraform 모듈 레지스트리에 대해 설명합니다.
히스토리 인프라 레지스트리와 Terraform 모듈 레지스트리가 GitLab 15.11에서 단일 Terraform 모듈 레지스트리 기능으로 통합 되었습니다. GitLab 16.9에서 그룹에 대한 지원이 도입 되었습니다. Terraform 모듈 레지스트리를 사용하면 다음을 수행할 수 있습니다: GitLab 프로젝트를 Terraform 모듈의 비공개 레지스트리로 사용합니다. GitLab CI/CD로 모듈을 만들고 게시한 다음 다른 비공개 프로젝트에서 사용할 수 있습니다. Terraform 모듈 레지스트리 인증 # Terraform 모듈 레지스트리에 인증하려면 다음 중 하나가 필요합니다: 최소한 read_api 범위를 가진 개인 액세스 토큰 . CI/CD 작업 토큰 . read_package_registry 또는 write_package_registry 범위를 가진 배포 토큰 . API를 사용할 때: 배포 토큰으로 인증하는 경우 모듈을 게시하려면 write_package_registry 범위를 적용해야 합니다. 모듈을 다운로드하려면 read_package_registry 범위를 적용합니다. 개인 액세스 토큰으로 인증하는 경우 최소한 read_api 범위로 구성해야 합니다. 여기에 문서화된 방법 외의 인증 방법은 사용하지 마세요. 문서화되지 않은 인증 방법은 향후 제거될 수 있습니다. 사전 요구 사항 # Terraform 모듈을 게시하려면: Developer, Maintainer, 또는 Owner 역할이 있어야 합니다. 모듈을 삭제하려면: Maintainer 또는 Owner 역할이 있어야 합니다. Terraform 모듈 게시 # Terraform 모듈을 게시하면 모듈이 없는 경우 생성됩니다. Terraform 모듈을 게시한 후 Terraform 모듈 레지스트리 에서 볼 수 있습니다 . API 사용 # Terraform 모듈 레지스트리 API 를 사용하여 Terraform 모듈을 게시합니다. PUT /projects/:id/packages/terraform/modules/:module-name/:module-system/:module-version/file 속성 유형 필수 여부 설명 id 정수/문자열 예 프로젝트의 ID 또는 URL 인코딩된 경로 . module-name 문자열 예 모듈 이름. 지원되는 구문: 소문자(a-z)와 숫자(0-9)를 포함한 1~64개의 ASCII 문자. module-system 문자열 예 모듈 시스템. 지원되는 구문: 소문자(a-z)와 숫자(0-9)를 포함한 1~64개의 ASCII 문자. 자세한 내용은 모듈 레지스트리 프로토콜 을 참조하세요. module-version 문자열 예 모듈 버전. 시맨틱 버전 사양 을 따라야 합니다. 파일 내용을 요청 본문에 제공합니다. 요청은 /file 로 끝나야 합니다. 다른 것으로 끝나는 요청을 보내면 404 Not Found 오류가 발생합니다. Personal access token Deploy token 개인 액세스 토큰을 사용한 예시 요청: curl --fail-with-body
