https://github.com/gammarers/aws-ec2-instance-running-schedule-stack
This is an AWS CDK Construct to make EC2 instance running schedule (only running while working hours(start/stop)).
https://github.com/gammarers/aws-ec2-instance-running-schedule-stack
aws aws-cdk cdk notification sheduler stepfunctions
Last synced: 3 months ago
JSON representation
This is an AWS CDK Construct to make EC2 instance running schedule (only running while working hours(start/stop)).
- Host: GitHub
- URL: https://github.com/gammarers/aws-ec2-instance-running-schedule-stack
- Owner: gammarers
- License: apache-2.0
- Created: 2023-04-13T06:29:05.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2025-04-09T16:43:42.000Z (3 months ago)
- Last Synced: 2025-04-09T16:54:27.823Z (3 months ago)
- Topics: aws, aws-cdk, cdk, notification, sheduler, stepfunctions
- Language: TypeScript
- Homepage:
- Size: 1.36 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# AWS EC2 Instance Running Schedule Stack
[](https://github.com/gammarers/aws-ec2-instance-running-schedule-stack/blob/main/LICENSE)
[](https://www.npmjs.com/package/@gammarers/aws-ec2-instance-running-schedule-stack)
[](https://pypi.org/project/gammarers.aws-ec2-instance-running-schedule-stack/)
[](https://www.nuget.org/packages/Gammarers.CDK.AWS.EC2InstanceRunningScheduleStack/)
[](https://github.com/gammarers/aws-ec2-instance-running-schedule-stack/actions/workflows/release.yml)
[](https://github.com/gammarers/aws-ec2-instance-running-schedule-stack/releases)[](https://constructs.dev/packages/@gammarers/aws-ec2-instance-running-schedule-stack)
This is an AWS CDK Construct to make EC2 instance running schedule (only running while working hours(start/stop)).
## Fixed
- EC2 Instance
## Resources
This construct creating resource list.
- EventBridge Scheduler execution role
- EventBridge Scheduler
- Step Functions State machine
- Step Functions State machine role## State Machine Execution Flow

## Install
### TypeScript
#### install by npm
```shell
npm install @gammarer/aws-ec2-instance-running-schedule-stack
```#### install by yarn
```shell
yarn add @gammarer/aws-ec2-instance-running-schedule-stack
```### Python
```shell
pip install gammarer.aws-ec2-instance-running-schedule-stack
```### C# / .NET
```shell
dotnet add package Gammarer.CDK.AWS.Ec2InstanceRunningScheduleStack
```## Example
```typescript
import { Ec2InstanceRunningScheduleStack } from '@gammarer/aws-ec2-instance-running-schedule-stack';new EC2InstanceRunningScheduleStack(app, 'EC2InstanceRunningScheduleStack', {
targetResource: {
tagKey: 'WorkHoursRunning',
tagValues: ['YES'],
},
startSchedule: {
timezone: 'Asia/Tokyo',
minute: '55',
hour: '8',
week: 'MON-FRI',
},
stopSchedule: {
timezone: 'Asia/Tokyo',
minute: '5',
hour: '19',
week: 'MON-FRI',
},
notifications: { // OPTIONAL NOTIFICATION
emails: [ // OPTIONAL SEND EMAIL FROM SNS
'[email protected]',
'[email protected]',
],
},
});```
## License
This project is licensed under the Apache-2.0 License.