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