Skip to content

Commit cd470fb

Browse files
committed
Merge branch 'RUST-1529-no-ff' into RUST-1529-aws-sdk-signature
2 parents d41a5b7 + f2a4a62 commit cd470fb

File tree

13 files changed

+686
-592
lines changed

13 files changed

+686
-592
lines changed

.evergreen/compile-only.sh

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,11 @@ source ./.evergreen/env.sh
99
if [ "$RUST_VERSION" != "" ]; then
1010
rustup toolchain install $RUST_VERSION
1111
TOOLCHAIN="+${RUST_VERSION}"
12+
13+
# The MSRV resolver does not properly select an MSRV-compliant version
14+
# for this transient dependency.
15+
16+
1217
CARGO_RESOLVER_INCOMPATIBLE_RUST_VERSIONS=fallback cargo +nightly -Zmsrv-policy generate-lockfile
1318
fi
1419

.evergreen/config.yml

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -257,11 +257,20 @@ buildvariants:
257257
# Limit the test to only schedule every 14 days to reduce external resource usage.
258258
batchtime: 20160
259259

260-
- name: gssapi-auth
261-
display_name: "GSSAPI Authentication"
260+
- name: gssapi-auth-linux
261+
display_name: "GSSAPI Authentication - Linux"
262262
patchable: true
263263
run_on:
264-
- ubuntu2004-small
264+
- ubuntu2204-small
265+
tasks:
266+
- test-gssapi-auth
267+
268+
- name: gssapi-auth-macos
269+
display_name: "GSSAPI Authentication - macOS"
270+
patchable: true
271+
disable: true
272+
run_on:
273+
- macos-14
265274
tasks:
266275
- test-gssapi-auth
267276

@@ -1389,6 +1398,9 @@ functions:
13891398
AWS_AUTH_TYPE: web-identity
13901399

13911400
"run gssapi auth test":
1401+
- command: ec2.assume_role
1402+
params:
1403+
role_arn: ${aws_test_secrets_role}
13921404
- command: subprocess.exec
13931405
type: test
13941406
params:
@@ -1397,6 +1409,10 @@ functions:
13971409
args:
13981410
- .evergreen/run-gssapi-tests.sh
13991411
include_expansions_in_env:
1412+
- AWS_ACCESS_KEY_ID
1413+
- AWS_SECRET_ACCESS_KEY
1414+
- AWS_SESSION_TOKEN
1415+
- DRIVERS_TOOLS
14001416
- PROJECT_DIRECTORY
14011417

14021418
"run x509 tests":

.evergreen/run-gssapi-tests.sh

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,59 @@ cd ${PROJECT_DIRECTORY}
99
source .evergreen/env.sh
1010
source .evergreen/cargo-test.sh
1111

12+
# Source the drivers/atlas_connect secrets, where GSSAPI test values are held
13+
source "${DRIVERS_TOOLS}/.evergreen/secrets_handling/setup-secrets.sh" drivers/atlas_connect
14+
1215
FEATURE_FLAGS+=("gssapi-auth")
1316

1417
set +o errexit
1518

19+
# Create a krb5 config file with relevant
20+
touch krb5.conf
21+
echo "[realms]
22+
$SASL_REALM = {
23+
kdc = $SASL_HOST
24+
admin_server = $SASL_HOST
25+
}
26+
27+
$SASL_REALM_CROSS = {
28+
kdc = $SASL_HOST
29+
admin_server = $SASL_HOST
30+
}
31+
32+
[domain_realm]
33+
.$SASL_DOMAIN = $SASL_REALM
34+
$SASL_DOMAIN = $SASL_REALM
35+
" > krb5.conf
36+
37+
export KRB5_CONFIG=krb5.conf
38+
39+
# Authenticate the user principal in the KDC before running the e2e test
40+
echo "Authenticating $PRINCIPAL"
41+
echo "$SASL_PASS" | kinit -p $PRINCIPAL
42+
klist
43+
44+
# Run end-to-end auth tests for "$PRINCIPAL" user
45+
TEST_OPTIONS+=("--skip with_service_realm_and_host_options")
46+
cargo_test test::auth::gssapi_skip_local
47+
48+
# Unauthenticate
49+
echo "Unauthenticating $PRINCIPAL"
50+
kdestroy
51+
52+
# Authenticate the alternative user principal in the KDC and run other e2e test
53+
echo "Authenticating $PRINCIPAL_CROSS"
54+
echo "$SASL_PASS_CROSS" | kinit -p $PRINCIPAL_CROSS
55+
klist
56+
57+
TEST_OPTIONS=()
58+
cargo_test test::auth::gssapi_skip_local::with_service_realm_and_host_options
59+
60+
# Unauthenticate
61+
echo "Unuthenticating $PRINCIPAL_CROSS"
62+
kdestroy
63+
64+
# Run remaining tests
1665
cargo_test spec::auth
1766
cargo_test uri_options
1867
cargo_test connection_string

0 commit comments

Comments
 (0)