Triggering an AWS Lambda from the Command-Line
As I'm starting to get more involved with playing with AWS Lambdas, I wondered if there was a better way to test the deployed Lambda without using the AWS UI.
It turns out this is well documented by AWS, and we can use the AWS CLI, but it depends on which AWS CLI version you're using:
$ aws --version
# if version 1
$ aws lambda invoke --function-name my-function --payload '{ "key": "value" }' response.json
# if version 2
$ aws lambda invoke --function-name my-function --invocation-type RequestResponse --payload '{ "key": "value" }' --cli-binary-format raw-in-base64-out response.json
This outputs information about whether the operation was a success to stdout
, and the Lambda's response to response.json
.
Remember that if you're using different AWS accounts/profiles, you'll need to specify the AWS profile before you run the above command.