CodePipeline에서 파이프라인 생성 - AWS CodePipeline

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

CodePipeline에서 파이프라인 생성

AWS CodePipeline 콘솔이나 AWS CLI를 사용하여 파이프라인을 생성할 수 있습니다. 파이프라인에는 두 개 이상의 단계가 포함되어야 합니다. 파이프라인의 첫 번째 단계는 소스 단계여야 합니다. 파이프라인에는 빌드 또는 배포 단계인 하나 이상의 다른 단계가 있어야 합니다.

에 있는 파이프라인에 있는 작업을 추가할 수 있습니다.AWS파이프라인과 리전이 다릅니다. 교차 리전 작업은AWS서비스는 작업의 공급자이고 작업 유형 또는 공급자 유형이AWS파이프라인과 리전이 다릅니다. 자세한 정보는 CodePipeline에서 교차 리전 작업 추가을 참조하십시오.

Amazon ECS를 배포 공급자로 사용하여 컨테이너 기반 애플리케이션을 빌드하고 배포하는 파이프라인을 만들 수도 있습니다. Amazon ECS를 사용하여 컨테이너 기반 애플리케이션을 배포하는 파이프라인을 만들기 전에 단원의 설명에 따라 이미지 정의 파일을 생성해야 합니다.이미지 정의 파일 참조.

CodePipeline 은 소스 코드 변경이 푸시될 때 변경 감지 방법을 사용하여 파이프라인을 시작합니다. 이러한 감지 방법은 소스 유형을 기반으로 합니다.

  • CodePipeline은 Amazon CloudWatch Events 사용하여 CodeCommit 소스 리포지토리와 브랜치 또는 S3 소스 버킷의 변경을 감지합니다.

참고

콘솔을 사용하여 파이프라인을 생성하거나 편집하면 변경 감지 리소스가 자동으로 생성됩니다. 이AWSCLI를 사용하여 파이프라인을 생성할 경우 추가 리소스를 직접 생성해야 합니다. 자세한 정보는 CodeCommit 소스 작업 및 CloudWatch 이벤트을 참조하십시오.

파이프라인 생성(콘솔)

콘솔에서 파이프라인을 생성하려면 작업에 사용하는 공급자에 대한 정보와 소스 파일 위치를 제공해야 합니다.

콘솔을 사용하여 파이프라인을 생성하면 소스 단계와 다음 중 하나 또는 둘 다를 포함해야 합니다.

  • 빌드 단계.

  • 배포 단계.

파이프라인 마법사를 사용할 때 CodePipeline 은 단계의 이름을 생성합니다 (소스, 빌드, 스테이징). 이러한 이름은 변경할 수 없습니다. 나중에 추가한 단계에 특정 이름(예: BuildToGamma 또는 DeployToProd)을 더 사용할 수 있습니다.

