AWS CodePipeline
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 계정을 승인합니다.
- AWS Management Console에 로그인하고 AWS Developer Tools 콘솔을 엽니다.
- 설정 > 연결 > 연결 생성을 선택합니다.
- 공급자 선택에서 GitLab을 선택합니다.
- 연결 이름에서 생성하려는 연결의 이름을 입력하고 GitLab에 연결을 선택합니다.
- GitLab 로그인 페이지에서 자격 증명을 입력하고 로그인을 선택합니다.
- 연결이 GitLab 계정에 접근할 수 있도록 요청하는 메시지가 포함된 승인 페이지가 표시됩니다. 승인을 선택합니다.
- 브라우저가 연결 콘솔 페이지로 돌아갑니다. GitLab 연결 생성 섹션에서 새로운 연결이 연결 이름에 표시됩니다.
- GitLab에 연결을 선택합니다. 연결이 성공적으로 생성되면 성공 배너가 표시됩니다. 연결 세부정보는 연결 설정 페이지에 표시됩니다.
AWS CodeSuite를 GitLab.com에 연결했으므로 이제 GitLab 프로젝트를 활용하는 AWS CodePipeline에서 파이프라인을 생성하거나 수정할 수 있습니다.
- AWS CodePipeline 콘솔에 로그인합니다.
- 파이프라인을 생성하거나 수정합니다:
- 만약 파이프라인을 생성하는 경우:
- 첫 화면의 필드를 작성하고 다음을 선택합니다.
- 소스 페이지에서 소스 제공자 섹션에서 GitLab을 선택합니다.
- 기존 파이프라인을 편집하는 경우:
- 편집 > 단계 편집을 선택하여 소스 작업을 추가하거나 수정합니다.
- 작업 편집 페이지에서, 작업 이름 섹션에 작업 이름을 입력합니다.
- 작업 제공자에서 GitLab을 선택합니다.
- 만약 파이프라인을 생성하는 경우:
- 연결에서 이전에 생성한 연결을 선택합니다.
-
저장소 이름에서 GitLab 프로젝트의 이름을 선택하려면 네임스페이스와 모든 하위 그룹이 포함된 전체 프로젝트 경로를 지정합니다.
예를 들어, 그룹 수준 프로젝트의 경우 다음 형식으로 프로젝트 이름을 입력합니다:group-name/subgroup-name/project-name
.
네임스페이스가 포함된 프로젝트 경로는 GitLab의 URL에 있습니다. Web IDE 또는 원시 보기에서 URL을 복사하지 마세요. 다른 특수 URL 세그먼트가 포함되어 있습니다.
대화 상자에서 옵션을 선택하거나 수동으로 새 경로를 입력할 수도 있습니다.
더 많은 정보는 다음을 참조하세요:- 경로와 네임스페이스는 projects API의
path_with_namespace
필드에서 확인할 수 있습니다. - GitLab에서 네임스페이스에 대한 내용은 namespaces를 참조하세요.
- 경로와 네임스페이스는 projects API의
-
브랜치 이름에서 파이프라인이 소스 변경 사항을 감지할 브랜치를 선택합니다.
브랜치 이름이 자동으로 채워지지 않는 경우 다음 중 하나 때문일 수 있습니다:- 프로젝트에 대한 Owner 역할이 없습니다.
- 프로젝트 이름이 유효하지 않습니다.
- 사용된 연결이 프로젝트에 접근할 수 없습니다.
-
출력 아티팩트 형식에서 아티팩트의 형식을 선택합니다. 저장하려면:
- GitLab 작업에서 아티팩트를 기본 방법으로 출력하려면 CodePipeline 기본값을 선택합니다. 작업은 GitLab 리포지토리에서 파일에 접근하여 파이프라인 아티팩트 스토어에 ZIP 파일로 저장합니다.
- JSON 파일로 리포지토리에 대한 URL 참조가 포함되어 있어 하류 작업이 Git 명령을 직접 수행할 수 있도록 하려면 풀 클론을 선택합니다. 이 옵션은 하류 CodeBuild 작업에서만 사용할 수 있습니다. 이 옵션을 선택하려면:
- 소스 작업을 저장하고 계속합니다.
AWS CLI 사용
AWS CLI를 사용하여 연결을 생성하려면:
-
create-connection
명령어를 사용하세요. - AWS 콘솔로 이동하여 GitLab.com 계정으로 인증하세요.
- GitLab 프로젝트를 AWS CodePipeline에 연결하세요.
create-connection
명령어를 사용하려면:
-
터미널(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" }
-
새 연결은 기본적으로
PENDING
상태로 생성됩니다. 콘솔을 사용하여 연결의 상태를AVAILABLE
로 변경하세요. -
AWS 콘솔을 사용하여 연결을 완료하세요. 보류 중인 GitLab 연결을 선택하세요. Create connection을 선택하지 마세요.