Skip to content

Commit 001d4f1

Browse files
committed
Use setup-secrets and task groups for serverless tests
1 parent b20fd72 commit 001d4f1

File tree

5 files changed

+56
-24
lines changed

5 files changed

+56
-24
lines changed

.evergreen/config.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ pre:
2525
- func: "install composer"
2626
post:
2727
- func: "upload test results"
28-
- func: "delete serverless instance"
2928
- func: "stop load balancer"
3029
- func: "stop mongo-orchestration"
3130
- func: "cleanup"

.evergreen/config/functions.yml

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -177,9 +177,20 @@ functions:
177177
script: |
178178
${PREPARE_SHELL}
179179
180-
SERVERLESS_DRIVERS_GROUP=${SERVERLESS_DRIVERS_GROUP} \
181-
SERVERLESS_API_PUBLIC_KEY=${SERVERLESS_API_PUBLIC_KEY} \
182-
SERVERLESS_API_PRIVATE_KEY=${SERVERLESS_API_PRIVATE_KEY} \
180+
bash ${DRIVERS_TOOLS}/.evergreen/serverless/setup-secrets.sh
181+
bash ${DRIVERS_TOOLS}/.evergreen/serverless/create-instance.sh
182+
- command: expansions.update
183+
params:
184+
file: src/serverless-expansion.yml
185+
186+
"create serverless proxy instance":
187+
- command: shell.exec
188+
params:
189+
working_dir: "src"
190+
script: |
191+
${PREPARE_SHELL}
192+
193+
bash ${DRIVERS_TOOLS}/.evergreen/serverless/setup-secrets.sh serverless_next
183194
bash ${DRIVERS_TOOLS}/.evergreen/serverless/create-instance.sh
184195
- command: expansions.update
185196
params:
@@ -189,14 +200,7 @@ functions:
189200
- command: shell.exec
190201
params:
191202
script: |
192-
# Only run if a serverless instance was started
193-
if [ -n "${SERVERLESS_INSTANCE_NAME}" ]; then
194-
SERVERLESS_INSTANCE_NAME=${SERVERLESS_INSTANCE_NAME} \
195-
SERVERLESS_DRIVERS_GROUP=${SERVERLESS_DRIVERS_GROUP} \
196-
SERVERLESS_API_PUBLIC_KEY=${SERVERLESS_API_PUBLIC_KEY} \
197-
SERVERLESS_API_PRIVATE_KEY=${SERVERLESS_API_PRIVATE_KEY} \
198-
bash ${DRIVERS_TOOLS}/.evergreen/serverless/delete-instance.sh
199-
fi
203+
bash ${DRIVERS_TOOLS}/.evergreen/serverless/delete-instance.sh
200204
201205
"run tests":
202206
- command: shell.exec

.evergreen/config/test-task-groups.yml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,3 +34,41 @@ task_groups:
3434
setup_group_timeout_secs: 1800
3535
tasks:
3636
- test-atlas
37+
38+
- name: test_serverless_task_group
39+
setup_group:
40+
- func: "fetch source"
41+
- func: "prepare resources"
42+
- func: "fix absolute paths"
43+
- func: "install dependencies"
44+
- func: "locate PHP binaries"
45+
- func: "fetch extension"
46+
- func: "install composer"
47+
- func: "create serverless instance"
48+
teardown_group:
49+
- func: "delete serverless instance"
50+
- func: "upload test results"
51+
- func: "cleanup"
52+
setup_group_can_fail_task: true
53+
setup_group_timeout_secs: 1800
54+
tasks:
55+
- test-serverless
56+
57+
- name: test_serverless_proxy_task_group
58+
setup_group:
59+
- func: "fetch source"
60+
- func: "prepare resources"
61+
- func: "fix absolute paths"
62+
- func: "install dependencies"
63+
- func: "locate PHP binaries"
64+
- func: "fetch extension"
65+
- func: "install composer"
66+
- func: "create serverless proxy instance"
67+
teardown_group:
68+
- func: "delete serverless instance"
69+
- func: "upload test results"
70+
- func: "cleanup"
71+
setup_group_can_fail_task: true
72+
setup_group_timeout_secs: 1800
73+
tasks:
74+
- test-serverless-proxy

.evergreen/config/test-tasks.yml

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -11,24 +11,14 @@ tasks:
1111
tags: ["serverless"]
1212
exec_timeout_secs: 10800
1313
commands:
14-
- func: "create serverless instance"
1514
- func: "start kms servers"
1615
- func: "set aws temp creds"
1716
- func: "run serverless tests"
1817

1918
- name: "test-serverless-proxy"
2019
tags: ["serverless"]
21-
exec_timeout_secs: 3600
20+
exec_timeout_secs: 10800
2221
commands:
23-
# When testing with serverless proxies, update the group ID used in this task. The group ID is needed in a "post"
24-
# task that deletes the serverless cluster, so simply changing it for the "create serverless instance" function is
25-
# not sufficient.
26-
- command: expansions.update
27-
params:
28-
updates:
29-
- key: SERVERLESS_DRIVERS_GROUP
30-
value: "${SERVERLESS_PROXY_DRIVERS_GROUP}"
31-
- func: "create serverless instance"
3222
- func: "start kms servers"
3323
- func: "set aws temp creds"
3424
- func: "run serverless tests"

.evergreen/config/test-variants.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@ buildvariants:
2020
- ".replicaset .local !.csfle !.3.6 !.4.0 !.4.2 !.4.4 !.5.0"
2121
- ".sharded .local !.csfle !.3.6 !.4.0 !.4.2 !.4.4 !.5.0"
2222
- ".loadbalanced .local !.csfle !.3.6 !.4.0 !.4.2 !.4.4 !.5.0"
23-
- ".serverless"
23+
- "test_serverless_task_group"
24+
- "test_serverless_proxy_task_group"
2425
- name: test-debian92-php82-local
2526
tags: ["test", "debian", "x64"]
2627
display_name: "Test: Debian 9.2, PHP 8.2"

0 commit comments

Comments
 (0)