본문 바로가기
WIKI 기술 지식 베이스

Amazon Web Services CodeCommit Locations

원문 보기 위키 갱신

AWS CodeCommit 통합은 CodeCommit 저장소에서 카탈로그 엔티티를 로드하는 것을 지원해요.

출처: 문서

본문

AWS CodeCommit 통합은 CodeCommit 저장소에서 카탈로그 엔티티를 로드하는 것을 지원해요. 엔티티는 정적 카탈로그 구성에 추가하거나, catalog-import 플러그인으로 등록할 수 있어요.

구성

이 통합을 사용하려면 app-config.yaml에 구성을 추가하세요.

integrations:  awsCodeCommit:    - region: eu-west-1

이 가장 기본적인 예시는 다음 정책이 있는 IAM ID를 가진 인스턴스에서 Backstage를 실행할 때만 사용할 수 있어요.

{  "Version": "2012-10-17",  "Statement": [    {      "Action": ["codecommit:GetFile", "codecommit:GetFolder"],      "Resource": "*",      "Effect": "Allow"    }  ]}

AWS 외부에서 Backstage를 실행하면서 Access key 인증을 쓰고 싶다면 다음 구성을 사용할 수 있어요.

integrations:  awsCodeCommit:    - region: eu-west-1      accessKeyId: ${AWS_ACCESS_KEY_ID}      secretAccessKey: ${AWS_SECRET_ACCESS_KEY}

그런 다음 Backstage를 실행할 때 환경 변수 AWS_ACCESS_KEY_ID와 AWS_SECRET_ACCESS_KEY가 설정되어 있는지 확인하세요.

여러 AWS 계정을 가진 사용자는 다른 AWS 계정에 있는 CodeCommit용 역할을 쓰고 싶을 수 있어요. 아래처럼 roleArn 매개변수를 사용하면 CodeCommit에 접근하기 전에 역할을 가정(assume)하도록 AWS CodeCommit 리더에게 지시할 수 있어요.

integrations:  awsCodeCommit:    - region: eu-west-1      roleArn: 'arn:aws:iam::xxxxxxxxxxxx:role/example-role'      externalId: 'some-id' # optional

각 항목은 다음 필수 요소를 가진 구조예요.

  • region: CodeCommit 서비스와 통신하기 위해 연결할 AWS 리전

구성은 다른 통합처럼 host 속성도 제공할 수 있어요. 제공되지 않으면 주어진 리전에서 결정돼요. 즉 eu-west-1을 리전으로 제공하면 Backstage는 eu-west-1.console.aws.amazon.com 호스트를 사용해 제공된 URL이 통합과 일치하는지 확인해요.

AWS CodeCommit에 엔티티 등록하기

AWS CodeCommit 저장소에 저장된 엔티티를 등록하려면 AWS Console에서 URL을 가져와야 해요.

  • AWS Console에서 Code Commit 서비스를 여세요 (https://console.aws.amazon.com/codecommit/home)

  • 선택 사항: 기본 리전(us-east-1)이 아니라면 올바른 리전을 선택했는지 확인하세요

  • 엔티티 파일이 저장된 저장소를 선택하세요

  • 저장소 안에서 backstage 엔티티 파일(catalog-info.yaml)로 이동해 파일을 여세요

  • 이제 브라우저의 URL을 복사해 Backstage 안에 붙여넣을 수 있어요

형식은 대략 다음과 같아요. https://{region}.console.aws.amazon.com/codesuite/codecommit/repositories/{reponame}/browse/refs/heads/{branch}/--/catalog-info.yaml

더 알아보기 (Learn more)