1단계: 파이프라인 생성 및 이름 지정

  1. 에 로그인합니다.AWS Management Console에서 CodePipeline 콘솔을 엽니다.http://console.aws.amazon.com/codesuite/codepipeline/home.

  2. [Welcome] 페이지에서 [Create pipeline]을 선택합니다.

    CodePipeline 을 처음 사용하는 경우시작.

  3. 단계 1: 파이프라인 설정 선택페이지, in파이프라인 이름파이프라인 이름을 입력합니다.

    단일AWS계정, 사용자가 만든 각 파이프라인AWS리전에는 고유한 이름이 있어야 합니다. 다른 리전의 파이프라인에 이름을 재사용해도 됩니다.

    참고

    파이프라인을 만든 후에는 해당 이름을 변경할 수 없습니다. 다른 제한에 대한 자세한 내용은 의 할당량AWSCodePipeline 섹션을 참조하십시오.

  4. 서비스 역할에서 다음 중 하나를 수행합니다.

    • 선택새로운 서비스 역할CodePipeline이 IAM에서 새 서비스 역할을 생성할 수 있도록 허용합니다.

    • Existing service role(기존 서비스 역할)을 선택하여 IAM에서 이미 생성된 서비스 역할을 사용합니다. 역할 ARN의 목록에서 서비스 역할 ARN을 선택합니다.

    참고

    서비스 역할 생성 시기에 따라 추가 AWS 서비스를 지원하도록 권한을 업데이트해야 할 수 있습니다. 자세한 내용은 CodePipeline 서비스 역할에 권한 추가 섹션을 참조하세요.

    서비스 역할 및 해당 정책 설명에 대한 자세한 내용은 관리 CodePipeline 서비스 역할 섹션을 참조하십시오.

  5. (선택 사항) Advanced settings(고급 설정)를 확장합니다.

  6. 아티팩트 스토어에서 다음 중 하나를 수행합니다.

    1. 선택기본 위치의 파이프라인에 기본값으로 지정된 S3 아티팩트 버킷과 같은 기본 아티팩트 스토어를 사용하려면AWS 리전파이프라인에 대해 선택했습니다.

    2. 파이프라인과 동일한 리전에 S3 아티팩트 버킷과 같이 이미 아티팩트 스토어가 있는 경우 Custom location(사용자 지정 위치)을 선택합니다. [Bucket]에서 버킷 이름을 선택합니다.

    참고

    이는 소스 코드에 대한 소스 버킷이 아닙니다. 이 파이프라인은 아티팩트 스토어입니다. S3 버킷과 같은 개별 아티팩트 스토어는 각 파이프라인에 필요합니다. 파이프라인을 생성하거나 편집할 때 파이프라인 리전에 아티팩트 버킷이 있어야 하며AWS작업을 실행 중인 리전입니다.

    자세한 내용은 입력 및 출력 아티팩트CodePipeline 파이프라인 구조 참조 섹션을 참조하세요.

  7. [Encryption key]에서 다음 중 하나를 수행합니다.

    1. CodePipeline 기본값을 사용하려면AWS KMS key파이프라인 아티팩트 스토어 (S3 버킷) 의 데이터를 암호화하려면기본값AWS관리형 키.

    2. 사용고객 관리형 키파이프라인 아티팩트 스토어 (S3 버킷) 의 데이터를 암호화하려면고객 관리형 키. C키 ID, 키 ARN 또는 별칭 ARN을 선택합니다.

  8. 다음(Next)을 선택합니다.

