go-lambda-ping
A simple program that will build the infrastructure to ping a website.
Gathering Dependencies
go get github.com/aws/aws-lambda-go/lambda
Configuration
The Go program exists inside of function/
. main.tf
is the Terraform configuration for the Lambda.
Configuring the Site
Change url := "http://example.com/"
to url := "<desired-site>"
in function/function.go
.
Building the Zip
In the function
directory run make release
to generate the binary and then zip it.
Deploying the Lambda
-
Run
terraform init
to initialize the terraform repository. -
Then run
terraform plan
to create the execution plan. -
Finally,
terraform apply
to apply the changes (run the execution plan).
Trigger the Lambda
aws lambda invoke \
--invocation-type RequestResponse \
--function-name demo_lambda \
--region us-east-1 \
--log-type Tail \
--payload '{"key1":"value1", "key2":"value2", "key3":"value3"}' \
outputfile.txt