- 그룹에서 패키지 파일 다운로드
- 그룹 수준 간단 API 인덱스
- 그룹 수준 간단한 API 진입점
- 프로젝트에서 패키지 파일 다운로드
- 프로젝트 수준 간단한 API 인덱스
- 프로젝트 수준 간단한 API 진입점
- 패키지 업로드
PyPI API
이 문서는 PyPI 패키지에 대한 API 문서입니다.
이 API는 PyPI 패키지 관리자 클라이언트에 의해 사용되며 일반적으로 수동으로 사용하기 위한 것이 아닙니다.
GitLab 패키지 레지스트리에서 PyPI 패키지를 업로드하고 설치하는 방법에 대한 지침은 PyPI 패키지 레지스트리 문서를 참조하십시오.
어떤 헤더와 토큰 유형이 지원되는지에 대한 자세한 내용은 PyPI 패키지 레지스트리 문서를 참조하십시오.
문서화되지 않은 인증 방법은 향후 제거될 수 있습니다.
그룹에서 패키지 파일 다운로드
PyPI 패키지 파일을 다운로드합니다. 보통 간단한 API는 이 URL을 제공합니다.
GET groups/:id/-/packages/pypi/files/:sha256/:file_identifier
속성 | 유형 | 필수 | 설명 |
---|---|---|---|
id |
string | 예 | 그룹의 ID 또는 전체 경로입니다. |
sha256 |
string | 예 | PyPI 패키지 파일의 sha256 체크섬입니다. |
file_identifier |
string | 예 | PyPI 패키지 파일의 이름입니다. |
curl --user <username>:<personal_access_token> "https://gitlab.example.com/api/v4/groups/1/-/packages/pypi/files/5y57017232013c8ac80647f4ca153k3726f6cba62d055cd747844ed95b3c65ff/my.pypi.package-0.0.1.tar.gz"
출력 결과를 파일에 쓰려면:
curl --user <username>:<personal_access_token> "https://gitlab.example.com/api/v4/groups/1/-/packages/pypi/files/5y57017232013c8ac80647f4ca153k3726f6cba62d055cd747844ed95b3c65ff/my.pypi.package-0.0.1.tar.gz" >> my.pypi.package-0.0.1.tar.gz
이렇게 하면 현재 디렉토리에 my.pypi.package-0.0.1.tar.gz
로 다운로드된 파일이 저장됩니다.
그룹 수준 간단 API 인덱스
- 도입됨 GitLab 15.1에서.
그룹의 패키지 목록을 HTML 파일로 반환합니다:
GET groups/:id/-/packages/pypi/simple
속성 | 유형 | 필수 | 설명 |
---|---|---|---|
id |
string | 예 | 그룹의 ID 또는 전체 경로입니다. |
curl --user <username>:<personal_access_token> "https://gitlab.example.com/api/v4/groups/1/-/packages/pypi/simple"
예시 응답:
<!DOCTYPE html>
<html>
<head>
<title>그룹의 링크</title>
</head>
<body>
<h1>그룹의 링크</h1>
<a href="https://gitlab.example.com/api/v4/groups/1/-/packages/pypi/simple/my-pypi-package" data-requires-python="">my.pypi.package</a><br><a href="https://gitlab.example.com/api/v4/groups/1/-/packages/pypi/simple/package-2" data-requires-python="3.8">package_2</a><br>
</body>
</html>
출력 결과를 파일에 쓰려면:
curl --user <username>:<personal_access_token> "https://gitlab.example.com/api/v4/groups/1/-/packages/pypi/simple" >> simple_index.html
이렇게 하면 현재 디렉토리에 simple_index.html
로 다운로드된 파일이 저장됩니다.
그룹 수준 간단한 API 진입점
패키지 설명자를 HTML 파일로 반환합니다:
GET groups/:id/-/packages/pypi/simple/:package_name
속성 | 타입 | 필수 | 설명 |
---|---|---|---|
id |
string | 예 | 그룹의 ID 또는 전체 경로를 나타냅니다. |
package_name |
string | 예 | 패키지의 이름을 나타냅니다. |
curl --user <username>:<personal_access_token> "https://gitlab.example.com/api/v4/groups/1/-/packages/pypi/simple/my.pypi.package"
예시 응답:
<!DOCTYPE html>
<html>
<head>
<title>Links for my.pypi.package</title>
</head>
<body>
<h1>Links for my.pypi.package</h1>
<a href="https://gitlab.example.com/api/v4/groups/1/-/packages/pypi/files/5y57017232013c8ac80647f4ca153k3726f6cba62d055cd747844ed95b3c65ff/my.pypi.package-0.0.1-py3-none-any.whl#sha256=5y57017232013c8ac80647f4ca153k3726f6cba62d055cd747844ed95b3c65ff" data-requires-python=">=3.6">my.pypi.package-0.0.1-py3-none-any.whl</a><br><a href="https://gitlab.example.com/api/v4/groups/1/-/packages/pypi/files/9s9w01b0bcd52b709ec052084e33a5517ffca96f7728ddd9f8866a30cdf76f2/my.pypi.package-0.0.1.tar.gz#sha256=9s9w011b0bcd52b709ec052084e33a5517ffca96f7728ddd9f8866a30cdf76f2" data-requires-python=">=3.6">my.pypi.package-0.0.1.tar.gz</a><br>
</body>
</html>
출력을 파일에 기록하려면:
curl --user <username>:<personal_access_token> "https://gitlab.example.com/api/v4/groups/1/-/packages/pypi/simple/my.pypi.package" >> simple.html
이렇게 하면 현재 디렉토리에 simple.html
로 다운로드된 파일이 저장됩니다.
프로젝트에서 패키지 파일 다운로드
PyPI 패키지 파일을 다운로드합니다. 간단한 API는 일반적으로 이 URL을 제공합니다.
GET projects/:id/packages/pypi/files/:sha256/:file_identifier
속성 | 타입 | 필수 | 설명 |
---|---|---|---|
id |
string | 예 | 프로젝트의 ID 또는 전체 경로를 나타냅니다. |
sha256 |
string | 예 | PyPI 패키지 파일의 sha256 체크섬입니다. |
file_identifier |
string | 예 | PyPI 패키지 파일 이름을 나타냅니다. |
curl --user <username>:<personal_access_token> "https://gitlab.example.com/api/v4/projects/1/packages/pypi/files/5y57017232013c8ac80647f4ca153k3726f6cba62d055cd747844ed95b3c65ff/my.pypi.package-0.0.1.tar.gz"
출력을 파일에 기록하려면:
curl --user <username>:<personal_access_token> "https://gitlab.example.com/api/v4/projects/1/packages/pypi/files/5y57017232013c8ac80647f4ca153k3726f6cba62d055cd747844ed95b3c65ff/my.pypi.package-0.0.1.tar.gz" >> my.pypi.package-0.0.1.tar.gz
이렇게 하면 현재 디렉토리에 my.pypi.package-0.0.1.tar.gz
로 다운로드된 파일이 저장됩니다.
프로젝트 수준 간단한 API 인덱스
- GitLab 15.1에서 소개됨.
프로젝트의 패키지 목록을 HTML 파일로 반환합니다:
GET projects/:id/packages/pypi/simple
속성 | 유형 | 필수 | 설명 |
---|---|---|---|
id |
문자열 | 예 | 프로젝트의 ID 또는 전체 경로입니다. |
curl --user <username>:<personal_access_token> "https://gitlab.example.com/api/v4/projects/1/packages/pypi/simple"
예시 응답:
<!DOCTYPE html>
<html>
<head>
<title>프로젝트 링크</title>
</head>
<body>
<h1>프로젝트 링크</h1>
<a href="https://gitlab.example.com/api/v4/projects/1/packages/pypi/simple/my-pypi-package" data-requires-python="">my.pypi.package</a><br><a href="https://gitlab.example.com/api/v4/projects/1/packages/pypi/simple/package-2" data-requires-python="3.8">package_2</a><br>
</body>
</html>
출력을 파일에 기록하려면:
curl --user <username>:<personal_access_token> "https://gitlab.example.com/api/v4/projects/1/packages/pypi/simple" >> simple_index.html
이 명령은 다운로드된 파일을 현재 디렉토리에 simple_index.html
로 기록합니다.
프로젝트 수준 간단한 API 진입점
패키지 설명서를 HTML 파일로 반환합니다:
GET projects/:id/packages/pypi/simple/:package_name
속성 | 유형 | 필수 | 설명 |
---|---|---|---|
id |
문자열 | 예 | 프로젝트의 ID 또는 전체 경로입니다. |
package_name |
문자열 | 예 | 패키지의 이름입니다. |
curl --user <username>:<personal_access_token> "https://gitlab.example.com/api/v4/projects/1/packages/pypi/simple/my.pypi.package"
예시 응답:
<!DOCTYPE html>
<html>
<head>
<title>my.pypi.package 링크</title>
</head>
<body>
<h1>my.pypi.package 링크</h1>
<a href="https://gitlab.example.com/api/v4/projects/1/packages/pypi/files/5y57017232013c8ac80647f4ca153k3726f6cba62d055cd747844ed95b3c65ff/my.pypi.package-0.0.1-py3-none-any.whl#sha256=5y57017232013c8ac80647f4ca153k3726f6cba62d055cd747844ed95b3c65ff" data-requires-python=">=3.6">my.pypi.package-0.0.1-py3-none-any.whl</a><br><a href="https://gitlab.example.com/api/v4/projects/1/packages/pypi/files/9s9w01b0bcd52b709ec052084e33a5517ffca96f7728ddd9f8866a30cdf76f2/my.pypi.package-0.0.1.tar.gz#sha256=9s9w011b0bcd52b709ec052084e33a5517ffca96f7728ddd9f8866a30cdf76f2" data-requires-python=">=3.6">my.pypi.package-0.0.1.tar.gz</a><br>
</body>
</html>
출력을 파일에 기록하려면:
curl --user <username>:<personal_access_token> "https://gitlab.example.com/api/v4/projects/1/packages/pypi/simple/my.pypi.package" >> simple.html
이 명령은 다운로드된 파일을 현재 디렉토리에 simple.html
로 기록합니다.
패키지 업로드
PyPI 패키지를 업로드하세요:
POST projects/:id/packages/pypi
속성 | 유형 | 필수 | 설명 |
---|---|---|---|
id |
string | 예 | 프로젝트의 ID 또는 전체 경로입니다. |
requires_python |
string | 아니요 | PyPI에서 요구하는 버전입니다. |
curl --request POST \
--form 'content=@path/to/my.pypi.package-0.0.1.tar.gz' \
--form 'name=my.pypi.package' \
--form 'version=1.3.7' \
--user <username>:<personal_access_token> \
"https://gitlab.example.com/api/v4/projects/1/packages/pypi"