2단계: 소스 단계 생성

  • 단계 2: 소스 단계 추가페이지, in소스 제공자를 사용하여 소스 코드가 저장된 리포지토리의 유형을 선택하고 필요한 옵션을 지정한 다음다음 단계.

    • GitHub의 경우:

      1. Under연결에서 기존 연결을 선택하거나 새로 생성합니다. GitHub 소스 작업에 대한 연결을 생성하거나 관리하려면 단원을 참조하십시오.GitHub 연결.

      2. 파이프라인의 소스 위치로 사용할 GitHub 리포지토리를 선택합니다. [Branch ]의 드롭다운 목록에서 사용하려는 브랜치를 선택합니다.

      3. In출력 아티팩트 형식에서 아티팩트의 형식을 선택합니다.

        • 기본 방법을 사용하여 GitHub 작업의 출력 아티팩트를 저장하려면CodePipeline 기본값. 그러면 GitHub 리포지토리의 파일에 액세스하여 파이프라인 아티팩트 스토어에 ZIP 파일로 아티팩트가 저장됩니다.

        • 다운스트림 작업이 Git 명령을 직접 수행할 수 있도록 리포지토리에 대한 URL 참조가 포함된 JSON 파일을 저장하려면 Full clone(전체 복제)을 선택합니다. 이 옵션은 CodeBuild 다운스트림 작업에서만 사용할 수 있습니다.

          이 옵션을 선택하면 에 표시된 대로 CodeBuild 프로젝트 서비스 역할에 대한 권한을 업데이트해야 합니다.CodePipeline 문제 해결. 사용 방법을 보여 주는 자습서는전체 복제옵션, 참조자습서: GitHub 파이프라인 소스와 함께 전체 클론 사용.

    • Amazon S3:

      1. Amazon S3 위치에서 버전 관리 기능이 활성화된 버킷에 S3 버킷 이름 및 객체 경로를 제공합니다. 버킷 이름과 경로의 형식은 다음과 같습니다.

        s3://bucketName/folderName/objectName
        참고

        Amazon S3 S3가 파이프라인의 소스 공급자인 경우, 소스 파일을 .zip 하나로 압축하고 그 .zip을 소스 버킷에 업로드할 수 있습니다. 압축이 풀린 단일 파일을 업로드할 수도 있지만 .zip 파일을 예상하는 다운스트림 작업은 실패합니다.

      2. S3 소스 버킷을 선택하면 CodePipeline에서 Amazon CloudWatch Events 규칙 및AWS CloudTrail이 파이프라인에 대해 생성될 트레일입니다. [Change detection options] 아래에서 기본값을 적용합니다. 이를 통해 CodePipeline은 Amazon CloudWatch Events 사용할 수 있습니다.AWS CloudTrail를 사용하여 새 파이프라인의 변경을 감지합니다. 다음(Next)을 선택합니다.

    • 대상 AWS CodeCommit:

      • In리포지토리 이름에서 파이프라인의 소스 위치로 사용할 CodeCommit 리포지토리의 이름을 선택합니다. [Branch name]의 드롭다운 목록에서 사용하려는 브랜치를 선택합니다.

      • In출력 아티팩트 형식에서 아티팩트의 형식을 선택합니다.

        • 기본 방법을 사용하여 CodeCommit 작업의 출력 아티팩트를 저장하려면CodePipeline 기본값. 그러면 CodeCommit 리포지토리의 파일에 액세스하여 파이프라인 아티팩트 스토어에 ZIP 파일로 아티팩트가 저장됩니다.

        • 다운스트림 작업이 Git 명령을 직접 수행할 수 있도록 리포지토리에 대한 URL 참조가 포함된 JSON 파일을 저장하려면 Full clone(전체 복제)을 선택합니다. 이 옵션은 CodeBuild 다운스트림 작업에서만 사용할 수 있습니다.

          이 옵션을 선택하는 경우codecommit:GitPull에 표시된 CodeBuild 서비스 역할에 대한 권한Add CodeBuild CodeCommit 소스 작업에 대한 GitClone 권한. 또한 를 추가해야 합니다.codecommit:GetRepository에 표시된 대로 CodePipeline 서비스 역할에 대한 권한CodePipeline 서비스 역할에 권한 추가. 사용 방법을 보여 주는 자습서는전체 복제옵션, 참조자습서: GitHub 파이프라인 소스와 함께 전체 클론 사용.

      • CodeCommit 리포지토리 이름과 브랜치를 선택하면 메시지가변경 감지 옵션이 파이프라인에 대해 생성될 Amazon CloudWatch Events 규칙을 보여 줍니다. [Change detection options] 아래에서 기본값을 적용합니다. 그러면 CodePipeline 은 Amazon CloudWatch Events 사용하여 새 파이프라인의 변경을 감지할 수 있습니다.

    • Amazon ECR:

      • In리포지토리 이름에서 Amazon ECR 리포지토리의 이름을 선택합니다.

      • 이미지 이름과 버전이 LATEST와 다른 경우 이미지 태그에서 지정합니다.

      • 출력 아티팩트에서 출력 아티팩트 기본값(예: MyApp)을 선택합니다. 이 아티팩트는 다음 단계에서 사용하려는 이미지 이름과 리포지토리 URI를 포함합니다.

        Amazon ECR 소스 단계가 포함된 CodeDeploy 블루-그린 배포를 통한 Amazon ECS의 파이프라인 생성에 대한 자습서는 단원을 참조하십시오.자습서: Amazon ECR 소스와 ECS-to-CodeDeploy 배포를 사용하여 파이프라인 생성.

      파이프라인에 Amazon ECR 소스 단계를 포함하면 소스 작업이imageDetail.json파일을 변경 사항을 커밋할 때 파일을 출력 아티팩트로 사용합니다. imageDetail.json 파일에 대한 자세한 내용은 Amazon ECS 블루/그린 배포 작업을 위한 imageDetail.json 파일 단원을 참조하십시오.

    참고

    객체 및 파일 형식이 사용하려는 배포 시스템과 호환되어야 합니다 (예: Elastic Beanstalk 또는 CodeDeploy). 지원되는 파일 형식에는 .zip, .tar, .tgz 파일 등이 있습니다. Elastic Beanstalk에서 지원되는 컨테이너 유형에 대한 자세한 내용은 단원을 참조하십시오.Elastic Beanstalk 환경 사용자 지정 및 구성지원되는 플랫폼. CodeDeploy를 통한 리비전 배포에 대한 자세한 내용은 단원을 참조하십시오.애플리케이션 개정 업로드개정 준비.

