84 lines
2.0 KiB
Bash
Executable File
84 lines
2.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
function create_certs()
|
|
{
|
|
echo "CA cert" > @CMAKE_CURRENT_BINARY_DIR@/ca.pem
|
|
echo "Server Certificate" > @CMAKE_CURRENT_BINARY_DIR@/server-cert.pem
|
|
echo "Server Key" > @CMAKE_CURRENT_BINARY_DIR@/server-key.pem
|
|
}
|
|
|
|
function start_maxscale ()
|
|
{
|
|
local result=$(@CMAKE_INSTALL_PREFIX@/@MAXSCALE_BINDIR@/maxscale -d -f $1 &> $1.log;echo $?)
|
|
if [[ $result == "0" ]]
|
|
then
|
|
echo "Error: $1 exited with status $result!"
|
|
exit 1
|
|
fi
|
|
}
|
|
|
|
# All test cases expect that MaxScale will not start with a bad configuration or missing certificates
|
|
|
|
# No CA defined
|
|
printf "Testing No CA defined"
|
|
start_maxscale @CMAKE_CURRENT_BINARY_DIR@/no_ca.cnf
|
|
echo " OK"
|
|
|
|
# No cert defined
|
|
printf "Testing No cert defined"
|
|
start_maxscale @CMAKE_CURRENT_BINARY_DIR@/no_cert.cnf
|
|
echo " OK"
|
|
|
|
# No key defined
|
|
printf "Testing No key defined"
|
|
start_maxscale @CMAKE_CURRENT_BINARY_DIR@/no_key.cnf
|
|
echo " OK"
|
|
|
|
# Bad SSL value defined
|
|
printf "Testing Bad SSL defined"
|
|
start_maxscale @CMAKE_CURRENT_BINARY_DIR@/bad_ssl.cnf
|
|
echo " OK"
|
|
|
|
# Bad SSL version defined
|
|
printf "Testing Bad SSL version defined"
|
|
start_maxscale @CMAKE_CURRENT_BINARY_DIR@/bad_ssl_version.cnf
|
|
echo " OK"
|
|
|
|
# Bad CA value defined
|
|
printf "Testing Bad CA defined"
|
|
start_maxscale @CMAKE_CURRENT_BINARY_DIR@/bad_ca.cnf
|
|
echo " OK"
|
|
|
|
# Bad server certificate defined
|
|
printf "Testing Bad cert defined"
|
|
start_maxscale @CMAKE_CURRENT_BINARY_DIR@/bad_cert.cnf
|
|
echo " OK"
|
|
|
|
# Bad server key defined
|
|
printf "Testing Bad key defined"
|
|
start_maxscale @CMAKE_CURRENT_BINARY_DIR@/bad_key.cnf
|
|
echo " OK"
|
|
|
|
# No CA file
|
|
printf "Testing No CA file"
|
|
create_certs
|
|
rm @CMAKE_CURRENT_BINARY_DIR@/ca.pem
|
|
start_maxscale @CMAKE_CURRENT_BINARY_DIR@/ok.cnf
|
|
echo " OK"
|
|
|
|
# No server certificate file
|
|
printf "Testing No cert file"
|
|
create_certs
|
|
rm @CMAKE_CURRENT_BINARY_DIR@/server-cert.pem
|
|
start_maxscale @CMAKE_CURRENT_BINARY_DIR@/ok.cnf
|
|
echo " OK"
|
|
|
|
# No server key file
|
|
printf "Testing No key file"
|
|
create_certs
|
|
rm @CMAKE_CURRENT_BINARY_DIR@/server-key.pem
|
|
start_maxscale @CMAKE_CURRENT_BINARY_DIR@/ok.cnf
|
|
echo " OK"
|
|
|
|
exit 0
|