MXS-2243 System tests brings VMs by themselves (#193)
maxscale-system-test changed in order to control test environment by itself. Every test checks which machines are running, compare with list of needed machines and start new VMs is they are missing in the running machines list. Tests are executiong MDBCI commands, MDBCI executable should be in the PATH
This commit is contained in:
@ -6,22 +6,14 @@
|
||||
#include <iostream>
|
||||
#include "testconnections.h"
|
||||
|
||||
int main(int argc, char* argv[])
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
|
||||
TestConnections* Test = new TestConnections(argc, argv);
|
||||
TestConnections * Test = new TestConnections(argc, argv);
|
||||
|
||||
// Reset server settings by replacing the config files
|
||||
Test->repl->reset_server_settings();
|
||||
|
||||
std::string src = std::string(test_dir) + "/mdbci/add_core_cnf.sh";
|
||||
Test->maxscales->copy_to_node(0, src.c_str(), Test->maxscales->access_homedir[0]);
|
||||
Test->maxscales->ssh_node_f(0,
|
||||
true,
|
||||
"%s/add_core_cnf.sh %s",
|
||||
Test->maxscales->access_homedir[0],
|
||||
Test->verbose ? "verbose" : "");
|
||||
|
||||
Test->set_timeout(10);
|
||||
|
||||
Test->tprintf("Connecting to Maxscale maxscales->routers[0] with Master/Slave backend\n");
|
||||
@ -30,43 +22,23 @@ int main(int argc, char* argv[])
|
||||
|
||||
Test->add_result(Test->test_maxscale_connections(0, true, true, true), "Can't connect to backend\n");
|
||||
|
||||
if ((Test->galera != NULL) && (Test->galera->N != 0))
|
||||
Test->tprintf("Connecting to Maxscale router with Galera backend\n");
|
||||
MYSQL * g_conn = open_conn(4016, Test->maxscales->IP[0], Test->maxscales->user_name, Test->maxscales->password, Test->ssl);
|
||||
if (g_conn != NULL )
|
||||
{
|
||||
Test->tprintf("Connecting to Maxscale router with Galera backend\n");
|
||||
MYSQL* g_conn = open_conn(4016,
|
||||
Test->maxscales->IP[0],
|
||||
Test->maxscales->user_name,
|
||||
Test->maxscales->password,
|
||||
Test->ssl);
|
||||
if (g_conn != NULL)
|
||||
{
|
||||
Test->tprintf("Testing connection\n");
|
||||
Test->add_result(Test->try_query(g_conn, (char*) "SELECT 1"),
|
||||
(char*) "Error executing query against RWSplit Galera\n");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Test->tprintf("Galera is not in use\n");
|
||||
Test->tprintf("Testing connection\n");
|
||||
Test->add_result(Test->try_query(g_conn, (char *) "SELECT 1"),
|
||||
(char *) "Error executing query against RWSplit Galera\n");
|
||||
}
|
||||
|
||||
Test->tprintf("Closing connections\n");
|
||||
Test->maxscales->close_maxscale_connections(0);
|
||||
Test->check_maxscale_alive(0);
|
||||
|
||||
int exit_code = 0;
|
||||
char* ver = Test->maxscales->ssh_node_output(0, "maxscale --version-full", false, &exit_code);
|
||||
char * ver = Test->maxscales->ssh_node_output(0, "maxscale --version-full", false, &exit_code);
|
||||
Test->tprintf("Maxscale_full_version_start:\n%s\nMaxscale_full_version_end\n", ver);
|
||||
|
||||
if ((Test->global_result == 0) && (Test->use_snapshots))
|
||||
{
|
||||
Test->tprintf("Taking snapshot\n");
|
||||
Test->take_snapshot((char*) "clean");
|
||||
}
|
||||
else
|
||||
{
|
||||
Test->tprintf("Snapshots are not in use\n");
|
||||
}
|
||||
|
||||
int rval = Test->global_result;
|
||||
delete Test;
|
||||
return rval;
|
||||
|
||||
Reference in New Issue
Block a user