3단계: 빌드 단계 생성

배포 단계를 생성하려는 경우 이 단계는 선택 사항입니다.

  • 단계 3: 빌드 단계 추가페이지에서 다음 중 하나를 수행한 후다음:

    • 배포 단계를 생성하려는 경우 Skip build stage(빌드 단계 건너뛰기)를 선택합니다.

    • 빌드 공급자에서 빌드 서비스의 사용자 지정 작업 공급자를 선택하고 그 공급자에 대한 구성 세부 정보를 입력합니다. Jenkins를 빌드 공급자로 추가하는 방법의 예는 자습서: 4단계 파이프라인 생성 섹션을 참조하십시오.

    • 빌드 공급자에서 AWS CodeBuild를 선택합니다.

      In리전를 선택합니다.AWS리소스가 있는 리전입니다. 이리전필드는 위치를 지정합니다.AWS리소스는 이 작업 유형 및 공급자 유형에 대해 생성됩니다. 이 필드는 작업 공급자가AWS서비스. 이리전필드의 기본값은 동일합니다.AWS파이프라인 리전을 선택합니다.

      프로젝트 이름에 빌드 프로젝트를 선택합니다. CodeBuild에서 이미 빌드 프로젝트를 만들었다면 이 프로젝트를 선택합니다. 또는 CodeBuild에서 빌드 프로젝트를 생성한 다음, 이 작업으로 돌아오면 됩니다. 의 안내를 따릅니다.CodeBuild를 사용하는 파이프라인 생성CodeBUILDE.

      In환경 변수CodeBuild 선택합니다.환경 변수 추가. 각 변수는 세 개의 항목으로 구성됩니다.

      • 이름에 환경 변수의 이름 또는 키를 입력합니다.

      • 에 환경 변수의 값을 입력합니다. 를 선택한 경우파라미터변수 형식에 대해 이 값이 이미 저장된 파라미터의 이름인지 확인합니다.AWSSystems Manager 파라미터 스토어

        참고

        환경 변수를 사용하여 중요한 값 (특히 저장) 을 가급적 피해야 합니다.AWS비밀 키 ID 및 보안 액세스 키 CodeBuild 콘솔을 사용하는 경우AWSCLI에서는 환경 변수가 일반 텍스트로 표시됩니다. 민감한 값의 경우 대신 파라미터 유형을 사용하는 것이 좋습니다.

      • (선택 사항) 유형에 환경 변수의 유형을 입력합니다. 유효한 값은 일반 텍스트 또는 파라미터입니다. 기본값은 일반 텍스트입니다.

      (선택 사항) 입력빌드 유형다음 중 하나를 선택합니다.

      • 단일 빌드 작업 실행으로 각 빌드를 실행하려면단일 빌드.

      • 동일한 빌드 작업 실행에서 여러 빌드를 실행하려면Batch 빌드.

      (선택 사항) 배치 빌드를 실행하도록 선택한 경우배치의 모든 아티팩트를 단일 위치로 결합모든 빌드 아티팩트를 단일 출력 아티팩트에 배치합니다.

4단계: 배포 단계 생성

