AWS CloudFormation
사용 설명서 (API 버전 2010-05-15)

AWS::CodePipeline::Pipeline

AWS::CodePipeline::Pipeline 리소스는 소프트웨어 변경 사항이 출시 프로세스에 적용되는 방법을 설명하는 CodePipeline 파이프라인을 생성합니다. 자세한 내용은 AWS CodePipeline 사용 설명서CodePipeline란 무엇입니까?를 참조하십시오.

구문

AWS CloudFormation 템플릿에서 이 엔터티를 선언하려면 다음 구문을 사용합니다.

JSON

{ "Type" : "AWS::CodePipeline::Pipeline", "Properties" : { "ArtifactStore" : ArtifactStore, "ArtifactStores" : [ ArtifactStoreMap, ... ], "DisableInboundStageTransitions" : [ DisableInboundStageTransitions, ... ], "Name" : String, "RestartExecutionOnUpdate" : Boolean, "RoleArn" : String, "Stages" : [ Stages, ... ] } }

Properties

ArtifactStore

CodePipeline에서 파이프라인 아티팩트를 저장하는 Amazon Simple Storage Service(Amazon S3) 위치입니다. ArtifactStore 또는 ArtifactStores 중 하나만을 사용할 수 있지만 두 가지 모두 사용할 수는 없습니다. 자세한 내용은 AWS CodePipeline 사용 설명서애플리케이션에 대한 Amazon S3 버킷 생성을 참조하십시오.

Required: No

Type: ArtifactStore

업데이트 필요 조건: 무중단

ArtifactStores

ArtifactStoreMap 매핑의 목록을 지정합니다. 파이프라인 리전 및 파이프라인 내의 각 교차 리전 작업에 대해 아티팩트 스토어가 있어야 합니다. ArtifactStore 또는 ArtifactStores 중 하나만을 사용할 수 있지만 두 가지 모두 사용할 수는 없습니다.

Required: No

Type: ArtifactStoreMap 속성 유형의 목록

업데이트 필요 조건: 무중단

DisableInboundStageTransitions

파이프라인의 아티팩트가 지정된 단계로 전환하지 않도록 방지합니다. 그러면 전환을 수동으로 제어할 수 있습니다.

Required: No

Type: DisableInboundStageTransitions 속성 유형의 목록

업데이트 필요 조건: 무중단

Name

CodePipeline 파이프라인의 이름입니다.

Required: No

Type: String

업데이트 필요 조건: 대체

RestartExecutionOnUpdate

CodePipeline 파이프라인을 업데이트한 이후에 다시 실행할지 여부를 나타냅니다.

Required: No

Type: Boolean

업데이트 필요 조건: 무중단

RoleArn

AWS CodePipeline에서 다른 AWS 서비스를 자동으로 호출할 수 있도록 허용하는 서비스 역할 Amazon 리소스 이름(ARN)입니다. 자세한 내용은 AWS CodePipeline 사용 설명서AWS CodePipeline 액세스 권한 참조를 참조하십시오.

Required: Yes

Type: String

업데이트 필요 조건: 무중단

Stages

CodePipeline 파이프라인 단계를 정의합니다.

Required: Yes

Type: Stages 속성 유형의 목록

업데이트 필요 조건: 무중단

반환 값

Ref

AWS::CodePipeline::Pipeline 리소스의 논리적 ID를 Ref 내장 함수에 전달하면 이 함수는 파이프라인 이름(예: mysta-MyPipeline-A1BCDEFGHIJ2)을 반환합니다.

Ref 함수를 사용하는 방법에 대한 자세한 내용은 Ref를 참조하십시오.

Fn::GetAtt

Fn::GetAtt는 이 유형의 지정된 속성에 대한 값을 반환합니다. 다음은 사용 가능한 속성과 반환되는 샘플 값입니다.

Version

파이프라인의 버전.

참고

새 파이프라인에는 항상 버전 번호로 1을 할당합니다. 이 번호는 파이프라인을 업데이트할 때 올라갑니다.

