AWS CodePipeline
Offering: GitLab.com
GitLab 프로젝트를 사용하여 AWS CodePipeline으로 코드 변경 사항을 빌드, 테스트 및 배포할 수 있습니다. GitLab.com의 프로젝트에 대한 연결을 생성하려면 AWS Management Console이나 AWS 명령줄 인터페이스(AWS CLI)를 사용할 수 있습니다.
히스토리
- GitLab 16.5에서 도입됨.
GitLab 프로젝트를 사용하여 AWS CodePipeline으로 코드 변경 사항을 빌드, 테스트 및 배포할 수 있습니다. 이를 위해 다음을 사용합니다:
- GitLab.com 계정을 AWS에 연결하는 AWS CodeStar Connections.
- 코드 변경 사항에 따라 파이프라인을 자동으로 시작하는 연결.
AWS CodePipeline에서 GitLab으로의 연결 생성#
사전 요구 사항:
- AWS CodePipeline과 연결하는 GitLab 프로젝트에 대한 Owner 권한이 있어야 합니다.
- AWS에서 연결을 생성할 적절한 권한이 있어야 합니다.
- 지원되는 AWS 리전을 사용해야 합니다. 지원되지 않는 리전(AWS 설명서에도 나열됨)은 다음과 같습니다:
- 아시아 태평양(홍콩).
- 아프리카(케이프타운).
- 중동(바레인).
- 유럽(취리히).
- AWS GovCloud(US-West 및 US-East).
GitLab.com의 프로젝트에 대한 연결을 생성하려면 AWS Management Console이나 AWS 명령줄 인터페이스(AWS CLI)를 사용할 수 있습니다.
AWS Management Console 사용#
GitLab.com을 사용하여 AWS CodePipeline에서 새 파이프라인이나 기존 파이프라인을 연결하려면 먼저 GitLab 계정을 사용하도록 AWS 연결을 승인합니다.
- AWS Management Console에 로그인하고 AWS Developer Tools 콘솔을 엽니다.
- Settings > Connections > Create connection을 선택합니다.
- Select a provider에서 GitLab을 선택합니다.
- Connection name에서 생성하려는 연결의 이름을 입력하고 Connect to GitLab을 선택합니다.
- GitLab 로그인 페이지에서 자격 증명을 입력하고 Sign in을 선택합니다.
- 연결이 GitLab 계정에 액세스하도록 승인을 요청하는 메시지와 함께 승인 페이지가 표시됩니다. Authorize를 선택합니다.
- 브라우저가 연결 콘솔 페이지로 돌아갑니다. Create GitLab connection 섹션에서 새 연결이 Connection name에 표시됩니다.
- Connect to GitLab을 선택합니다. 연결이 성공적으로 생성되면 성공 배너가 표시됩니다. 연결 세부 정보는 Connection settings 페이지에 표시됩니다.
이제 AWS CodeSuite를 GitLab.com에 연결했으므로 GitLab 프로젝트를 활용하는 AWS CodePipeline에서 파이프라인을 생성하거나 편집할 수 있습니다.
-
AWS CodePipeline 콘솔에 로그인합니다.
-
파이프라인을 생성하거나 편집합니다:
- 파이프라인을 생성하는 경우:
- 첫 번째 화면의 필드를 완료하고 Next를 선택합니다.
- Source 페이지의 Source Provider 섹션에서 GitLab을 선택합니다.
- 기존 파이프라인을 편집하는 경우:
- Edit > Edit stage를 선택하여 소스 작업을 추가하거나 편집합니다.
- Edit action 페이지의 Action name 섹션에서 작업 이름을 입력합니다.
- Action provider에서 GitLab을 선택합니다.
- 파이프라인을 생성하는 경우:
-
Connection에서 이전에 생성한 연결을 선택합니다.
-
Repository name에서 GitLab 프로젝트의 이름을 선택하려면 네임스페이스와 모든 서브그룹이 포함된 전체 프로젝트 경로를 지정합니다. 예를 들어 그룹 수준 프로젝트의 경우 다음 형식으로 프로젝트 이름을 입력합니다:
group-name/subgroup-name/project-name. 네임스페이스가 포함된 프로젝트 경로는 GitLab의 URL에 있습니다. 다른 특수 URL 세그먼트가 포함되어 있으므로 Web IDE나 원시 보기의 URL을 복사하지 마세요. 대화 상자에서 옵션을 선택하거나 새 경로를 수동으로 입력할 수도 있습니다. 다음에 대한 자세한 정보: -
Branch name에서 파이프라인이 소스 변경 사항을 감지할 브랜치를 선택합니다. 브랜치 이름이 자동으로 채워지지 않는 경우 다음 중 하나의 이유일 수 있습니다:
- 프로젝트에 대한 Owner 권한이 없습니다.
- 프로젝트 이름이 유효하지 않습니다.
- 사용된 연결이 프로젝트에 대한 액세스 권한이 없습니다.
-
Output artifact format에서 아티팩트 형식을 선택합니다. 저장할 항목:
- 기본 방법을 사용하여 GitLab 작업에서 출력 아티팩트를 저장하려면 CodePipeline default를 선택합니다. 작업은 GitLab 저장소의 파일에 액세스하고 파이프라인 아티팩트 저장소의 ZIP 파일에 아티팩트를 저장합니다.
- 다운스트림 작업이 Git 명령을 직접 수행할 수 있도록 저장소에 대한 URL 참조가 포함된 JSON 파일을 저장하려면 Full clone을 선택합니다. 이 옵션은 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 Resource Name(ARN) 정보를 반환합니다. 예를 들어:
{ "ConnectionArn": "arn:aws:codestar-connections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f" } -
새 연결은 기본적으로
PENDING상태로 생성됩니다. 콘솔을 사용하여 연결 상태를AVAILABLE로 변경합니다. -
AWS 콘솔을 사용하여 연결을 완료합니다. 보류 중인 GitLab 연결을 선택했는지 확인합니다. Create connection을 선택하지 마세요.
