기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
관리 AWS CodeBuild Step Functions를 사용하여 빌드합니다.
Step Functions를 다음과 통합할 수 있습니다. AWS CodeBuild 빌드를 시작, 중지, 관리할 수 있습니다. 이 페이지에는 Step Functions와 함께 사용할 CodeBuild APIs 수 있는 지원 항목이 나열되어 있습니다.
와의 통합에 대해 알아보려면 AWS Step Functions의 서비스에 대해서는 및 을 참조하십시오 서비스 통합. Step API Functions에서 서비스에 파라미터 전달하기
Step Functions와의 통합을 통해 AWS CodeBuild Step Functions를 사용하여 빌드를 트리거, 중지, 관리하고 빌드 보고서를 공유할 수 있습니다. Step Functions를 사용하면 애플리케이션의 소프트웨어 변경 사항을 검증할 수 있도록 지속적인 통합 파이프라인을 설계하고 실행할 수 있습니다.
최적화된 CodeBuild 통합의 주요 기능
-
작업 실행(.sync) 통합 패턴이 지원됩니다.
-
StopBuild
또는StopBuildBatch
를 호출한 후에는 빌드 또는 빌드의 상태를 CodeBuild 확정하기 위한 내부 작업이 완료될 때까지 빌드 또는 빌드 배치를 즉시 삭제할 수 없습니다.이 기간 동안
BatchDeleteBuilds
또는DeleteBuildBatch
를 사용하려고 하면 빌드나 빌드 배치가 삭제되지 않을 수 있습니다.BatchDeleteBuilds
및DeleteBuildBatch
의 최적화된 서비스 통합에는 중지 후 즉시 삭제하는 사용 사례를 단순화하기 위한 내부 재시도가 포함되어 있습니다.
다음 표와 같이 모든 통합 패턴을 APIs 지원하는 것은 아닙니다.
API | 요청 및 응답 | 작업 실행(.sync) |
---|---|---|
StartBuild | 지원 | 지원 |
StopBuild | 지원 | 지원되지 않음 |
BatchDeleteBuilds | 지원 | 지원되지 않음 |
BatchGetReports | 지원 | 지원되지 않음 |
StartBuildBatch | 지원 | 지원 |
StopBuildBatch | 지원 | 지원되지 않음 |
RetryBuildBatch | 지원 | 지원 |
DeleteBuildBatch | 지원 | 지원되지 않음 |
매개 변수는 다음과 같습니다.Step Functions 다음과 같이 표현됩니다. PascalCase
예를 camelCase startSyncExecution
들어 API 액션에 네이티브 API 서비스가 포함되어 있더라도 다음과 같은 매개 변수를 지정합니다StateMachineArn
. PascalCase
지원됨 CodeBuild APIs
-
-
지원되는 파라미터:
-
-
-
지원되는 파라미터:
-
참고
BatchDeleteBuilds
에 대한 JSONPath
재귀적 하강(..
) 연산자를 사용할 수 있습니다. 반환된 배열을 사용하여 다음 예제와 같이 Arn
필드를 복수 Ids
매개 변수로 변환할 수 있습니다. StartBuild
"BatchDeleteBuilds": {
"Type": "Task",
"Resource": "arn:aws:states:::codebuild:batchDeleteBuilds",
"Parameters": {
"Ids.$": "$.Build..
Arn"
},
"Next": "MyNextState"
},
IAM호출 정책 AWS CodeBuild
다음 예제 템플릿은 방법을 보여줍니다. AWS Step Functions 스테이트 머신 정의의 리소스를 기반으로 IAM 정책을 생성합니다. 자세한 내용은 Step Functions가 통합 서비스를 위한 IAM 정책을 생성하는 방법 및 Step Functions에서 서비스 통합 패턴을 살펴보세요 단원을 참조하세요.
리소스:
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"sns:Publish"
],
"Resource": [
"arn:aws:sns:sa-east-1:123456789012:StepFunctionsSample-CodeBuildExecution1111-2222-3333-wJalrXUtnFEMI-SNSTopic-bPxRfiCYEXAMPLEKEY"
],
"Effect": "Allow"
},
{
"Action": [
"codebuild:StartBuild",
"codebuild:StopBuild",
"codebuild:BatchGetBuilds",
"codebuild:BatchGetReports"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"events:PutTargets",
"events:PutRule",
"events:DescribeRule"
],
"Resource": [
"arn:aws:events:sa-east-1:123456789012:rule/StepFunctionsGetEventForCodeBuildStartBuildRule"
],
"Effect": "Allow"
}
]
}
StartBuild
정적 리소스
동적 리소스
StopBuild
정적 리소스
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StopBuild"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
}
]
}
동적 리소스
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StopBuild"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:*:project/*"
]
}
]
}
BatchDeleteBuilds
정적 리소스
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:BatchDeleteBuilds"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
}
]
}
동적 리소스
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:BatchDeleteBuilds"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:*:project/*"
]
}
]
}
BatchGetReports
정적 리소스
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:BatchGetReports"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:report-group/[[reportName]]
"
]
}
]
}
동적 리소스
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:BatchGetReports"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:*:report-group/*"
]
}
]
}
StartBuildBatch
정적 리소스
동적 리소스
StopBuildBatch
정적 리소스
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StopBuildBatch"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
}
]
}
동적 리소스
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StopBuildBatch"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/*"
]
}
]
}
RetryBuildBatch
정적 리소스
동적 리소스
DeleteBuildBatch
정적 리소스
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:DeleteBuildBatch"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
}
]
}
동적 리소스
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:DeleteBuildBatch"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/*"
]
}
]
}