입력 및 출력 아티팩트 - AWS CodePipeline

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

입력 및 출력 아티팩트

CodePipeline 는 개발 도구와 통합되어 코드 변경 사항을 확인한 다음 지속적인 제공 프로세스의 모든 단계를 통해 빌드 및 배포합니다. 아티팩트는 애플리케이션 코드가 있는 파일 또는 폴더, 인덱스 페이지 파일, 스크립트 등과 같이 파이프라인의 작업에 의해 작동되는 파일입니다. 예를 들어 Amazon S3 소스 작업 아티팩트는 파이프라인 소스 작업에 대해 애플리케이션 소스 코드 파일이 제공되는 파일 이름(또는 파일 경로)이며, 파일은 일반적으로 다음과 같은 예제 아티팩트 이름: SampleApp_Windows.zip과 같은 ZIP 파일로 제공됩니다. 소스 작업의 출력 아티팩트인 애플리케이션 소스 코드 파일은 소스 작업의 출력 아티팩트이며 빌드 작업과 같은 다음 작업의 입력 아티팩트이기도 합니다. 또 다른 예로, 빌드 작업은 입력 아티팩트(소스 액션의 애플리케이션 소스 코드 파일)에 대한 애플리케이션 소스 코드를 컴파일하는 빌드 명령을 실행할 수 있습니다. 작업과 같은 아티팩트 파라미터에 대한 자세한 내용은 특정 작업에 AWS CodeBuild 빌드 및 테스트 작업 참조 대한 CodeBuild 작업 구성 참조 페이지를 참조하세요.

작업은 파이프라인을 생성할 때 선택한 Amazon S3 아티팩트 버킷에 저장되는 입력 및 출력 아티팩트를 사용합니다.단계의 작업 유형에 따라 입력 또는 출력 아티팩트에 대한 파일을 CodePipeline 압축하고 전송합니다.

참고

아티팩트 버킷은 선택한 소스 작업이 S3인 파이프라인의 소스 파일 위치로 사용되는 버킷과 다릅니다.

예:

  1. CodePipeline 는 소스 리포지토리에 커밋이 있을 때 파이프라인이 실행되도록 트리거하여 소스 단계에서 출력 아티팩트(빌트할 모든 파일)를 제공합니다.

  2. 이전 단계의 출력 아티팩트(빌드되는 모든 파일)는 빌드 단계에 대한 입력 아티팩트로서 수집됩니다. 빌드 단계의 출력 아티팩트(빌드된 애플리케이션)는 컨테이너에 빌드되는 업데이트 도커 이미지 또는 업데이트 애플리케이션일 수 있습니다.

  3. 이전 단계의 출력 아티팩트(빌드된 애플리케이션)는 배포 단계에 대한 입력 아티팩트로서 수집됩니다(예: AWS 클라우드의 스테이징 또는 프로덕션 환경). 배포 플릿에 애플리케이션을 배포하거나 ECS 클러스터에서 실행되는 작업에 컨테이너 기반 애플리케이션을 배포할 수 있습니다.

작업을 생성하거나 편집할 때 작업의 입력 및 출력 아티팩트(들)를 지정합니다. 예를 들어, 소스배포 단계가 있는 2단계 파이프라인의 경우에는 작업 편집에서 배포 작업의 입력 아티팩트를 위한 소스 작업의 아티팩트 이름을 선택합니다.

  • 콘솔을 사용하여 첫 번째 파이프라인을 생성할 때 는 동일한 에 Amazon S3 버킷 AWS 계정 AWS 리전 을 CodePipeline 생성하고 모든 파이프라인에 대한 항목을 저장합니다. 콘솔을 사용하여 해당 리전에서 다른 파이프라인을 생성할 때마다 는 버킷에서 해당 파이프라인의 폴더를 CodePipeline 생성합니다. 그리고 자동화된 릴리스 프로세스가 실행되면 그 폴더를 이용해 파이프라인에 대한 아티팩트를 저장합니다. 이 버킷의 이름은 codepipeline-입니다.region-12345EXAMPLE, 여기서 region 는 파이프라인을 생성한 AWS 리전이며,12345EXAMPLE 는 버킷 이름이 고유하도록 보장하는 12자리 무작위 번호입니다.

    참고

    파이프라인을 생성하는 리전에 코드파이프라인 리전으로 시작하는 버킷이 이미 있는 경우 는 이를 기본 버킷으로 CodePipeline 사용합니다. 또한 사전 순서를 따릅니다. 예를 들어 codepipeline-region-abcexample이 codepipeline-region-defexample보다 먼저 선택됩니다.

    CodePipeline 는 아티팩트 이름을 잘라 일부 버킷 이름이 비슷하게 보일 수 있습니다. 아티팩트 이름이 잘린 것처럼 보이더라도 는 이름이 잘린 아티팩트의 영향을 받지 않는 방식으로 아티팩트 버킷에 CodePipeline 매핑합니다. 파이프라인은 정상적으로 작동할 수 있습니다. 이는 폴더 또는 결과물에 문제가 되지 않습니다. 파이프라인 이름은 100자 이내로 제한됩니다. 결과물 폴더 이름이 짧아 보이더라도 여전히 파이프라인에 고유합니다.

    파이프라인을 생성하거나 편집할 때는 파이프라인 AWS 계정 및 에 아티팩트 버킷이 있어야 하며 AWS 리전, 작업을 실행하려는 리전당 하나의 아티팩트 버킷이 있어야 합니다. 콘솔을 사용하여 파이프라인 또는 리전 간 작업을 생성하는 경우 기본 아티팩트 버킷은 작업이 있는 리전 CodePipeline 에서 에 의해 구성됩니다.

    AWS CLI 를 사용하여 파이프라인을 생성하는 경우 해당 버킷이 파이프라인과 동일 AWS 계정 하고 AWS 리전 파이프라인에 있는 한 해당 파이프라인의 아티팩트를 Amazon S3 버킷에 저장할 수 있습니다. 계정에 허용된 Amazon S3 버킷의 한도를 넘을까 걱정이 된다면 이렇게 할 수 있습니다. AWS CLI 를 사용하여 파이프라인을 생성하거나 편집하고 리전 간 작업(파이프라인과 다른 리전의 AWS 공급자와의 작업)을 추가하는 경우 작업을 실행하려는 각 추가 리전에 대해 아티팩트 버킷을 제공해야 합니다.

  • 모든 작업에는 유형이 있습니다. 유형에 따라 다음 중 하나 또는 둘 다 갖고 있을 수 있습니다.

    • 작업을 실행하는 동안 소비하거나 작업하는 아티팩트인 입력 아티팩트.

    • 작업의 출력인 출력 아티팩트.

    파이프라인의 모든 출력 아티팩트에는 고유의 이름이 있어야 합니다. 하나의 작업에 대한 모든 입력 아티팩트는 앞선 파이프라인 내 작업의 출력 아티팩트와 일치해야 합니다. 한 단계에서 작업 직전에 있었던 작업이든 몇 단계 전의 단계에서 실행된 작업이든 중요하지 않습니다.

    아티팩트는 한 가지 이상의 작업에 의해 작동합니다.