mirror of
https://github.com/serverless/serverless.git
synced 2026-01-18 14:58:43 +00:00
22 lines
674 B
Bash
Executable File
22 lines
674 B
Bash
Executable File
#!/bin/sh
|
|
|
|
set -euo pipefail
|
|
|
|
# Initialization - load function handler
|
|
source $LAMBDA_TASK_ROOT/"$(echo $_HANDLER | cut -d. -f1).sh"
|
|
|
|
# Processing
|
|
while true
|
|
do
|
|
HEADERS="$(mktemp)"
|
|
# Get an event
|
|
EVENT_DATA=$(curl -sS -LD "$HEADERS" -X GET "http://${AWS_LAMBDA_RUNTIME_API}/2018-06-01/runtime/invocation/next")
|
|
REQUEST_ID=$(grep -Fi Lambda-Runtime-Aws-Request-Id "$HEADERS" | tr -d '[:space:]' | cut -d: -f2)
|
|
|
|
# Execute the handler function from the script
|
|
RESPONSE=$($(echo "$_HANDLER" | cut -d. -f2) "$EVENT_DATA")
|
|
|
|
# Send the response
|
|
curl -X POST "http://${AWS_LAMBDA_RUNTIME_API}/2018-06-01/runtime/invocation/$REQUEST_ID/response" -d "$RESPONSE"
|
|
done
|