AWS CodePipeline

Tier: Free, Premium, Ultimate Offering: GitLab.com

GitLab 프로젝트를 사용하여 AWS CodePipeline을 통해 코드 변경 사항을 빌드, 테스트 및 배포할 수 있습니다. 그렇게 하려면 아래를 사용합니다:

  • AWS CodeStar Connections를 사용하여 GitLab.com 계정을 AWS에 연결합니다.
  • 코드 변경 사항에 따라 파이프라인을 자동으로 시작하기 위한 연결입니다.

GitLab에 대한 AWS CodePipeline 연결 생성

필수 조건:

  • AWS CodePipeline과 연결할 GitLab 프로젝트에서 Owner 역할을 보유해야 합니다.
  • AWS에서 연결을 생성할 수 있는 적절한 권한을 보유해야 합니다.
  • 지원되는 AWS 리전을 사용해야 합니다. 지원되지 않는 리전은 다음과 같습니다( AWS 문서에도 나열됨):
    • 아시아 태평양 (홍콩).
    • 아프리카 (케이프타운).
    • 중동 (바레인).
    • 유럽 (취리히).
    • AWS GovCloud (US-West 및 US-East).

GitLab.com의 프로젝트에 대한 연결을 생성하려면 AWS Management Console 또는 AWS Command Line Interface (AWS CLI)를 사용할 수 있습니다.

AWS Management Console 사용

AWS CodePipeline에서 GitLab.com과 새로운 또는 기존 파이프라인을 연결하려면 먼저 AWS 연결을 사용하여 GitLab 계정을 승인합니다.

  1. AWS Management Console에 로그인하고 AWS Developer Tools 콘솔을 엽니다.
  2. 설정 > 연결 > 연결 생성을 선택합니다.
  3. 공급자 선택에서 GitLab을 선택합니다.
  4. 연결 이름에서 생성하려는 연결의 이름을 입력하고 GitLab에 연결을 선택합니다.
  5. GitLab 로그인 페이지에서 자격 증명을 입력하고 로그인을 선택합니다.
  6. 연결이 GitLab 계정에 접근할 수 있도록 요청하는 메시지가 포함된 승인 페이지가 표시됩니다. 승인을 선택합니다.
  7. 브라우저가 연결 콘솔 페이지로 돌아갑니다. GitLab 연결 생성 섹션에서 새로운 연결이 연결 이름에 표시됩니다.
  8. GitLab에 연결을 선택합니다. 연결이 성공적으로 생성되면 성공 배너가 표시됩니다. 연결 세부정보는 연결 설정 페이지에 표시됩니다.

AWS CodeSuite를 GitLab.com에 연결했으므로 이제 GitLab 프로젝트를 활용하는 AWS CodePipeline에서 파이프라인을 생성하거나 수정할 수 있습니다.

  1. AWS CodePipeline 콘솔에 로그인합니다.
  2. 파이프라인을 생성하거나 수정합니다:
    • 만약 파이프라인을 생성하는 경우:
      • 첫 화면의 필드를 작성하고 다음을 선택합니다.
      • 소스 페이지에서 소스 제공자 섹션에서 GitLab을 선택합니다.
    • 기존 파이프라인을 편집하는 경우:
      • 편집 > 단계 편집을 선택하여 소스 작업을 추가하거나 수정합니다.
      • 작업 편집 페이지에서, 작업 이름 섹션에 작업 이름을 입력합니다.
      • 작업 제공자에서 GitLab을 선택합니다.
  3. 연결에서 이전에 생성한 연결을 선택합니다.
  4. 저장소 이름에서 GitLab 프로젝트의 이름을 선택하려면 네임스페이스와 모든 하위 그룹이 포함된 전체 프로젝트 경로를 지정합니다.
    예를 들어, 그룹 수준 프로젝트의 경우 다음 형식으로 프로젝트 이름을 입력합니다: group-name/subgroup-name/project-name.
    네임스페이스가 포함된 프로젝트 경로는 GitLab의 URL에 있습니다. Web IDE 또는 원시 보기에서 URL을 복사하지 마세요. 다른 특수 URL 세그먼트가 포함되어 있습니다.
    대화 상자에서 옵션을 선택하거나 수동으로 새 경로를 입력할 수도 있습니다.
    더 많은 정보는 다음을 참조하세요:
    • 경로와 네임스페이스는 projects APIpath_with_namespace 필드에서 확인할 수 있습니다.
    • GitLab에서 네임스페이스에 대한 내용은 namespaces를 참조하세요.
  5. 브랜치 이름에서 파이프라인이 소스 변경 사항을 감지할 브랜치를 선택합니다.
    브랜치 이름이 자동으로 채워지지 않는 경우 다음 중 하나 때문일 수 있습니다:
    • 프로젝트에 대한 Owner 역할이 없습니다.
    • 프로젝트 이름이 유효하지 않습니다.
    • 사용된 연결이 프로젝트에 접근할 수 없습니다.
  6. 출력 아티팩트 형식에서 아티팩트의 형식을 선택합니다. 저장하려면:
  7. 소스 작업을 저장하고 계속합니다.

AWS CLI 사용

AWS CLI를 사용하여 연결을 생성하려면:

  • create-connection 명령어를 사용하세요.
  • AWS 콘솔로 이동하여 GitLab.com 계정으로 인증하세요.
  • GitLab 프로젝트를 AWS CodePipeline에 연결하세요.

create-connection 명령어를 사용하려면:

  1. 터미널(Linux, macOS 또는 Unix) 또는 명령 프롬프트(Windows)를 엽니다. AWS CLI를 사용하여 create-connection 명령어를 실행하고, 연결을 위한 --provider-type--connection-name을 지정합니다. 이 예제에서 서드파티 제공자 이름은 GitLab이고 지정된 연결 이름은 MyConnection입니다.

    aws codestar-connections create-connection --provider-type GitLab --connection-name MyConnection
    

    성공적일 경우, 이 명령은 연결의 Amazon 리소스 이름(ARN) 정보를 반환합니다. 예를 들어:

    {
    "ConnectionArn": "arn:aws:codestar-connections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f"
    }
    
  2. 새 연결은 기본적으로 PENDING 상태로 생성됩니다. 콘솔을 사용하여 연결의 상태를 AVAILABLE로 변경하세요.

  3. AWS 콘솔을 사용하여 연결을 완료하세요. 보류 중인 GitLab 연결을 선택하세요. Create connection을 선택하지 마세요.

관련 주제