예: Lambda 함수 호출 - 아마존 CodeCatalyst

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

예: Lambda 함수 호출

다음 예제 워크플로는 배포 작업과 함께 AWS Lambda 호출 작업을 포함합니다. 워크플로는 배포가 시작되었음을 알리는 Slack 알림을 보낸 다음 템플릿을 AWS 사용하여 애플리케이션을 배포합니다. AWS CloudFormation 워크플로는 순차적으로 실행되는 다음과 같은 구성 요소로 구성됩니다.

  • 트리거 - 이 트리거는 소스 리포지토리에 변경 내용을 푸시할 때 워크플로가 자동으로 실행됩니다. 트리거에 대한 자세한 내용은 트리거를 사용하여 자동으로 워크플로 실행 시작 주제를 참조하십시오.

  • AWS Lambda 호출 작업 (LambdaNotify) — 트리거 시 이 작업은 지정된 AWS 계정 및 리전 (, 및) 에서 Notify-Start Lambda 함수를 호출합니다. my-aws-account us-west-2 호출 시 Lambda 함수는 배포가 시작되었음을 알리는 Slack 알림을 보냅니다.

  • AWS CloudFormation 스택 배포 작업 (Deploy) — AWS Lambda 호출 작업이 완료되면 스택 배포 작업은 템플릿 (cfn-template.yml) 을 실행하여 애플리케이션 AWS CloudFormation 스택을 배포합니다. AWS CloudFormation 스택 배포 작업에 대한 자세한 내용은 을 참조하십시오스택 배포 AWS CloudFormation.

참고

다음 워크플로 예제는 설명을 위한 것으로, 추가 구성 없이는 작동하지 않습니다.

참고

다음 YAML 코드에서는 원하는 경우 Connections: 섹션을 생략할 수 있습니다. 이러한 섹션을 생략하는 경우 환경의 기본 역할 필드에 지정된 IAM 역할에AWS Lambda 호출배포 AWS CloudFormation 스택 작업에 필요한 권한 및 신뢰 정책이 포함되어 있는지 확인해야 합니다. 기본 IAM 역할을 사용하여 환경을 설정하는 방법에 대한 자세한 내용은 을 참조하십시오. 환경 생성 AWS Lambda 호출배포 AWS CloudFormation 스택 작업에 필요한 권한 및 신뢰 정책에 대한 자세한 내용은 AWS Lambda '호출' 액션 YAMLAWS CloudFormation '스택 배포' 작업 YAMLRole 속성 설명을 참조하십시오.

Name: codecatalyst-lamda-invoke-workflow SchemaVersion: 1.0 Triggers: - Type: PUSH Branches: - main Actions: LambdaNotify: Identifier: aws/lambda-invoke@v1 Environment: Name: my-production-environment Connections: - Name: my-aws-account Role: codecatalyst-lambda-invoke-role Inputs: Sources: - WorkflowSource Configuration: Function: Notify-Start AWSRegion: us-west-2 Deploy: Identifier: aws/cfn-deploy@v1 Environment: Name: my-production-environment Connections: - Name: my-aws-account Role: codecatalyst-deploy-role Inputs: Sources: - WorkflowSource Configuration: name: my-application-stack region: us-west-2 role-arn: arn:aws:iam::111122223333:role/StackRole template: ./cfn-template.yml capabilities: CAPABILITY_IAM,CAPABILITY_AUTO_EXPAND