@@ -6,6 +6,7 @@ INTEG_EXTENSIONS := extension-fn extension-trait logs-trait
66# Using musl to run extensions on both AL1 and AL2
77INTEG_ARCH := x86_64-unknown-linux-musl
88RIE_MAX_CONCURRENCY ?= 4
9+ TEST_RUNNER_BRANCH ?= main
910OUTPUT_DIR ?= test/dockerized/tasks
1011HANDLERS_TO_BUILD ?=
1112HANDLER ?=
@@ -14,7 +15,7 @@ HANDLER ?=
1415-include .env
1516export
1617
17- .PHONY : help pr-check integration-tests check-event-features fmt build-examples test-rie test-rie-lmi nuke test-dockerized
18+ .PHONY : help pr-check integration-tests check-event-features fmt build-examples build- test-runner test- rie test-rie-lmi nuke test-dockerized test-dockerized-concurrent
1819
1920.DEFAULT_GOAL := help
2021
@@ -129,23 +130,39 @@ build-examples:
129130nuke :
130131 docker kill $$(docker ps -q )
131132
132- test-dockerized : build-examples
133- @echo " Running dockerized tests locally..."
134-
133+ build-test-runner : build-examples
135134 @echo " Building base Docker image with RIE and custom entrypoint..."
136135 docker build \
137136 -t local/test-base \
138137 -f Dockerfile.test \
139138 .
140-
139+
141140 @echo "Setting up containerized test runner..."
142141 @if [ ! -d ".test-runner" ]; then \
143142 echo "Cloning containerized-test-runner-for-aws-lambda..."; \
144- git clone --quiet https://github.com/aws/containerized-test-runner-for-aws-lambda.git .test-runner; \
143+ git clone --quiet --branch $(TEST_RUNNER_BRANCH) https://github.com/aws/containerized-test-runner-for-aws-lambda.git .test-runner; \
145144 fi
146145 @echo "Building test runner Docker image..."
147146 @docker build -t test-runner:local -f .test-runner/Dockerfile .test-runner
148-
147+
148+ test-dockerized-concurrent : build-test-runner
149+ @echo " Running concurrent scenarios in Docker..."
150+ @docker network create concurrent-test-net 2> /dev/null || true
151+ @docker run --rm \
152+ --network concurrent-test-net \
153+ -e INPUT_SUITE_FILE_ARRAY=' []' \
154+ -e INPUT_SCENARIO_DIR=/workspace/test/dockerized/scenarios \
155+ -e DOCKER_IMAGE_NAME=local/test-base \
156+ -e TASK_FOLDER=./test/dockerized/tasks \
157+ -e GITHUB_WORKSPACE=/workspace \
158+ -e DOCKER_SHARED_NETWORK=concurrent-test-net \
159+ -v /var/run/docker.sock:/var/run/docker.sock \
160+ -v " $( CURDIR) :/workspace" \
161+ -w /workspace \
162+ test-runner:local
163+ @docker network rm --force concurrent-test-net 2> /dev/null || true
164+
165+ test-dockerized : build-test-runner
149166 @echo " Running tests in Docker..."
150167 @docker run --rm \
151168 -e INPUT_SUITE_FILE_ARRAY=' ["./test/dockerized/suites/*.json"]' \
@@ -179,6 +196,7 @@ help: ## Show this help message
179196 @echo ' Usage: HANDLERS_TO_BUILD="basic-lambda" HANDLER="basic-lambda" make test-rie'
180197 @echo ' test-rie-lmi Test RIE in Lambda Managed Instance mode'
181198 @echo ' Usage: RIE_MAX_CONCURRENCY=4 HANDLERS_TO_BUILD="basic-lambda-concurrent" make test-rie-lmi'
199+ @echo ' test-dockerized-concurrent Run concurrent LMI test scenarios'
182200 @echo ' test-dockerized Run dockerized test harness'
183201 @echo ' nuke Kill all running Docker containers'
184202 @echo ' '
0 commit comments