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

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

입력 및 출력 아티팩트

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

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

참고

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

예시:

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

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

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

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

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

    참고

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

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

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

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

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

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

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

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

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