diff --git a/cmd/aws-lambda-rie/http.go b/cmd/aws-lambda-rie/http.go index be4002d..5c8696b 100644 --- a/cmd/aws-lambda-rie/http.go +++ b/cmd/aws-lambda-rie/http.go @@ -9,13 +9,15 @@ import ( log "github.com/sirupsen/logrus" ) -func startHTTPServer(ipport string, sandbox Sandbox) { +func startHTTPServer(ipport string, sandbox Sandbox, funcName string) { srv := &http.Server{ Addr: ipport, } + url := "/2015-03-31/functions/" + funcName + "/invocations" + // Pass a channel - http.HandleFunc("/2015-03-31/functions/function/invocations", func(w http.ResponseWriter, r *http.Request) { + http.HandleFunc(url, func(w http.ResponseWriter, r *http.Request) { InvokeHandler(w, r, sandbox) }) diff --git a/cmd/aws-lambda-rie/main.go b/cmd/aws-lambda-rie/main.go index a151ae7..4abb840 100644 --- a/cmd/aws-lambda-rie/main.go +++ b/cmd/aws-lambda-rie/main.go @@ -41,7 +41,8 @@ func main() { go sandbox.Create() testAPIipport := "0.0.0.0:8080" - startHTTPServer(testAPIipport, sandbox) + funcName := GetenvWithDefault("AWS_LAMBDA_FUNCTION_NAME", "function") + startHTTPServer(testAPIipport, sandbox, funcName) } func getCLIArgs() (options, []string) { diff --git a/test/integration/local_lambda/test_end_to_end.py b/test/integration/local_lambda/test_end_to_end.py index a85abce..fdbc6cb 100644 --- a/test/integration/local_lambda/test_end_to_end.py +++ b/test/integration/local_lambda/test_end_to_end.py @@ -60,7 +60,7 @@ def tearDownClass(cls): arch_tag = "" if arch == "" else f"-{arch}" cmd = f"docker rm -f {image}{arch_tag}" Popen(cmd.split(" ")).communicate() - + for arch in ARCHS: arch_tag = "" if arch == "" else f"-{arch}" Popen(f"docker rmi {cls.image_name}{arch_tag}".split(" ")).communicate() @@ -136,7 +136,7 @@ def test_lambda_function_arn_exists_with_defining_custom_name(self, arch, port): time.sleep(SLEEP_TIME) r = requests.post( - f"http://localhost:{port}/2015-03-31/functions/function/invocations", json={} + f"http://localhost:{port}/2015-03-31/functions/MyCoolName/invocations", json={} ) self.assertEqual(b'"My lambda ran succesfully"', r.content) @@ -260,7 +260,7 @@ def test_function_name_is_overriden(self, arch, port): time.sleep(SLEEP_TIME) r = requests.post( - f"http://localhost:{port}/2015-03-31/functions/function/invocations", json={} + f"http://localhost:{port}/2015-03-31/functions/MyCoolName/invocations", json={} ) self.assertEqual(b'"My lambda ran succesfully"', r.content)