Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PYTHON-5204 Convert Serverless tests to use new test scripts #2197

Merged
merged 2 commits into from
Mar 13, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 0 additions & 30 deletions .evergreen/config.yml
Original file line number Diff line number Diff line change
@@ -372,29 +372,6 @@ post:
- func: "cleanup"

task_groups:
- name: serverless_task_group
setup_group_can_fail_task: true
setup_group_timeout_secs: 1800 # 30 minutes
setup_group:
- func: "fetch source"
- func: "setup system"
- command: subprocess.exec
params:
binary: bash
env:
VAULT_NAME: ${VAULT_NAME}
args:
- ${DRIVERS_TOOLS}/.evergreen/serverless/create-instance.sh
teardown_task:
- command: subprocess.exec
params:
binary: bash
args:
- ${DRIVERS_TOOLS}/.evergreen/serverless/delete-instance.sh
- func: "upload test results"
tasks:
- ".serverless"

- name: test_aws_lambda_task_group
setup_group:
- func: fetch source
@@ -445,13 +422,6 @@ tasks:
- func: "run server"
- func: "run doctests"

- name: "test-serverless"
tags: ["serverless"]
commands:
- func: "run tests"
vars:
TEST_NAME: serverless

- name: "test-enterprise-auth"
tags: ["enterprise-auth"]
commands:
10 changes: 10 additions & 0 deletions .evergreen/generated_configs/tasks.yml
Original file line number Diff line number Diff line change
@@ -5866,3 +5866,13 @@ tasks:
- noauth
- nossl
- sync_async

# Serverless tests
- name: test-serverless
commands:
- func: run tests
vars:
TEST_NAME: serverless
AUTH: auth
SSL: ssl
tags: [serverless]
10 changes: 2 additions & 8 deletions .evergreen/generated_configs/variants.yml
Original file line number Diff line number Diff line change
@@ -1235,27 +1235,21 @@ buildvariants:
# Serverless tests
- name: serverless-rhel8-python3.9
tasks:
- name: serverless_task_group
- name: .serverless
display_name: Serverless RHEL8 Python3.9
run_on:
- rhel87-small
batchtime: 10080
expansions:
TEST_NAME: serverless
AUTH: auth
SSL: ssl
PYTHON_BINARY: /opt/python/3.9/bin/python3
- name: serverless-rhel8-python3.13
tasks:
- name: serverless_task_group
- name: .serverless
display_name: Serverless RHEL8 Python3.13
run_on:
- rhel87-small
batchtime: 10080
expansions:
TEST_NAME: serverless
AUTH: auth
SSL: ssl
PYTHON_BINARY: /opt/python/3.13/bin/python3

# Stable api tests
12 changes: 9 additions & 3 deletions .evergreen/scripts/generate_config.py
Original file line number Diff line number Diff line change
@@ -645,16 +645,14 @@ def create_disable_test_commands_variants():
def create_serverless_variants():
host = DEFAULT_HOST
batchtime = BATCHTIME_WEEK
expansions = dict(TEST_NAME="serverless", AUTH="auth", SSL="ssl")
tasks = ["serverless_task_group"]
tasks = [".serverless"]
base_name = "Serverless"
return [
create_variant(
tasks,
get_display_name(base_name, host, python=python),
host=host,
python=python,
expansions=expansions,
batchtime=batchtime,
)
for python in MIN_MAX_PYTHON
@@ -951,6 +949,14 @@ def create_ocsp_tasks():
return tasks


def create_serverless_tasks():
vars = dict(TEST_NAME="serverless", AUTH="auth", SSL="ssl")
test_func = FunctionCall(func="run tests", vars=vars)
tags = ["serverless"]
task_name = "test-serverless"
return [EvgTask(name=task_name, tags=tags, commands=[test_func])]


##################
# Generate Config
##################
1 change: 1 addition & 0 deletions .evergreen/scripts/setup_tests.py
Original file line number Diff line number Diff line change
@@ -174,6 +174,7 @@ def handle_test_env() -> None:
DB_USER = config["ADL_USERNAME"]
DB_PASSWORD = config["ADL_PASSWORD"]
elif test_name == "serverless":
run_command(f"bash {DRIVERS_TOOLS}/.evergreen/serverless/setup.sh")
config = read_env(f"{DRIVERS_TOOLS}/.evergreen/serverless/secrets-export.sh")
DB_USER = config["SERVERLESS_ATLAS_USER"]
DB_PASSWORD = config["SERVERLESS_ATLAS_PASSWORD"]
6 changes: 5 additions & 1 deletion .evergreen/scripts/teardown_tests.py
Original file line number Diff line number Diff line change
@@ -32,7 +32,11 @@

# Tear down ocsp if applicable.
elif TEST_NAME == "ocsp":
run_command(f"bash {DRIVERS_TOOLS}/.evergreen/teardown.sh")
run_command(f"bash {DRIVERS_TOOLS}/.evergreen/ocsp/teardown.sh")

# Tear down serverless if applicable.
elif TEST_NAME == "serverless":
run_command(f"bash {DRIVERS_TOOLS}/.evergreen/serverless/teardown.sh")

# Tear down auth_aws if applicable.
# We do not run web-identity hosts on macos, because the hosts lack permissions,
Loading
Oops, something went wrong.