@gammarers/aws-codepipeline-execution-state-change-notification-stack
Version:
This AWS CDK Construct Stack receives all state changes of CodePipeline and sends a message to the specified notification destination when the CodePipeline is tagged with a specified tag. Therefore, you can send messages simply by adding tags without need
62 lines (44 loc) • 2.94 kB
Markdown
# AWS CodePipeline Execution State Change Notification Stack
[](https://github.com/gammarers/aws-codepipeline-execution-state-change-notification-stack/blob/main/LICENSE)
[](https://www.npmjs.com/package/@gammarers/aws-codepipeline-execution-state-change-notification-stack)
[](https://github.com/gammarers/aws-codepipeline-execution-state-change-notification-stack/actions/workflows/release.yml)
[](https://github.com/gammarers/aws-codepipeline-execution-state-change-notification-stack/releases)
[](https://constructs.dev/packages/@gammarers/aws-codepipeline-execution-state-change-notification-stack)
This AWS CDK Construct Stack receives all state changes of CodePipeline and sends a message to the specified notification destination when the CodePipeline is tagged with a specified tag. Therefore, you can send messages simply by adding tags without needing to configure notifications for each Pipeline.
## Install
### TypeScript
#### install by npm
```shell
npm install @gammarers/aws-codepipeline-execution-state-change-notification-stack
```
#### install by yarn
```shell
yarn add @gammarers/aws-codepipeline-execution-state-change-notification-stack
```
#### install by pnpm
```shell
pnpm add @gammarers/aws-codepipeline-execution-state-change-notification-stack
```
#### install by bun
```shell
bun add @gammarers/aws-codepipeline-execution-state-change-notification-stack
```
## Example
```typescript
import { App } from 'aws-cdk-lib';
import { CodePipelineExecutionStateChangeNotificationStack } from '@gammarers/aws-codepipeline-execution-state-change-notification-stack';
const app = new App();
const stack = new CodePipelineExecutionStateChangeNotificationStack(app, 'CodePipelineExecutionStateChangeNotificationStack', {
targetResource: { // required
tagKey: 'PipelineExecutionStateChangeNotification', // required, Specify the tag key set in CodePipeline
tagValues: ['YES'], // required, Specify the tag value set in CodePipeline
},
notifications: {
emails: [ // optional (but not notification)
'foo@example.com',
],
},
});
```
## License
This project is licensed under the Apache-2.0 License.