빌드 단계를 이미 만든 경우 이 단계는 선택 사항입니다.

  • 단계 4: 배포 단계 추가페이지에서 다음 중 하나를 수행한 후다음:

    • 이전 단계에서 빌드 단계를 만든 경우 Skip deploy stage(배포 단계 건너뛰기)를 선택합니다.

      참고

      빌드 단계를 이미 건너뛴 경우 이 옵션이 표시되지 않습니다.

    • 배포 공급자에서 배포 공급자에 대해 생성한 사용자 지정 작업을 선택합니다.

      In리전을 선택합니다. 교차 리전 작업의 경우에만AWS리소스가 생성되는 리전입니다. 이리전필드는 위치를 지정합니다.AWS리소스는 이 작업 유형 및 공급자 유형에 대해 생성됩니다. 이 필드는 작업 공급자가AWS서비스. 이리전필드의 기본값은 동일합니다.AWS파이프라인 리전을 선택합니다.

    • 배포 공급자에서 다음과 같이 기본 공급자 필드를 사용 가능합니다.

      • CodeDeploy

        In애플리케이션 이름기존 CodeDeploy 애플리케이션의 이름을 입력하거나 선택합니다. Deployment group(배포 그룹)에 애플리케이션의 배포 그룹 이름을 입력합니다. 다음(Next)을 선택합니다. CodeDeploy 콘솔에서 애플리케이션이나 배포 그룹을 생성하거나 둘 다 생성할 수 있습니다.

      • AWS Elastic Beanstalk

        In애플리케이션 이름기존 Elastic Beanstalk 애플리케이션의 이름을 입력하거나 선택합니다. Environment name(환경 이름)에 애플리케이션의 환경을 입력합니다. 다음(Next)을 선택합니다. Elastic Beanstalk 콘솔에서 애플리케이션이나 환경을 생성하거나 둘 다 생성할 수 있습니다.

      • AWS OpsWorks Stacks

        사용하려는 스택 이름을 Stack(스택)에 입력하거나 선택합니다. 계층에서 대상 인스턴스가 속하는 레이어를 선택합니다. [App]에서 업데이트 및 배포하려는 애플리케이션을 선택합니다. 앱을 생성해야 하는 경우 AWS OpsWorks에서 새로 생성을 선택합니다.

        스택 및 계층에 응용 프로그램을 추가하는 방법에 대한 자세한 내용은AWS OpsWorks참조,앱 추가AWS OpsWorks사용 설명서.

        CodePipeline의 간단한 파이프라인을 실행하는 코드용 소스로 사용하는 방법에 대한 완전한 예에 대해 설명합니다.AWS OpsWorks레이어,CodePipeline 사용AWS OpsWorks Stacks.

      • AWS CloudFormation

        다음 중 하나를 수행하세요.

        • 작업 모드에서 스택 생성 또는 업데이트를 선택하고, 스택 이름 및 템플릿 파일 이름을 입력한 후 AWS CloudFormation에서 맡을 역할 이름을 선택합니다. 선택 사항으로 구성 파일의 이름을 입력한 다음 IAM 기능 옵션을 선택할 수도 있습니다.

        • 작업 모드에서 변경 사항 세트 생성 또는 교체를 선택하고, 스택 이름과 변경 사항 세트 이름을 입력한 후 AWS CloudFormation에서 맡을 역할 이름을 선택합니다. 선택 사항으로 구성 파일의 이름을 입력한 다음 IAM 기능 옵션을 선택할 수도 있습니다.

        통합에 대한 정보AWS CloudFormationCodePipeline의 파이프라인에 대한 기능은 다음을 참조하십시오.CodePipeline 을 사용한 지속적 전달AWS CloudFormation사용 설명서.

      • Amazon ECS

        In클러스터 이름기존 Amazon ECS 클러스터의 이름을 입력하거나 선택합니다. Service name(서비스 이름)에서 클러스터에서 실행 중인 서비스의 이름을 입력하거나 선택합니다. 클러스터와 서비스를 생성할 수도 있습니다. 이미지 파일 이름에 서비스의 컨테이너와 이미지를 설명하는 이미지 정의 파일의 이름을 입력합니다.

        참고

        Amazon ECS 배포 작업에는imagedefinitions.json파일을 배포 작업의 입력으로 사용합니다. 파일의 기본 파일 이름은 imagedefinitions.json입니다. 다른 파일 이름을 사용하려면 파이프라인 배포 단계를 만들 때 이름을 제공해야 합니다. 자세한 정보는 Amazon ECS 표준 배포 작업을 위한 imagedefinitions.json 파일을 참조하십시오.

        다음(Next)을 선택합니다.

        참고

        Amazon ECS 클러스터가 둘 이상의 인스턴스로 구성되어 있는지 확인합니다. 하나는 기본 인스턴스로 유지되고 다른 하나는 새 배포를 수용하는 데 사용됩니다.

        파이프라인을 통한 컨테이너 기반 애플리케이션 배포에 대한 자습서는 단원을 참조하십시오.자습서: CodePipeline 을 사용한 지속적 배포.

      • Amazon ECS(블루/그린)

        CodeDeploy 애플리케이션 및 배포 그룹, Amazon ECS 작업 정의 및 AppSpec 파일 정보를 입력하고 다음을 선택합니다.다음.

        참고

        Amazon ECS(블루/그린) 작업을 수행하려면 배포 작업의 입력 아티팩트로 imageDetail.json 파일이 필요합니다. Amazon ECR 소스 작업이 이 파일을 생성하므로 Amazon ECR 소스 작업이 있는 파이프라인은imageDetail.json파일. 자세한 정보는 Amazon ECS 블루/그린 배포 작업을 위한 imageDetail.json 파일을 참조하십시오.

        CodeDeploy 를 사용하여 Amazon ECS 클러스터에 블루-그린 배포의 파이프라인 생성에 대한 자습서는 단원을 참조하십시오.자습서: Amazon ECR 소스와 ECS-to-CodeDeploy 배포를 사용하여 파이프라인 생성.

      • AWSService Catalog

        콘솔에서 필드를 사용하여 구성을 지정하려면 Enter deployment configuration(배포 구성 입력)을 선택하고 별도의 구성 파일이 있는 경우 구성 파일을 선택합니다. 제품 및 구성 정보를 입력하고 Next(다음)를 선택합니다.

        파이프라인을 통해 AWS Service Catalog에 제품 변경 사항을 배포하는 방법에 대한 자습서는 자습서: 에 배포하는 파이프라인 생성AWS Service Catalog 단원을 참조하십시오.

      • Alexa Skills Kit

        Alexa Skill ID에 Alexa Skill의 스킬 ID를 입력합니다. Client ID(클라이언트 ID)Client secret(클라이언트 암호)에서 Login with Amazon(LWA) 보안 프로필을 사용하여 생성한 자격 증명을 입력합니다. Refresh token(새로 고침 토큰)에서 새로 고침 토큰을 검색하기 위해 ASK CLI 명령을 사용하여 생성한 새로 고침 토큰을 입력합니다. 다음(Next)을 선택합니다.

        파이프라인에 Alexa Skill을 배포하고 LWA 자격 증명을 생성하는 방법에 대한 자습서는 자습서: Amazon Alexa Skill을 배포하는 파이프라인 생성 단원을 참조하십시오.

      • Amazon S3

        [Bucket]에 사용하려는 S3 버킷 이름을 입력합니다. 배포 단계의 입력 아티팩트가 ZIP 파일인 경우 Extract file before deploy(배포 전 파일 추출)를 선택합니다. Extract file before deploy(배포 전 파일 추출)가 선택된 경우, 선택적으로 ZIP 파일의 압축을 해제할 Deployment path(배포 경로) 값을 입력할 수 있습니다. 선택되지 않은 경우, S3 object key(S3 객체 키)에 값을 입력해야 합니다.

        참고

        대부분의 소스 및 빌드 단계 출력 아티팩트는 압축됩니다. Amazon S3 제외한 모든 파이프라인 소스 공급자는 소스 파일을 다음 작업의 입력 아티팩트로 제공하기 전에 압축합니다.

        (선택 사항) 입력미리 제공된 ACL를 입력합니다.미리 제공된 ACL을 눌러 Amazon S3 배포된 객체에 적용합니다.

        참고

        표준 ACL을 적용하면 객체에 적용된 기존 ACL을 덮어씁니다.

        (선택 사항) 캐시 제어에는 버킷에서 객체를 다운로드하는 요청에 대한 캐시 제어 파라미터를 지정합니다. 유효한 값 목록의 경우 HTTP 작업에 대한 Cache-Control 헤더 필드를 확인합니다. 캐시 제어에 여러 값을 입력하려면 각 값 사이에 쉼표를 사용합니다. 이 예제와 같이 각 쉼표 뒤에 공백을 추가할 수 있습니다(선택 사항).

        앞의 예제 항목은 CLI에 다음과 같이 표시됩니다.

        "CacheControl": "public, max-age=0, no-transform"

        다음(Next)을 선택합니다.

        Amazon S3 배포 작업 공급자를 통한 파이프라인 생성에 대한 자습서는 단원을 참조하십시오.자습서: Amazon S3 배포 공급자로 사용하는 파이프라인 생성.

