Scheduled Function on AWS
Basic example of AWS Cloud Watch Scheduled Function
This example lives in the pulumi/examples repository. Check out just this directory to use it:
git clone --filter=blob:none --sparse https://github.com/pulumi/examples pulumi-examplesgit -C pulumi-examples sparse-checkout set aws-ts-scheduled-functioncd pulumi-examples/aws-ts-scheduled-functionA simple function in AWS that executes based on a schedule using CloudWatch.
In this example, an S3 Bucket will be created. A function will run every Friday at 11:00pm UTC that will delete all of the objects it contains.
Deploying and running the program#
-
Create a new stack:
Terminal window pulumi stack init dev -
Set the AWS region:
$ pulumi config set aws:region us-east-1 -
Restore NPM modules via
npm installoryarn install. -
Run
pulumi upto preview and deploy changes:$ pulumi upPreviewing update of stack 'dev'...Updating (dev):Type Name Status+ pulumi:pulumi:Stack aws-ts-scheduled-function-dev created+ ├─ aws:cloudwatch:EventRuleEventSubscription emptyTrash created+ │ ├─ aws:cloudwatch:EventRule emptyTrash created+ │ ├─ aws:iam:Role emptyTrash created+ │ ├─ aws:iam:RolePolicyAttachment emptyTrash-32be53a2 created+ │ ├─ aws:lambda:Function emptyTrash created+ │ ├─ aws:cloudwatch:EventTarget emptyTrash created+ │ └─ aws:lambda:Permission emptyTrash created+ └─ aws:s3:Bucket trash createdOutputs:bucketName: "trash-28693b6"Resources:+ 9 createdDuration: 16s
Clean up#
-
Run
pulumi destroyto tear down all resources. -
To delete the stack itself, run
pulumi stack rm. Note that this command deletes all deployment history from the Pulumi console.