AWS CodeDeploy 배포 작업 참조 - AWS CodePipeline

AWS CodeDeploy 배포 작업 참조

AWS CodeDeploy 작업을 사용하여 배포 플릿에 애플리케이션 코드를 배포합니다. 배포 플릿은 Amazon EC2 인스턴스, 온프레미스 인스턴스 또는 둘 다로 구성될 수 있습니다.

참고

이 참조 주제에서는 CodePipeline의 CodeDeploy 배포 작업에 대해 설명합니다. 여기서 배포 플랫폼은 Amazon EC2입니다. CodePipeline에서의 CodeDeploy 블루/그린 배포 작업에 대한 Amazon Elastic Container Service에 대한 참조 정보는 Amazon Elastic Container Service(Amazon ECS) 및 CodeDeploy 블루-그린 배포 작업 참조을 참조하세요.

작업 유형

  • 범주: Deploy

  • 소유자: AWS

  • 공급자: CodeDeploy

  • 버전: 1

구성 파라미터

ApplicationName

필수 여부: 예

CodeDeploy에서 생성한 애플리케이션 이름입니다.

DeploymentGroupName

필수 여부: 예

CodeDeploy 에서 생성한 배포 그룹입니다.

입력 아티팩트

  • 아티팩트 수: 1

  • 설명: CodeDeploy에서 다음을 결정하는 데 사용하는 AppSpec 파일입니다.

    • Amazon S3 또는 GitHub의 애플리케이션 수정에서 인스턴스에 설치할 항목입니다.

    • 배포 수명 주기 이벤트에 대한 응답으로 실행될 수명 주기 이벤트 후크

    AppSpec 파일에 대한 자세한 내용은 CodeDeploy AppSpec 파일 참조를 참조하세요.

출력 아티팩트

  • 아티팩트 수: 0

  • 설명: 이 작업 유형에는 출력 아티팩트가 적용되지 않습니다.

서비스 역할 권한: AWS CodeDeploy 작업

AWS CodeDeploy 지원의 경우 다음을 정책 설명에 추가합니다.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "codedeploy:CreateDeployment", "codedeploy:GetApplication", "codedeploy:GetDeployment", "codedeploy:RegisterApplicationRevision", "codedeploy:ListDeployments", "codedeploy:ListDeploymentGroups", "codedeploy:GetDeploymentGroup" ], "Resource": [ "arn:aws:codedeploy:*:111122223333:application:[[codedeployApplications]]", "arn:aws:codedeploy:*:111122223333:deploymentgroup:[[codedeployApplications]]/*" ] }, { "Effect": "Allow", "Action": [ "codedeploy:GetDeploymentConfig" ], "Resource": [ "arn:aws:codedeploy:*:111122223333:deploymentconfig:[[deploymentConfigs]]" ] }, { "Effect": "Allow", "Action": [ "codedeploy:ListDeploymentConfigs" ], "Resource": [ "*" ] } ] }

작업 선언

YAML
Name: Deploy Actions: - Name: Deploy ActionTypeId: Category: Deploy Owner: AWS Provider: CodeDeploy Version: '1' RunOrder: 1 Configuration: ApplicationName: my-application DeploymentGroupName: my-deployment-group OutputArtifacts: [] InputArtifacts: - Name: SourceArtifact Region: us-west-2 Namespace: DeployVariables
JSON
{ "Name": "Deploy", "Actions": [ { "Name": "Deploy", "ActionTypeId": { "Category": "Deploy", "Owner": "AWS", "Provider": "CodeDeploy", "Version": "1" }, "RunOrder": 1, "Configuration": { "ApplicationName": "my-application", "DeploymentGroupName": "my-deployment-group" }, "OutputArtifacts": [], "InputArtifacts": [ { "Name": "SourceArtifact" } ], "Region": "us-west-2", "Namespace": "DeployVariables" } ] },

이 작업을 수행할 때 참조할 수 있는 관련 리소스는 다음과 같습니다.

  • 자습서: 간단한 파이프라인 생성(S3 버킷) - 이 자습서에서는 샘플 애플리케이션을 배포하기 위한 소스 버킷, EC2 인스턴스 및 CodeDeploy 리소스를 생성하는 방법을 안내합니다. 그런 다음 S3 버킷에서 유지 관리하는 코드를 Amazon EC2 인스턴스에 배포하는 CodeDeploy 배포 작업을 사용하여 파이프라인을 구축합니다.

  • 자습서: 간단한 파이프라인 생성(CodeCommit 리포지토리) - 이 자습서에서는 샘플 애플리케이션을 배포하기 위한 CodeCommit 소스 리포지토리, EC2 인스턴스 및 CodeDeploy 리소스를 생성하는 방법을 안내합니다. 그런 다음 CodeCommit 리포지토리의 코드를 Amazon EC2 인스턴스에 배포하는 CodeDeploy 배포 작업을 사용하여 파이프라인을 구축합니다.

  • CodeDeploy AppSpec 파일 참조 - AWS CodeDeploy 사용 설명서의 이 참조 장에서는 CodeDeploy AppSpec 파일에 대한 참조 정보와 예제를 제공합니다.