5단계: 파이프라인 검토

  • 단계 5: 검토페이지에서 파이프라인 구성을 검토한 다음파이프라인 생성파이프라인을 생성하려면이전다시 돌아가서 선택을 편집합니다. 파이프라인을 생성하지 않고 마법사를 종료하려면 [Cancel]을 선택합니다.

이제 파이프라인을 생성했으므로 콘솔에서 볼 수 있습니다. 파이프라인이 생성된 후 실행을 시작합니다. 자세한 정보는 CodePipeline 에서 파이프라인 세부 정보 및 이력 보기을 참조하십시오. 파이프라인 변경에 대한 자세한 내용은 CodePipeline에서 파이프라인 편집 단원을 참조하십시오.

파이프라인 생성(CLI)

AWS CLI를 사용하여 파이프라인을 생성하려면 JSON 파일을 생성하여 파이프라인 구조를 정의한 다음 create-pipeline 명령을 --cli-input-json 파라미터와 함께 실행합니다.

중요

AWS CLI를 사용하여 파트너 작업을 포함한 파이프라인을 생성할 수 없습니다. 대신 CodePipeline 콘솔을 사용해야 합니다.

파이프라인 구조에 대한 자세한 내용은 단원을 참조하십시오.CodePipeline 파이프라인 구조 참조파이프라인 생성CodePipelineAPI 참조.

