10
10
static :
11
11
ignore-failure : false
12
12
env :
13
- type : LINUX_CONTAINER
14
13
privileged-mode : true
15
14
dynamic :
16
15
env :
@@ -27,15 +26,25 @@ phases:
27
26
- echo "Extracting and including the Runtime Interface Emulator"
28
27
- SCRATCH_DIR=".scratch"
29
28
- mkdir "${SCRATCH_DIR}"
30
- - tar -xvf tests/integration/resources/aws-lambda-rie.tar.gz --directory "${SCRATCH_DIR}"
29
+ - ARCHITECTURE=$(arch)
30
+ - >
31
+ if [[ "$ARCHITECTURE" == "x86_64" ]]; then
32
+ RIE="aws-lambda-rie"
33
+ elif [[ "$ARCHITECTURE" == "aarch64" ]]; then
34
+ RIE="aws-lambda-rie-arm64"
35
+ else
36
+ echo "Architecture $ARCHITECTURE is not currently supported."
37
+ exit 1
38
+ fi
39
+ - tar -xvf tests/integration/resources/${RIE}.tar.gz --directory "${SCRATCH_DIR}"
31
40
- >
32
41
cp "tests/integration/docker/Dockerfile.echo.${OS_DISTRIBUTION}" \
33
42
"${SCRATCH_DIR}/Dockerfile.echo.${OS_DISTRIBUTION}.tmp"
34
43
- >
35
44
echo "RUN apk add curl" >> \
36
45
"${SCRATCH_DIR}/Dockerfile.echo.${OS_DISTRIBUTION}.tmp"
37
46
- >
38
- echo "COPY ${SCRATCH_DIR}/aws-lambda-rie /usr/bin/aws-lambda-rie " >> \
47
+ echo "COPY ${SCRATCH_DIR}/${RIE} /usr/bin/${RIE} " >> \
39
48
"${SCRATCH_DIR}/Dockerfile.echo.${OS_DISTRIBUTION}.tmp"
40
49
- >
41
50
if [[ -z "${DOCKERHUB_USERNAME}" && -z "${DOCKERHUB_PASSWORD}" ]];
@@ -60,12 +69,11 @@ phases:
60
69
- >
61
70
docker run \
62
71
--detach \
63
- -e "PYTHON_LOCATION=${PYTHON_LOCATION}" \
64
72
--name "${TEST_NAME}-app" \
65
73
--network "${TEST_NAME}-network" \
66
74
--entrypoint="" \
67
75
"${IMAGE_TAG}" \
68
- sh -c ' /usr/bin/aws-lambda-rie ${PYTHON_LOCATION} -m awslambdaric app.handler'
76
+ sh -c " /usr/bin/${RIE} ${PYTHON_LOCATION} -m awslambdaric app.handler"
69
77
- sleep 2
70
78
- >
71
79
docker run \
@@ -81,19 +89,20 @@ phases:
81
89
echo "Response: ${actual}"
82
90
if [[ "$actual" != "$expected" ]]; then
83
91
echo "fail! runtime: $RUNTIME - expected output $expected - got $actual"
84
- echo "---------Container Logs: ${TEST_NAME}-app----------"
85
- echo
86
- docker logs "${TEST_NAME}-app"
87
- echo
88
- echo "---------------------------------------------------"
89
- echo "--------Container Logs: ${TEST_NAME}-tester--------"
90
- echo
91
- docker logs "${TEST_NAME}-tester"
92
- echo
93
- echo "---------------------------------------------------"
94
92
exit -1
95
93
fi
96
94
finally :
95
+ - |
96
+ echo "---------Container Logs: ${TEST_NAME}-app----------"
97
+ echo
98
+ docker logs "${TEST_NAME}-app" || true
99
+ echo
100
+ echo "---------------------------------------------------"
101
+ echo "--------Container Logs: ${TEST_NAME}-tester--------"
102
+ echo
103
+ docker logs "${TEST_NAME}-tester" || true
104
+ echo
105
+ echo "---------------------------------------------------"
97
106
- echo "Cleaning up..."
98
107
- docker stop "${TEST_NAME}-app" || true
99
108
- docker rm --force "${TEST_NAME}-app" || true
0 commit comments