Uncrustify maxscale
See script directory for method. The script to run in the top level MaxScale directory is called maxscale-uncrustify.sh, which uses another script, list-src, from the same directory (so you need to set your PATH). The uncrustify version was 0.66.
This commit is contained in:
@ -1,23 +1,31 @@
|
||||
/**
|
||||
* @file script.cpp - test for running external script feature (MXS-121)
|
||||
* - setup Maxscale to execute script on folowing events:
|
||||
* - for MariaDB monitor: master_down,master_up, slave_up, server_down ,server_up,lost_master,lost_slave,new_master,new_slave
|
||||
* - for Galera monitor: events=master_down,master_up, slave_up, server_down ,server_up,lost_master,lost_slave,new_master,new_slave,server_down,server_up,synced_down,synced_up
|
||||
* - for MariaDB monitor: master_down,master_up, slave_up, server_down
|
||||
* ,server_up,lost_master,lost_slave,new_master,new_slave
|
||||
* - for Galera monitor: events=master_down,master_up, slave_up, server_down
|
||||
* ,server_up,lost_master,lost_slave,new_master,new_slave,server_down,server_up,synced_down,synced_up
|
||||
* - for Galera monitor set also 'disable_master_role_setting=true'
|
||||
* - block master, unblock master, block node1, unblock node1
|
||||
* - expect following as a script output:
|
||||
* @verbatim
|
||||
--event=master_down --initiator=server1_IP:port --nodelist=server1_IP:port,server2_IP:port,server3_IP:port,server4_IP:port
|
||||
--event=master_up --initiator=server1_IP:port --nodelist=server1_IP:port,server2_IP:port,server3_IP:port,server4_IP:port
|
||||
--event=slave_up --initiator=server2_IP:port --nodelist=server1_IP:port,server2_IP:port,server3_IP:port,server4_IP:port
|
||||
@endverbatim
|
||||
* --event=master_down --initiator=server1_IP:port
|
||||
*--nodelist=server1_IP:port,server2_IP:port,server3_IP:port,server4_IP:port
|
||||
* --event=master_up --initiator=server1_IP:port
|
||||
*--nodelist=server1_IP:port,server2_IP:port,server3_IP:port,server4_IP:port
|
||||
* --event=slave_up --initiator=server2_IP:port
|
||||
*--nodelist=server1_IP:port,server2_IP:port,server3_IP:port,server4_IP:port
|
||||
* @endverbatim
|
||||
* - repeat test for Galera monitor: block node0, unblock node0, block node1, unblock node1
|
||||
* - expect following as a script output:
|
||||
* @verbatim
|
||||
--event=synced_down --initiator=gserver1_IP:port --nodelist=gserver1_IP:port,gserver2_IP:port,gserver3_IP:port,gserver4_IP:port
|
||||
--event=synced_down --initiator=gserver2_IP:port --nodelist=gserver1_IP:port,gserver2_IP:port,gserver3_IP:port,gserver4_IP:port
|
||||
--event=synced_up --initiator=gserver2_IP:port --nodelist=gserver1_IP:port,gserver2_IP:port,gserver3_IP:port,gserver4_IP:port
|
||||
@endverbatim
|
||||
* --event=synced_down --initiator=gserver1_IP:port
|
||||
*--nodelist=gserver1_IP:port,gserver2_IP:port,gserver3_IP:port,gserver4_IP:port
|
||||
* --event=synced_down --initiator=gserver2_IP:port
|
||||
*--nodelist=gserver1_IP:port,gserver2_IP:port,gserver3_IP:port,gserver4_IP:port
|
||||
* --event=synced_up --initiator=gserver2_IP:port
|
||||
*--nodelist=gserver1_IP:port,gserver2_IP:port,gserver3_IP:port,gserver4_IP:port
|
||||
* @endverbatim
|
||||
* - make script non-executable
|
||||
* - block and unblock node1
|
||||
* - check error log for 'The file cannot be executed: /home/$maxscales->access_user[0]/script.sh' error
|
||||
@ -28,10 +36,12 @@
|
||||
#include <iostream>
|
||||
#include "testconnections.h"
|
||||
|
||||
void test_script_monitor(TestConnections* Test, Mariadb_nodes* nodes, char * expected_filename)
|
||||
void test_script_monitor(TestConnections* Test, Mariadb_nodes* nodes, char* expected_filename)
|
||||
{
|
||||
Test->set_timeout(200);
|
||||
Test->maxscales->ssh_node_f(0, true, "cd %s;"
|
||||
Test->maxscales->ssh_node_f(0,
|
||||
true,
|
||||
"cd %s;"
|
||||
"truncate -s 0 script_output;"
|
||||
"chown maxscale:maxscale script_output",
|
||||
Test->maxscales->access_homedir[0]);
|
||||
@ -63,7 +73,10 @@ void test_script_monitor(TestConnections* Test, Mariadb_nodes* nodes, char * exp
|
||||
|
||||
Test->tprintf("Comparing results");
|
||||
|
||||
if (Test->maxscales->ssh_node_f(0, false, "diff %s/script_output %s", Test->maxscales->access_homedir[0],
|
||||
if (Test->maxscales->ssh_node_f(0,
|
||||
false,
|
||||
"diff %s/script_output %s",
|
||||
Test->maxscales->access_homedir[0],
|
||||
expected_filename) != 0)
|
||||
{
|
||||
Test->maxscales->ssh_node_f(0, true, "cat %s/script_output", Test->maxscales->access_homedir[0]);
|
||||
@ -75,76 +88,122 @@ void test_script_monitor(TestConnections* Test, Mariadb_nodes* nodes, char * exp
|
||||
}
|
||||
}
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
int main(int argc, char* argv[])
|
||||
{
|
||||
TestConnections * Test = new TestConnections(argc, argv);
|
||||
TestConnections* Test = new TestConnections(argc, argv);
|
||||
Test->set_timeout(100);
|
||||
|
||||
Test->tprintf("Creating script on Maxscale machine");
|
||||
|
||||
|
||||
Test->maxscales->ssh_node_f(0, false,
|
||||
Test->maxscales->ssh_node_f(0,
|
||||
false,
|
||||
"%s rm -rf %s/script; mkdir %s/script; echo \"echo \\$* >> %s/script_output\" > %s/script/script.sh; \
|
||||
chmod a+x %s/script/script.sh; chmod a+x %s; %s chown maxscale:maxscale %s/script -R",
|
||||
Test->maxscales->access_sudo[0], Test->maxscales->access_homedir[0],
|
||||
Test->maxscales->access_homedir[0], Test->maxscales->access_homedir[0],
|
||||
Test->maxscales->access_homedir[0], Test->maxscales->access_homedir[0], Test->maxscales->access_homedir[0],
|
||||
Test->maxscales->access_sudo[0],
|
||||
Test->maxscales->access_homedir[0],
|
||||
Test->maxscales->access_homedir[0],
|
||||
Test->maxscales->access_homedir[0],
|
||||
Test->maxscales->access_homedir[0],
|
||||
Test->maxscales->access_homedir[0],
|
||||
Test->maxscales->access_homedir[0],
|
||||
Test->maxscales->access_sudo[0],
|
||||
Test->maxscales->access_homedir[0]);
|
||||
|
||||
Test->maxscales->restart_maxscale(0);
|
||||
|
||||
FILE * f;
|
||||
FILE* f;
|
||||
f = fopen("script_output_expected", "w");
|
||||
fprintf(f, "--event=master_down --initiator=[%s]:%d --nodelist=[%s]:%d,[%s]:%d,[%s]:%d\n",
|
||||
Test->repl->IP_private[0], Test->repl->port[0],
|
||||
Test->repl->IP_private[1], Test->repl->port[1],
|
||||
Test->repl->IP_private[2], Test->repl->port[2],
|
||||
Test->repl->IP_private[3], Test->repl->port[3]);
|
||||
fprintf(f, "--event=master_up --initiator=[%s]:%d --nodelist=[%s]:%d,[%s]:%d,[%s]:%d,[%s]:%d\n",
|
||||
Test->repl->IP_private[0], Test->repl->port[0],
|
||||
Test->repl->IP_private[0], Test->repl->port[0],
|
||||
Test->repl->IP_private[1], Test->repl->port[1],
|
||||
Test->repl->IP_private[2], Test->repl->port[2],
|
||||
Test->repl->IP_private[3], Test->repl->port[3]);
|
||||
fprintf(f, "--event=slave_up --initiator=[%s]:%d --nodelist=[%s]:%d,[%s]:%d,[%s]:%d,[%s]:%d\n",
|
||||
Test->repl->IP_private[1], Test->repl->port[1],
|
||||
Test->repl->IP_private[0], Test->repl->port[0],
|
||||
Test->repl->IP_private[1], Test->repl->port[1],
|
||||
Test->repl->IP_private[2], Test->repl->port[2],
|
||||
Test->repl->IP_private[3], Test->repl->port[3]);
|
||||
fprintf(f,
|
||||
"--event=master_down --initiator=[%s]:%d --nodelist=[%s]:%d,[%s]:%d,[%s]:%d\n",
|
||||
Test->repl->IP_private[0],
|
||||
Test->repl->port[0],
|
||||
Test->repl->IP_private[1],
|
||||
Test->repl->port[1],
|
||||
Test->repl->IP_private[2],
|
||||
Test->repl->port[2],
|
||||
Test->repl->IP_private[3],
|
||||
Test->repl->port[3]);
|
||||
fprintf(f,
|
||||
"--event=master_up --initiator=[%s]:%d --nodelist=[%s]:%d,[%s]:%d,[%s]:%d,[%s]:%d\n",
|
||||
Test->repl->IP_private[0],
|
||||
Test->repl->port[0],
|
||||
Test->repl->IP_private[0],
|
||||
Test->repl->port[0],
|
||||
Test->repl->IP_private[1],
|
||||
Test->repl->port[1],
|
||||
Test->repl->IP_private[2],
|
||||
Test->repl->port[2],
|
||||
Test->repl->IP_private[3],
|
||||
Test->repl->port[3]);
|
||||
fprintf(f,
|
||||
"--event=slave_up --initiator=[%s]:%d --nodelist=[%s]:%d,[%s]:%d,[%s]:%d,[%s]:%d\n",
|
||||
Test->repl->IP_private[1],
|
||||
Test->repl->port[1],
|
||||
Test->repl->IP_private[0],
|
||||
Test->repl->port[0],
|
||||
Test->repl->IP_private[1],
|
||||
Test->repl->port[1],
|
||||
Test->repl->IP_private[2],
|
||||
Test->repl->port[2],
|
||||
Test->repl->IP_private[3],
|
||||
Test->repl->port[3]);
|
||||
fclose(f);
|
||||
|
||||
f = fopen("script_output_expected_galera", "w");
|
||||
fprintf(f, "--event=synced_down --initiator=[%s]:%d --nodelist=[%s]:%d,[%s]:%d,[%s]:%d\n",
|
||||
Test->galera->IP_private[0], Test->galera->port[0],
|
||||
Test->galera->IP_private[1], Test->galera->port[1],
|
||||
Test->galera->IP_private[2], Test->galera->port[2],
|
||||
Test->galera->IP_private[3], Test->galera->port[3]);
|
||||
fprintf(f, "--event=synced_up --initiator=[%s]:%d --nodelist=[%s]:%d,[%s]:%d,[%s]:%d,[%s]:%d\n",
|
||||
Test->galera->IP_private[0], Test->galera->port[0],
|
||||
Test->galera->IP_private[0], Test->galera->port[0],
|
||||
Test->galera->IP_private[1], Test->galera->port[1],
|
||||
Test->galera->IP_private[2], Test->galera->port[2],
|
||||
Test->galera->IP_private[3], Test->galera->port[3]);
|
||||
fprintf(f, "--event=synced_down --initiator=[%s]:%d --nodelist=[%s]:%d,[%s]:%d,[%s]:%d\n",
|
||||
Test->galera->IP_private[1], Test->galera->port[1],
|
||||
Test->galera->IP_private[0], Test->galera->port[0],
|
||||
Test->galera->IP_private[2], Test->galera->port[2],
|
||||
Test->galera->IP_private[3], Test->galera->port[3]);
|
||||
fprintf(f, "--event=synced_up --initiator=[%s]:%d --nodelist=[%s]:%d,[%s]:%d,[%s]:%d,[%s]:%d\n",
|
||||
Test->galera->IP_private[1], Test->galera->port[1],
|
||||
Test->galera->IP_private[0], Test->galera->port[0],
|
||||
Test->galera->IP_private[1], Test->galera->port[1],
|
||||
Test->galera->IP_private[2], Test->galera->port[2],
|
||||
Test->galera->IP_private[3], Test->galera->port[3]);
|
||||
fprintf(f,
|
||||
"--event=synced_down --initiator=[%s]:%d --nodelist=[%s]:%d,[%s]:%d,[%s]:%d\n",
|
||||
Test->galera->IP_private[0],
|
||||
Test->galera->port[0],
|
||||
Test->galera->IP_private[1],
|
||||
Test->galera->port[1],
|
||||
Test->galera->IP_private[2],
|
||||
Test->galera->port[2],
|
||||
Test->galera->IP_private[3],
|
||||
Test->galera->port[3]);
|
||||
fprintf(f,
|
||||
"--event=synced_up --initiator=[%s]:%d --nodelist=[%s]:%d,[%s]:%d,[%s]:%d,[%s]:%d\n",
|
||||
Test->galera->IP_private[0],
|
||||
Test->galera->port[0],
|
||||
Test->galera->IP_private[0],
|
||||
Test->galera->port[0],
|
||||
Test->galera->IP_private[1],
|
||||
Test->galera->port[1],
|
||||
Test->galera->IP_private[2],
|
||||
Test->galera->port[2],
|
||||
Test->galera->IP_private[3],
|
||||
Test->galera->port[3]);
|
||||
fprintf(f,
|
||||
"--event=synced_down --initiator=[%s]:%d --nodelist=[%s]:%d,[%s]:%d,[%s]:%d\n",
|
||||
Test->galera->IP_private[1],
|
||||
Test->galera->port[1],
|
||||
Test->galera->IP_private[0],
|
||||
Test->galera->port[0],
|
||||
Test->galera->IP_private[2],
|
||||
Test->galera->port[2],
|
||||
Test->galera->IP_private[3],
|
||||
Test->galera->port[3]);
|
||||
fprintf(f,
|
||||
"--event=synced_up --initiator=[%s]:%d --nodelist=[%s]:%d,[%s]:%d,[%s]:%d,[%s]:%d\n",
|
||||
Test->galera->IP_private[1],
|
||||
Test->galera->port[1],
|
||||
Test->galera->IP_private[0],
|
||||
Test->galera->port[0],
|
||||
Test->galera->IP_private[1],
|
||||
Test->galera->port[1],
|
||||
Test->galera->IP_private[2],
|
||||
Test->galera->port[2],
|
||||
Test->galera->IP_private[3],
|
||||
Test->galera->port[3]);
|
||||
fclose(f);
|
||||
|
||||
Test->tprintf("Copying expected script output to Maxscale machine");
|
||||
char str[2048];
|
||||
sprintf(str,
|
||||
"scp -i %s -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o LogLevel=quiet script_output_expected* %s@%s:%s/",
|
||||
Test->maxscales->sshkey[0], Test->maxscales->access_user[0], Test->maxscales->IP[0],
|
||||
Test->maxscales->sshkey[0],
|
||||
Test->maxscales->access_user[0],
|
||||
Test->maxscales->IP[0],
|
||||
Test->maxscales->access_homedir[0]);
|
||||
system(str);
|
||||
|
||||
@ -172,7 +231,7 @@ int main(int argc, char *argv[])
|
||||
sleep(15);
|
||||
|
||||
Test->tprintf("Cheching Maxscale logs");
|
||||
Test->check_log_err(0, (char *) "Cannot execute file" , true);
|
||||
Test->check_log_err(0, (char*) "Cannot execute file", true);
|
||||
|
||||
Test->tprintf("checking if Maxscale is alive");
|
||||
Test->check_maxscale_alive(0);
|
||||
|
||||
Reference in New Issue
Block a user