Browse Source

Update "mongo-basics" to run with MONGO_INITDB_ROOT_USERNAME too

Tianon Gravi 7 years ago
parent
commit
f6faf941b2
3 changed files with 25 additions and 2 deletions
  1. 1 0
      test/config.sh
  2. 1 0
      test/tests/mongo-auth-basics/run.sh
  3. 23 2
      test/tests/mongo-basics/run.sh

+ 1 - 0
test/config.sh

@@ -112,6 +112,7 @@ imageTests+=(
 	'
 	[mongo]='
 		mongo-basics
+		mongo-auth-basics
 	'
 	[mono]='
 	'

+ 1 - 0
test/tests/mongo-auth-basics/run.sh

@@ -0,0 +1 @@
+../mongo-basics/run.sh

+ 23 - 2
test/tests/mongo-basics/run.sh

@@ -53,11 +53,32 @@ docker_run_seccomp() {
 }
 
 cname="mongo-container-$RANDOM-$RANDOM"
-cid="$(docker_run_seccomp -d --name "$cname" "$image")"
+mongodRunArgs=( -d --name "$cname" )
+mongoArgs=( --host mongo )
+
+testDir="$(readlink -f "$(dirname "$BASH_SOURCE")")"
+testName="$(basename "$testDir")" # "mongo-basics" or "mongo-auth-basics"
+case "$testName" in
+	*auth*)
+		rootUser="root-$RANDOM"
+		rootPass="root-$RANDOM-$RANDOM-password"
+		mongodRunArgs+=(
+			-e MONGO_INITDB_ROOT_USERNAME="$rootUser"
+			-e MONGO_INITDB_ROOT_PASSWORD="$rootPass"
+		)
+		mongoArgs+=(
+			--username="$rootUser"
+			--password="$rootPass"
+			--authenticationDatabase='admin'
+		)
+		;;
+esac
+
+cid="$(docker_run_seccomp "${mongodRunArgs[@]}" "$image")"
 trap "docker rm -vf $cid > /dev/null" EXIT
 
 mongo() {
-	docker_run_seccomp --rm -i --link "$cname":mongo "$image" mongo --host mongo "$@"
+	docker_run_seccomp --rm -i --link "$cname":mongo "$image" mongo "${mongoArgs[@]}" "$@"
 }
 
 mongo_eval() {