프로젝트 생성
- 인쇄
- PDF
프로젝트 생성
- 인쇄
- PDF
기사 요약
이 요약이 도움이 되었나요?
의견을 보내 주셔서 감사합니다.
SourceBuild 프로젝트를 생성합니다.
요청
API URL
POST {SOURCEBUILD_API_URL}/project
요청 Parameter
없음
요청 Query
없음
요청 Body
{
"name": "string",
"description": "string",
"source": {
"type": "string",
"config": {
"repository": "string",
"branch": "string"
}
},
"env": {
"compute": { "id": "number" },
"platform": {
"type": "string",
"config": "TEnvSourceBuild" | "TEnvContainerRegistry" | "TEnvPublicRegistry"
},
"docker": {
"use": "boolean",
"id": "number"
},
"timeout": "number",
"envVars": {
"key": "string",
"value": "string"
}
},
"cmd": {
"pre": ["string"],
"build": ["string"],
"post": ["string"],
"dockerbuild": {
"use": "boolean",
"dockerfile": "string",
"registry": "string",
"image": "string",
"tag": "string",
"latest": "boolean"
}
},
"artifact": {
"use": "boolean",
"path": ["string"],
"storage": {
"bucket": "string",
"path": "string",
"filename": "string"
},
"backup": "boolean",
},
"cache": {
"use": "boolean",
"registry": "string",
"image": "string",
"tag": "string",
"latest": "boolean"
},
"linked": {
"CloudLogAnalytics": "boolean",
"FileSafer": "boolean",
}
}
항목 | 타입 | 타입 | Default | 설명 | 비고 |
---|---|---|---|---|---|
name | Y | string | 프로젝트 이름 | ||
description | N | string | "" | 프로젝트 설명 | |
source.type | Y | string | 소스 저장소 타입 | SourceCommit 만 가능 | |
source.config.repository | Y | string | 소스 저장소 리파지토리 이름 | sourceCommitRepoisotryList API 로 조회 | |
source.config.branch | Y | string | 소스 저장소 리파지토리 브랜치 이름 | sourceCommitBranchList API 로 조회 | |
env.compute.id | Y | number | 빌드 환경의 컴퓨팅 유형 id | buildEnvComputeList API 로 조회 | |
env.platform.type | Y | string | 빌드 환경의 이미지 저장소 타입 | ||
env.platform.config | Y | TEnvSourceBuild | TEnvContainerRegistry | TEnvPublicRegistry | 빌드 환경 설정 | 아래 TEnvPlatformConfig 참조 | |
env.docker.use | Y | boolean | false | 도커 빌드를 위한 빌드 환경에 도커 엔진 포함(사용) 여부 | |
env.docker.id | N (env.docker.use=true 일 경우 필수) | number | 도커 엔진 버전 id | buildEnvDockerList API 로 조회 | |
env.timeout | N | number | 5 | 빌드 실행 타임 아웃 | |
env.envVars | N | {"key": string, "value": string}[] | [] | 빌드 환경 변수 | |
cmd.pre | N | string[] | [] | 빌드 전 명령어 | |
cmd.build | N | string[] | [] | 빌드 명령어 | |
cmd.post | N | string[] | [] | 빌드 후 명령어 | |
cmd.dockerbuild.use | N | boolean | false | 도커 이미지 빌드 설정 사용 여부 | |
cmd.dockerbuild.dockerfile | N (cmd.dockerbuild.use=true 일 경우 필수) | string | dockerfile의 파일명을 포함한 경로 | source.config.repository 에 지정된 소스 저장소에 dockerfile 이 포함되어 있어야 하며, 경로는 소스 저장소의 최상위 위치로 부터의 경로를 입력 | |
cmd.dockerbuild.registry | N (cmd.dockerbuild.use=true 일 경우 필수) | string | 이미지를 저장할 Container Registry 의 레지스트리 이름 | ||
cmd.dockerbuild.image | N (cmd.dockerbuild.use=true 일 경우 필수) | string | 이미지 이름 | ||
cmd.dockerbuild.tag | N (cmd.dockerbuild.use=true 일 경우 필수) | string | 태그 이름 | ||
cmd.dockerbuild.latest | N | boolean | false | latest 태그 저장 여부 | |
artifact.use | N | boolean | false | 빌드 결과물 저장 여부 | |
artifact.path | N (artifact.use=true 일 경우 필수) | string[] | 빌드 결과물 위치 | source.config.repository 에 지정된 소스 저장소의 최상위 위치로 부터의 경로를 입력 파일 경로, 디렉토리 경로 모두 가능 | |
artifact.storage.bucket | N (artifact.use=true 일 경우 필수) | string | 결과물을 저장할 Object Storage 의 버킷 이름 | ||
artifact.storage.path | N (artifact.use=true 일 경우 필수) | string | 결과물을 저장할 Object Storage 버킷 내 경로 | ||
artifact.storage.filename | N (artifact.use=true 일 경우 필수) | 결과물을 저장할 파일 이름 | zip 파일로 압축되어 저장됨 확장자가 *.zip 이 아닐 경우 자동으로 .zip이 포함되어 저장됨 | ||
artifact.storage.backup | N | boolean | false | 결과물 백업 여부 | |
cache.use | N | boolean | false | 빌드 완료 후 빌드 환경 저장 여부 | 빌드 완료 후 빌드 환경을 이미지화하여 저장 가능 해당 이미지는 빌드 환경의 이미지로 설정하여 xxx 빌드로 사용 가능 |
cache.registry | N (cache.use=true 일 경우 필수) | string | 빌드 완료 후 빌드 환경의 이미지를 저장할 Container Registry 의 레지스트리 이름 | ||
cache.image | N (cache.use=true 일 경우 필수) | string | 이미지 이름 | ||
cache.tag | N (cache.use=true 일 경우 필수) | string | 태그 이름 | ||
cache.latest | N | boolean | false | latest 태그 저장 여부 | |
linked.CloudLogAnalytics | N | boolean | false | 빌드 로그를 Cloud Log Analytics 에 저장 여부 | |
linked.FileSafer | N | boolean | false | 빌드 결과물을 File Safer (File Filter) 를 통한 검사 여부 |
TEnvPlatformConfig
TEnvSourceBuild
{
"os": {
"id": "number"
},
"runtime": {
"id": "number",
"version": {
"id": "number"
}
}
}
항목 | 필수여부 | 타입 | 설명 | 비고 |
---|---|---|---|---|
os.id | Y | number | 운영체제 ID | buildEnvOSListAPI 로 조회 |
runtime.id | Y | number | 런타임 ID | buildEnvRunTimeList API 로 조회 |
runtime.version.id | Y | number | 런타임 버전 ID | buildEnvRunTimeVersionList API 로 조회 |
TEnvContainerRegistry
{
"registry": "string",
"image": "string",
"tag": "string"
}
항목 | 필수여부 | 타입 | 설명 | 비고 |
---|---|---|---|---|
registry | Y | string | 레지스트리 이름 | |
image | Y | string | 이미지 이름 | |
tag | Y | string | 태그 이름 |
TEnvPublicRegistry
{
"image": "string",
"tag": "string"
}
항목 | 필수여부 | 타입 | 설명 | 비고 |
---|---|---|---|---|
image | Y | string | 이미지 이름 | |
tag | Y | string | 태그 이름 |
응답
응답 Body
{
"id": "number",
"name": "string"
}
항목 | 타입 | 설명 | 비고 |
---|---|---|---|
id | number | 프로젝트 ID | |
name | string | 프로젝트 이름 |
이 문서가 도움이 되었습니까?