summaryrefslogtreecommitdiff
path: root/jstests/sharding/cleanup_orphaned_auth.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/sharding/cleanup_orphaned_auth.js')
-rw-r--r--jstests/sharding/cleanup_orphaned_auth.js13
1 files changed, 10 insertions, 3 deletions
diff --git a/jstests/sharding/cleanup_orphaned_auth.js b/jstests/sharding/cleanup_orphaned_auth.js
index cb4490ec00b..dd6b384a276 100644
--- a/jstests/sharding/cleanup_orphaned_auth.js
+++ b/jstests/sharding/cleanup_orphaned_auth.js
@@ -26,8 +26,13 @@ function assertUnauthorized(res, msg) {
var st = new ShardingTest({auth: true, other: {keyFile: 'jstests/libs/key1', useHostname: false}});
var shardAdmin = st.shard0.getDB('admin');
-shardAdmin.createUser({user: 'admin', pwd: 'x', roles: ['clusterAdmin', 'userAdminAnyDatabase']});
-shardAdmin.auth('admin', 'x');
+if (!TestData.catalogShard) {
+ // In catalog shard mode, this will create a user on the config server, which we already do
+ // below.
+ shardAdmin.createUser(
+ {user: 'admin', pwd: 'x', roles: ['clusterAdmin', 'userAdminAnyDatabase']});
+ shardAdmin.auth('admin', 'x');
+}
var mongos = st.s0;
var mongosAdmin = mongos.getDB('admin');
@@ -42,7 +47,9 @@ assert.commandWorked(
mongosAdmin.runCommand({shardCollection: coll.getFullName(), key: {_id: 'hashed'}}));
// cleanupOrphaned requires auth as admin user.
-assert.commandWorked(shardAdmin.logout());
+if (!TestData.catalogShard) {
+ assert.commandWorked(shardAdmin.logout());
+}
assertUnauthorized(shardAdmin.runCommand({cleanupOrphaned: 'foo.bar'}));
var fooDB = st.shard0.getDB('foo');