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

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

입력 및 출력 아티팩트

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

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

참고

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

예:

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

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

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

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

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

    참고

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

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

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

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

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

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

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

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

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