Fn::GetAtt 사용 방법에 대한 자세한 내용은 Fn::GetAtt를 참조하십시오.

다음 예에서는 원본, 베타 및 릴리스 단계인 파이프라인을 생성합니다. 원본 단계의 경우 CodePipeline에서 S3 버킷에 저장된 애플리케이션의 변경 사항을 감지한 후 파이프라인으로 가져옵니다. 베타 단계에서는 를 사용하여 변경 사항을 EC2 인스턴스에 배포합니다. 릴리스 단계의 경우 인바운드 전환이 비활성화되며, 변경 사항을 릴리스 단계로 배포할 시간을 제어할 수 있습니다.

JSON

"AppPipeline": { "Type": "AWS::CodePipeline::Pipeline", "Properties": { "RoleArn": { "Ref" : "CodePipelineServiceRole" }, "Stages": [ { "Name": "Source", "Actions": [ { "Name": "SourceAction", "ActionTypeId": { "Category": "Source", "Owner": "AWS", "Version": "1", "Provider": "S3" }, "OutputArtifacts": [ { "Name": "SourceOutput" } ], "Configuration": { "S3Bucket": { "Ref" : "SourceS3Bucket" }, "S3ObjectKey": { "Ref" : "SourceS3ObjectKey" } }, "RunOrder": 1 } ] }, { "Name": "Beta", "Actions": [ { "Name": "BetaAction", "InputArtifacts": [ { "Name": "SourceOutput" } ], "ActionTypeId": { "Category": "Deploy", "Owner": "AWS", "Version": "1", "Provider": "CodeDeploy" }, "Configuration": { "ApplicationName": {"Ref" : "ApplicationName"}, "DeploymentGroupName": {"Ref" : "DeploymentGroupName"} }, "RunOrder": 1 } ] }, { "Name": "Release", "Actions": [ { "Name": "ReleaseAction", "InputArtifacts": [ { "Name": "SourceOutput" } ], "ActionTypeId": { "Category": "Deploy", "Owner": "AWS", "Version": "1", "Provider": "CodeDeploy" }, "Configuration": { "ApplicationName": {"Ref" : "ApplicationName"}, "DeploymentGroupName": {"Ref" : "DeploymentGroupName"} }, "RunOrder": 1 } ] } ], "ArtifactStore": { "Type": "S3", "Location": { "Ref" : "ArtifactStoreS3Location" } }, "DisableInboundStageTransitions": [ { "StageName": "Release", "Reason": "Disabling the transition until integration tests are completed" } ] } }

YAML

AppPipeline: Type: AWS::CodePipeline::Pipeline Properties: RoleArn: Ref: CodePipelineServiceRole Stages: - Name: Source Actions: - Name: SourceAction ActionTypeId: Category: Source Owner: AWS Version: 1 Provider: S3 OutputArtifacts: - Name: SourceOutput Configuration: S3Bucket: Ref: SourceS3Bucket S3ObjectKey: Ref: SourceS3ObjectKey RunOrder: 1 - Name: Beta Actions: - Name: BetaAction InputArtifacts: - Name: SourceOutput ActionTypeId: Category: Deploy Owner: AWS Version: 1 Provider: CodeDeploy Configuration: ApplicationName: Ref: ApplicationName DeploymentGroupName: Ref: DeploymentGroupName RunOrder: 1 - Name: Release Actions: - Name: ReleaseAction InputArtifacts: - Name: SourceOutput ActionTypeId: Category: Deploy Owner: AWS Version: 1 Provider: CodeDeploy Configuration: ApplicationName: Ref: ApplicationName DeploymentGroupName: Ref: DeploymentGroupName RunOrder: 1 ArtifactStore: Type: S3 Location: Ref: ArtifactStoreS3Location DisableInboundStageTransitions: - StageName: Release Reason: "Disabling the transition until integration tests are completed"

이 페이지에서: