AWS CodeCommit 리포지토리의 트리거 관리 - AWS CodeCommit

AWS CodeCommit 는 더 이상 신규 고객이 사용할 수 없습니다. AWS CodeCommit 의 기존 고객은 정상적으로 서비스를 계속 이용할 수 있습니다. 자세히 알아보기

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS CodeCommit 리포지토리의 트리거 관리

Amazon Simple Notification Service(AmazonSNS)에서 알림을 보내거나 에서 함수를 호출하는 등의 작업을 코드 푸시 또는 기타 이벤트가 트리거하도록 CodeCommit 리포지토리를 구성할 수 있습니다 AWS Lambda. 각 CodeCommit 리포지토리에 대해 최대 10개의 트리거를 생성할 수 있습니다.

트리거는 일반적으로 다음과 같이 구성됩니다.

  • 누군가 리포지토리로 푸시할 때마다 구독한 사용자들에게 이메일을 보냅니다.

  • 누군가 리포지토리의 main 브랜치로 푸시하면 외부 빌드 시스템에 빌드를 시작하도록 알립니다.

외부 빌드 시스템에 알림을 보내는 것과 같은 시나리오에서는 다른 애플리케이션과 상호 작용하기 위해 Lambda 함수를 작성해야 합니다. 이메일 시나리오에서는 Amazon SNS 주제를 생성해야 합니다.

이 주제에서는 가 Amazon SNS 및 Lambda에서 작업을 CodeCommit 트리거할 수 있는 권한을 설정하는 방법을 보여줍니다. 이 주제에는 또한 트리거 생성, 편집, 테스트 및 삭제에 대한 예제로 연결되는 링크도 포함되어 있습니다.

리소스 생성 및 에 대한 권한 추가 CodeCommit

Amazon SNS 주제 및 Lambda 함수를 의 트리거와 통합할 수 있지만 CodeCommit, 먼저 해당 리소스와 상호 작용할 수 있는 CodeCommit 권한을 부여하는 정책을 사용하여 리소스를 생성한 다음 구성해야 합니다. 리 CodeCommit 포지토리 AWS 리전 와 동일한 에서 리소스를 생성해야 합니다. 예를 들어 리포지토리가 미국 동부(오하이오)(us-east-2)에 있는 경우 Amazon SNS 주제 또는 Lambda 함수는 미국 동부(오하이오)에 있어야 합니다.

  • Amazon SNS 주제의 경우 Amazon SNS 주제가 CodeCommit 리포지토리와 동일한 계정을 사용하여 생성된 경우 추가 IAM 정책 또는 권한을 구성할 필요가 없습니다. Amazon SNS 주제를 생성하고 구독하는 즉시 CodeCommit 트리거를 생성할 수 있습니다.

    • Amazon 에서 주제 생성에 대한 자세한 내용은 Amazon SNS 설명서 섹션을 SNS참조하세요.

    • Amazon을 사용하여 Amazon SQS 대기열SNS로 메시지를 전송하는 방법에 대한 자세한 내용은 Amazon SNS 개발자 안내서Amazon SQS 대기열로 메시지 전송을 참조하세요.

    • AmazonSNS을 사용하여 Lambda 함수를 호출하는 방법에 대한 자세한 내용은 Amazon SNS 개발자 안내서Lambda 함수 호출을 참조하세요.

  • 다른 AWS 계정에서 Amazon SNS 주제를 사용하도록 트리거를 구성하려면 먼저 가 해당 주제에 CodeCommit 게시할 수 있는 정책을 사용하여 해당 주제를 구성해야 합니다. 자세한 내용은 예제 1: Amazon SNS 주제에 대한 교차 계정 액세스를 활성화하는 정책 생성 단원을 참조하십시오.

  • Lambda 콘솔에서 트리거를 함수의 일부로 생성하여 Lambda 함수를 구성할 수 있습니다. 이는 가장 간단한 방법입니다. Lambda 콘솔에서 생성된 트리거에는 Lambda 함수를 호출 CodeCommit 하는 데 필요한 권한이 자동으로 포함되기 때문입니다. 에서 트리거를 생성하는 경우 CodeCommit가 함수를 CodeCommit 호출할 수 있도록 허용하는 정책을 포함해야 합니다. 자세한 내용은 기존 Lambda 함수를 위한 트리거 생성예제 3: CodeCommit 트리거와의 AWS Lambda 통합을 위한 정책 생성 단원을 참조하세요.