Go Proxy API
Offering: GitLab Self-Managed, GitLab Dedicated
이 API를 사용하여 Go 패키지 관리자 클라이언트와 상호작용합니다. 이 API는 go 명령에서 사용하며 일반적으로 수동으로 사용하기 위한 것이 아닙니다. 이 엔드포인트는 표준 API 인증 방법을 따르지 않습니다. 지정된 Go 모듈의 모든 태그된 버전을 가져옵니다:
이 API를 사용하여 Go 패키지 관리자 클라이언트와 상호작용합니다. 이 API는 기본적으로 비활성화된 기능 플래그 뒤에 있습니다. GitLab Rails 콘솔에 접근할 수 있는 GitLab 관리자가 GitLab 인스턴스에서 이 API를 활성화할 수 있습니다.
이 API는 go 명령에서 사용하며
일반적으로 수동으로 사용하기 위한 것이 아닙니다.
이 엔드포인트는 표준 API 인증 방법을 따르지 않습니다. 지원되는 헤더 및 토큰 유형에 대한 자세한 내용은 Go Proxy 패키지 설명서를 참조하세요. 문서화되지 않은 인증 방법은 향후 제거될 수 있습니다.
목록#
지정된 Go 모듈의 모든 태그된 버전을 가져옵니다:
GET projects/:id/packages/go/:module_name/@v/list
| 속성 | 유형 | 필수 | 설명 |
|---|---|---|---|
id |
string | 예 | 프로젝트 ID 또는 프로젝트의 전체 경로. |
module_name |
string | 예 | Go 모듈의 이름. |
curl --header "PRIVATE-TOKEN: <personal_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/1/packages/go/my-go-module/@v/list"
출력 예시:
"v1.0.0\nv1.0.1\nv1.3.8\n2.0.0\n2.1.0\n3.0.0"
버전 메타데이터#
지정된 Go 모듈의 모든 태그된 버전을 가져옵니다:
GET projects/:id/packages/go/:module_name/@v/:module_version.info
| 속성 | 유형 | 필수 | 설명 |
|---|---|---|---|
id |
string | 예 | 프로젝트 ID 또는 프로젝트의 전체 경로. |
module_name |
string | 예 | Go 모듈의 이름. |
module_version |
string | 예 | Go 모듈의 버전. |
curl --header "PRIVATE-TOKEN: <personal_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/1/packages/go/my-go-module/@v/1.0.0.info"
출력 예시:
{
"Version": "v1.0.0",
"Time": "1617822312 -0600"
}
모듈 파일 다운로드#
.mod 모듈 파일을 가져옵니다:
GET projects/:id/packages/go/:module_name/@v/:module_version.mod
| 속성 | 유형 | 필수 | 설명 |
|---|---|---|---|
id |
string | 예 | 프로젝트 ID 또는 프로젝트의 전체 경로. |
module_name |
string | 예 | Go 모듈의 이름. |
module_version |
string | 예 | Go 모듈의 버전. |
curl --header "PRIVATE-TOKEN: <personal_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/1/packages/go/my-go-module/@v/1.0.0.mod"
파일로 저장:
curl --header "PRIVATE-TOKEN: <personal_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/1/packages/go/my-go-module/@v/1.0.0.mod" >> foo.mod
현재 디렉토리의 foo.mod에 저장됩니다.
모듈 소스 다운로드#
모듈 소스의 .zip을 가져옵니다:
GET projects/:id/packages/go/:module_name/@v/:module_version.zip
| 속성 | 유형 | 필수 | 설명 |
|---|---|---|---|
id |
string | 예 | 프로젝트 ID 또는 프로젝트의 전체 경로. |
module_name |
string | 예 | Go 모듈의 이름. |
module_version |
string | 예 | Go 모듈의 버전. |
curl --header "PRIVATE-TOKEN: <personal_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/1/packages/go/my-go-module/@v/1.0.0.zip"
파일로 저장:
curl --header "PRIVATE-TOKEN: <personal_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/1/packages/go/my-go-module/@v/1.0.0.zip" >> foo.zip
현재 디렉토리의 foo.zip에 저장됩니다.
