Amazon Web Services 한국 블로그

Amazon CodeCatalyst, GitLab 및 Bitbucket 리포지토리 지원

Amazon CodeCatalyst기존의 GitHub 통합 외에 두 개의 인기 있는 코드 리포지토리인 GitLabBitbucket과 추가로 통합된다는 소식을 알려드립니다. 현재 CodeCatalyst에서 GitHub와 함께 사용하는 것과 동일한 기능 세트GitLab.com 및 Bitbucket Cloud에도 제공합니다.

Amazon CodeCatalyst는 통합 소프트웨어 개발 및 배포 서비스입니다. 이 서비스를 사용하면 소프트웨어 개발 팀이 Amazon Web Services(AWS)에서 애플리케이션을 빠르고 쉽게 계획, 개발, 협업, 구축 및 제공하여 개발 수명 주기 전반에 걸쳐 마찰을 줄일 수 있습니다.

CodeCatalyst용 GitHub, GitLab.com 및 Bitbucket Cloud 리포지토리 확장 프로그램은 개발 워크플로 관리를 간소화합니다. 이 확장 프로그램을 사용하면 CodeCatalyst 내에서 직접 외부 리포지토리를 보고 관리할 수 있습니다. 또한 외부 리포지토리의 코드와 함께 워크플로 정의 파일을 저장 및 관리하는 동시에 CodeCatalyst 개발 환경에서 연결된 리포지토리에서 파일을 생성하고, 읽고, 업데이트하고, 삭제할 수 있습니다. 또한 이 확장 프로그램은 코드 푸시에서 그리고 풀 요청이 열리거나 병합되거나 닫힐 때 CodeCatalyst 워크플로를 자동으로 실행하도록 트리거합니다. 게다가 연결된 리포지토리의 소스 파일을 직접 활용하고 CodeCatalyst 워크플로 내에서 작업을 실행할 수 있으므로 플랫폼을 전환할 필요가 없고 효율성을 극대화할 수 있습니다.

이 뿐만이 아닙니다. 오늘부터 GitHub, GitLab.com 또는 Bitbucket Cloud 리포지토리에서 청사진을 사용하여 CodeCatalyst 프로젝트를 생성할 수 있고, 이 세 가지 시스템 중 하나에 있는 리포지토리의 기존 코드 베이스에 청사진을 추가할 수 있으며, GitHub, GitLab.com 또는 Bitbucket Cloud에 호스트된 외부 리포지토리에 저장되는 사용자 지정 청사진을 생성할 수도 있습니다.

CodeCatalyst 청사진은 개발 속도를 높이는 데 도움이 됩니다. 이러한 사전 구축된 템플릿은 소스 리포지토리, 샘플 코드, 지속적 통합 및 배포(CI/CD) 워크플로, 통합 문제 추적을 제공하여 빠르게 시작할 수 있도록 합니다. 청사진은 모범 사례에 따라 자동으로 업데이트되므로 코드를 최신으로 유지할 수 있습니다. IT 리더는 기술, 액세스 제어, 배포 및 테스트 방법을 지정하여 팀의 개발을 표준화하기 위한 사용자 지정 청사진을 생성할 수 있습니다. 이제 코드가 GitHub, GitLab.com 또는 Bitbucket Cloud에 있는 경우에도 청사진을 사용할 수 있습니다.

CodeCatalyst 스페이스를 git 리포지토리 호스팅 서비스와 연결
이 세 가지 소스 코드 리포지토리 공급자 중 하나를 사용하여 쉽게 시작할 수 있습니다. CodeCatalyst 스페이스 관리자로서 확장 프로그램을 구성하려는 스페이스를 선택합니다. 그런 다음 Settings를 선택하고 Installed extensions 섹션에서 Configure를 선택하여 CodeCatalyst 스페이스를 GitHub, GitLab.com 또는 Bitbucket Cloud 계정과 연결합니다.

CodeCatalyst를 git 리포지토리 호스팅 서비스와 연결

이 작업은 각 CodeCatalyst 스페이스에 대해 한 번만 수행하지만 스페이스를 여러 소스 공급자의 계정에 연결해야 할 수도 있습니다.

GitHub를 사용할 때 저의 개인 CodeCatalyst 사용자를 저의 GitHub 사용자와 연결해야 합니다. 화면 오른쪽 상단의 개인 메뉴에서 My settings를 선택합니다. 그런 다음 Personal connections 섹션으로 이동합니다. Create를 선택하고 지침에 따라 GitHub에서 인증하고 두 ID를 연결합니다.

개인 CodeCatalyst 계정을 git 호스팅 공급자 계정에 연결

이 작업은 CodeCatalyst 스페이스의 각 사용자에 대한 일회성 작업으로, GitHub를 청사진과 함께 사용할 때만 필요합니다.

청사진에서 프로젝트를 생성하고 GitHub, GitLab.com, Bitbucket Cloud에서 호스팅
외부 리포지토리에서 청사진을 사용하여 프로젝트를 생성하고 나중에 이 프로젝트에 다른 청사진을 추가하는 방법을 보여드리겠습니다. CodeCatalyst에서 지원하는 세 가지 git 호스팅 공급자 중 하나를 사용할 수 있습니다. 이 데모에서는 GitHub를 사용하겠습니다.