JSON 파일을 생성하려면 샘플 파이프라인 JSON 파일을 사용하고, 이를 편집한 다음 create-pipeline 명령을 실행할 때 해당 파일을 호출합니다.

사전 조건:

CodePipeline에 대해 생성한 서비스 역할의 ARN이 필요합니다.CodePipeline 시작하기. 를 실행할 때 파이프라인 JSON 파일에서 CodePipeline 서비스 역할 ARN을 사용합니다.create-pipeline명령. 서비스 역할 생성에 대한 자세한 내용은 CodePipeline 서비스 역할 생성 항목을 참조하십시오. 콘솔과 달리create-pipeline의 명령AWS CLI에서는 CodePipeline 서비스 역할을 생성할 수 있는 옵션이 없습니다. 서비스 역할이 이미 있어야 합니다.

파이프라인의 아티팩트가 저장되는 S3 버킷의 이름이 필요합니다. 이 버킷은 파이프라인과 동일한 리전에 있어야 합니다. create-pipeline 명령을 실행할 때 파이프라인 JSON 파일에서 버킷 이름을 사용합니다. 콘솔과 달리 AWS CLI에서 create-pipeline 명령을 실행하면 아티팩트를 저장할 S3 버킷이 생성되지 않습니다. 버킷은 이미 존재해야 합니다.

참고

get-pipeline 명령을 사용하여 해당 파이프라인의 JSON 구조에 대한 복사본을 가져온 다음 일반 텍스트 편집기에서 해당 구조를 수정할 수 있습니다.

