프로젝트 템플릿 API
Tier: Free, Premium, Ultimate
Offering: GitLab.com, Self-managed, GitLab Dedicated
이 API는 다음 엔드포인트의 프로젝트 전용 버전입니다:
이 엔드포인트는 API 버전 5에서 제거될 예정인 이러한 엔드포인트를 더 이상 지원하지 않습니다.
전체 인스턴스에 일반적인 템플릿 외에도, 프로젝트 전용 템플릿도 이 API 엔드포인트에서 제공됩니다.
또한 그룹 수준 파일 템플릿에 대한 지원도 가능합니다.
특정 유형의 모든 템플릿 가져오기
GET /projects/:id/templates/:type
속성 | 유형 | 필수 | 설명 |
---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩 경로. |
type |
문자열 | 예 | 템플릿의 유형입니다. 허용되는 값은: dockerfiles , gitignores , gitlab_ci_ymls , licenses , issues , 또는 merge_requests 입니다. |
예시 응답 (라이선스):
[
{
"key": "epl-1.0",
"name": "Eclipse Public License 1.0"
},
{
"key": "lgpl-3.0",
"name": "GNU Lesser General Public License v3.0"
},
{
"key": "unlicense",
"name": "The Unlicense"
},
{
"key": "agpl-3.0",
"name": "GNU Affero General Public License v3.0"
},
{
"key": "gpl-3.0",
"name": "GNU General Public License v3.0"
},
{
"key": "bsd-3-clause",
"name": "BSD 3-clause \"New\" or \"Revised\" License"
},
{
"key": "lgpl-2.1",
"name": "GNU Lesser General Public License v2.1"
},
{
"key": "mit",
"name": "MIT License"
},
{
"key": "apache-2.0",
"name": "Apache License 2.0"
},
{
"key": "bsd-2-clause",
"name": "BSD 2-clause \"Simplified\" License"
},
{
"key": "mpl-2.0",
"name": "Mozilla Public License 2.0"
},
{
"key": "gpl-2.0",
"name": "GNU General Public License v2.0"
}
]
특정 유형의 하나의 템플릿 가져오기
GET /projects/:id/templates/:type/:name
속성 | 유형 | 필수 | 설명 |
---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩 경로. |
name |
문자열 | 예 | 컬렉션 엔드포인트에서 가져온 템플릿의 키입니다. |
type |
문자열 | 예 | 템플릿의 유형입니다. 하나: dockerfiles , gitignores , gitlab_ci_ymls , licenses , issues , 또는 merge_requests 입니다. |
fullname |
문자열 | 아니요 | 템플릿에서 자리 표시자를 확장할 때 사용할 저작권 소유자의 전체 이름입니다. 라이선스에만 해당됩니다. |
project |
문자열 | 아니요 | 템플릿에서 자리 표시자를 확장할 때 사용할 프로젝트 이름입니다. 라이선스에만 해당됩니다. |
source_template_project_id |
정수 | 아니요 | 특정 템플릿이 저장된 프로젝트 ID입니다. 동일한 이름의 템플릿이 여러 프로젝트에 있을 때 유용합니다. 이름이 동일한 템플릿이 여러 개 있는 경우 source_template_project_id 가 지정되지 않은 경우 closest ancestor 의 매치가 반환됩니다. |
예시 응답 (Dockerfile):
{
"name": "Binary",
"content": "# 이 파일은 템플릿이며, 프로젝트에서 작동하기 전에 편집이 필요할 수 있습니다.\n# 이 Dockerfile은 컴파일된 이진 파일을 베어 시스템에 설치합니다.\n# 컴파일된 이진 파일을 소스 제어에 커밋하거나(권장하지 않음)\n# CI/CD 파이프라인의 일환으로 먼저 이진 파일을 빌드해야 합니다.\n\nFROM buildpack-deps:buster\n\nWORKDIR /usr/local/bin\n\n# `app`을 이진 파일의 이름으로 변경하세요\nAdd app .\nCMD [\"./app\"]\n"
}
예시 응답 (라이선스):
{
"key": "mit",
"name": "MIT License",
"nickname": null,
"popular": true,
"html_url": "http://choosealicense.com/licenses/mit/",
"source_url": "https://opensource.org/licenses/MIT",
"description": "저작권 및 라이선스 고지의 보존만 요구하는 조건을 가진 짧고 단순한 허용 라이선스입니다. 라이선스가 부여된 작업, 수정 및 더 큰 작업은 다른 조건 하에 배포할 수 있으며 소스 코드가 없어도 됩니다.",
"conditions": [
"include-copyright"
],
"permissions": [
"commercial-use",
"modifications",
"distribution",
"private-use"
],
"limitations": [
"liability",
"warranty"
],
"content": "MIT License\n\nCopyright (c) 2018 [fullname]\n\n이 소프트웨어 및 관련 문서 파일(이하 \"소프트웨어\")의 복사본을 입수한 모든 사람에게\n무제한으로 소프트웨어를 다룰 수 있는 권한을 무료로 부여합니다.\n권리, 소프트웨어를 사용하고, 복사하며, 수정하고, 병합하고, 출판하고, 배포하며, 서브 라이센스를 부여하고,\n그리고/또는 소프트웨어의 복사본을 판매하는 권리, 그리고 소프트웨어가 제공되는\n사람들이 그렇게 할 수 있도록 허가합니다. 다음 조건에 따라:\n\n위의 저작권 고지 및 이 허가 고지가 모든 소프트웨어의 복사본이나 실질적인 부분에 포함되어야 합니다.\n\n소프트웨어는 \"있는 그대로\" 제공되며, 모든 종류의 보증 없이 제공됩니다. 명시적이든\n묵시적이든, 상품성, 특정 목적에 대한 적합성 및 비침해에 대한 보증을 포함하되 이에 국한되지 않으며,\n어떠한 경우에도 저자 또는 저작권 소유자는 소프트웨어 또는 소프트웨어의 사용 또는\n다른 거래에 관련하여 발생하는 모든 청구, 피해 또는 기타 책임에 대해 책임을 지지 않습니다.\n"
}