API를 구현하기 위해 새 프로젝트를 생성하려 한다고 가정해 보겠습니다. 먼저 PythonAWS Serverless Application Model(AWS SAM)을 사용하여 API를 구현하는 청사진에서 시작합니다. 또한 이 청사진은 CI 워크플로이슈 관리 시스템도 생성합니다. 저는 프로젝트 코드를 GitHub에서 호스트하려고 합니다. 그러면 GitHub의 리포지토리에 있는 소스 파일을 직접 사용하고 CodeCatalyst 워크플로 내에서 작업을 실행할 수 있으므로 플랫폼을 전환할 필요가 없습니다.

먼저 CodeCatalyst 스페이스 페이지에서 Create project를 선택합니다. Start with a blueprint를 선택하고 사용하려는 CodeCatalyst blueprint 또는 Space blueprint를 선택합니다. 그러고 나서 Next를 선택합니다.

Amazon CodeCatalyst - 청사진에서 프로젝트 생성

프로젝트의 이름을 입력합니다. Advanced 섹션을 열고 Repository provider로 GitHub를 선택한 다음 저의 GitHub 계정을 엽니다. Connect a GitHub account를 선택하여 GitHub에 대한 추가 연결을 구성할 수 있습니다.

Amazon CodeCatalyst - GitHub 계정 선택

나머지 구성은 선택한 청사진에 따라 달라집니다. 여기서는 언어 버전, 프로젝트를 배포할 AWS 계정, AWS Lambda 함수의 이름, AWS CloudFormation 스택의 이름을 선택했습니다.

프로젝트를 생성한 후 GitHub 계정으로 이동하면 새 리포지토리가 생성된 것을 볼 수 있습니다. 여기에는 청사진의 코드 및 리소스가 포함되어 있습니다.

Amazon CodeCatalyst - 새 GitHub 리포지토리 생성

기존 GitHub, GitLab.com 또는 Bitbucket Cloud 프로젝트에 청사진 추가
프로젝트에 여러 청사진을 적용하여 기능 구성 요소, 리소스 및 거버넌스를 기존 CodeCatalyst 프로젝트에 통합할 수 있습니다. 프로젝트는 별도의 청사진에서 독립적으로 관리되는 다양한 요소를 지원할 수 있습니다. 서비스 설명서에서 기존 프로젝트의 청사진을 사용한 수명 주기 관리에 대해 자세히 알아볼 수 있습니다.

이제 외부 소스 코드 리포지토리의 기존 프로젝트에 청사진을 추가할 수 있습니다. 백엔드 API 프로젝트가 생성되었으니 이제 프로젝트에 웹 애플리케이션을 추가하고 싶습니다.

왼쪽 메뉴의 Blueprints 섹션으로 이동한 다음 화면 오른쪽 상단에 있는 주황색 Add blueprint 버튼을 선택합니다.

CodeCatalyst - 기존 프로젝트에 청사진 추가

Single-page application 청사진을 선택하고 Next를 선택합니다.

다음 화면에서는 프로젝트를 생성할 때와 마찬가지로 저의 GitHub 연결을 선택해야 합니다. 또한 이 특정 템플릿의 필수 정보를 입력합니다. 화면 오른쪽에서 제안된 변경 사항을 검토합니다.

CodeCatalyst - GitHub에서 프로젝트에 청사진 추가

마찬가지로 CodeCatalyst 엔터프라이즈 티어를 사용할 때도 나만의 사용자 지정 청사진을 생성하여 팀원이나 조직 내 다른 그룹과 공유할 수 있습니다. 간략한 설명을 위해 이 게시물에서는 단계별 지침을 공유하지 않습니다. 자세한 내용은 설명서에서 사용자 지정 청사진으로 프로젝트 표준화를 참조하세요.

CodeCatalyst가 새 청사진을 설치하면 GitHub에 두 번째 리포지토리가 보입니다.

Amazon CodeCatalyst - 다중 리포지토리

단일 또는 다중 리포지토리 전략
코드를 정리할 때 모든 것으로 넘쳐나는 도구함과 같이 하나의 대규모 리포지토리를 선택하거나 더 나은 정리를 위해 작고 특화된 리포지토리로 분할할 수 있습니다. 단일 리포지토리는 긴밀하게 연결된 프로젝트의 종속성 관리를 단순화하지만 규모가 커지면 복잡해질 수 있습니다. 리포지토리가 여러 개 있으면 더 깔끔하게 정리하고 보안을 강화할 수 있지만 개별 프로젝트 간의 종속성을 관리하기 위한 계획이 필요합니다.

CodeCatalyst를 사용하면 프로젝트에 가장 적합한 전략을 사용할 수 있습니다. 자세한 내용은 설명서에서 CodeCatalyst에서 소스 리포지토리에 사용하여 코드 저장 및 공동 작업 섹션을 참조하세요.

앞서 보여드린 예제에서 제가 선택한 청사진은 두 번째 청사진을 GitHub의 별도 리포지토리로 적용할 것을 제안했습니다. 선택한 청사진에 따라 청사진이 별도의 리포지토리를 생성하거나 기존 리포지토리에 새 코드를 병합하도록 제안할 수 있습니다. 후자의 경우, 청사진은 리포지토리에 병합할 수 있도록 풀 요청을 제출할 것입니다.

리전 및 이용 가능 여부
이 새로운 GitHub 통합은 게시 당시 Amazon CodeCatalyst를 사용할 수 있는 두 AWS 리전인 미국 서부(오레곤) 및 유럽(아일랜드)에서 추가 비용 없이 사용할 수 있습니다.

지금 시도해보세요!

– seb