주제

    JSON 파일을 생성하려면

    1. 터미널 (Linux, macOS, Unix) 또는 명령 프롬프트 (Windows) 에서 로컬 디렉터리의 새 텍스트 파일을 생성합니다.

    2. 일반 텍스트 편집기에서 파일을 열고 값을 편집하여 생성하려는 구조를 반영합니다. 적어도 파이프라인의 이름은 변경해야 합니다. 또한 변경을 하고자 하는지 고려해야 합니다.

      • 이 파이프라인에 대한 아티팩트가 저장되는 S3 버킷입니다.

      • 코드에 있는 소스 위치입니다.

      • 배포 공급자입니다.

      • 원하는 코드 배포 방법입니다.

      • 파이프라인의 태그입니다.

      다음의 두 단계로 이루어진 샘플 파이프라인 구조에는 파이프라인 변경을 고려해야 하는 값이 강조되어 있습니다. 파이프라인에는 3개 이상의 단계가 포함되어 있을 가능성이 큽니다.

      { "pipeline": { "roleArn": "arn:aws:iam::80398EXAMPLE::role/AWS-CodePipeline-Service", "stages": [ { "name": "Source", "actions": [ { "inputArtifacts": [], "name": "Source", "actionTypeId": { "category": "Source", "owner": "AWS", "version": "1", "provider": "S3" }, "outputArtifacts": [ { "name": "MyApp" } ], "configuration": { "S3Bucket": "awscodepipeline-demobucket-example-date", "S3ObjectKey": "ExampleCodePipelineSampleBundle.zip", "PollForSourceChanges": "false" }, "runOrder": 1 } ] }, { "name": "Staging", "actions": [ { "inputArtifacts": [ { "name": "MyApp" } ], "name": "Deploy-CodeDeploy-Application", "actionTypeId": { "category": "Deploy", "owner": "AWS", "version": "1", "provider": "CodeDeploy" }, "outputArtifacts": [], "configuration": { "ApplicationName": "CodePipelineDemoApplication", "DeploymentGroupName": "CodePipelineDemoFleet" }, "runOrder": 1 } ] } ], "artifactStore": { "type": "S3", "location": "codepipeline-us-east-2-250656481468" }, "name": "MyFirstPipeline", "version": 1 }, "metadata": { "pipelineArn": "arn:aws:codepipeline:us-east-2:80398EXAMPLE:MyFirstPipeline", "updated": 1501626591.112, "created": 1501626591.112 }, "tags": [{ "key": "Project", "value": "ProjectA" }] }

      이 예제는 파이프라인에 Project 태그 키와 ProjectA 값을 포함하여 파이프라인에 태그 지정을 추가합니다. CodePipeline에서 리소스 태그 지정에 대한 자세한 내용은 단원을 참조하십시오. 리소스에 태그 지정.

      JSON 파일의 PollForSourceChanges 파라미터는 다음과 같이 설정되어야 합니다.

      "PollForSourceChanges": "false",

      CodePipeline은 Amazon CloudWatch Events 사용하여 CodeCommit 소스 리포지토리와 브랜치 또는 S3 소스 버킷의 변경을 감지합니다. 다음 단계에는 파이프라인에 대해 이러한 리소스를 수동으로 생성하기 위한 설명이 포함되어 있습니다. 플래그를 false로 설정하면 정기적 확인이 비활성화되어 권장되는 변경 감지 방법을 사용할 때 필요하지 않습니다.

    3. 파이프라인과 다른 리전에서 빌드, 테스트, 배포 작업을 생성하려면 파이프라인 구조에 다음을 추가해야 합니다. 지침은 CodePipeline에서 교차 리전 작업 추가 단원을 참조하세요.

      • 작업 파이프라인 구조에 Region 파라미터를 추가합니다.

      • 사용artifactStores파라미터를 사용하여 각각에 대해 아티팩트 버킷을 지정합니다.AWS작업이 있는 지역입니다.

    4. 이 구조에 만족하는 경우 pipeline.json과 같은 이름으로 파일을 저장합니다.

    파이프라인을 생성하려면

    1. create-pipeline 명령을 실행하고 --cli-input-json 파라미터를 사용하여 앞에서 생성한 JSON 파일을 지정합니다.

      파이프라인을 생성하려면MySecondPipeline이름이 포함된 pipeline.json이라는 JSON 파일을 사용하여”MySecondPipeline“에 대한 가치로nameJSON에서 명령은 다음과 같습니다.

      aws codepipeline create-pipeline --cli-input-json file://pipeline.json
      중요

      파일 이름 앞에 file://를 포함해야 합니다. 이 명령에 필수적입니다.

      이 명령은 사용자가 생성한 전체 파이프라인의 구조를 반환합니다.

    2. 파이프라인을 보려면 CodePipeline 콘솔을 열고 파이프라인 목록에서 이를 선택하거나get-pipeline-state명령. 자세한 정보는 CodePipeline 에서 파이프라인 세부 정보 및 이력 보기을 참조하십시오.

    3. CLI를 사용하여 파이프라인을 생성하는 경우 파이프라인에 대해 권장되는 변경 감지 리소스를 수동으로 생성해야 합니다.