Skip to content

Instantly share code, notes, and snippets.

@balusai1
Forked from amitavroy/aws_ec2_start_stop.json
Created March 30, 2022 13:12
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save balusai1/68bd63d495ac8079ad4e2dfaafaf3958 to your computer and use it in GitHub Desktop.
Save balusai1/68bd63d495ac8079ad4e2dfaafaf3958 to your computer and use it in GitHub Desktop.
AWS EC2 Start Stop Lambda
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"ec2:Start*",
"ec2:Stop*",
"ec2:DescribeInstanceStatus"
],
"Resource": "*"
},
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": [
"logs:CreateLogStream",
"logs:CreateLogGroup",
"logs:PutLogEvents"
],
"Resource": "arn:aws:logs:*:*:*"
}
]
}
56 3 ? * MON-SAT *
import boto3
region = 'us-east-1'
instances = ['i-001e2d04e37ccde3b']
ec2 = boto3.client('ec2', region_name=region)
def lambda_handler(event, context):
print('Starting instances')
ec2.start_instances(InstanceIds=instances)
import boto3
region = 'us-east-1'
instances = ['i-001e2d04e37ccde3b']
ec2 = boto3.client('ec2', region_name=region)
def lambda_handler(event, context):
print('Stopping instances')
ec2.stop_instances(InstanceIds=instances)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment