Skip to content

Commit 565d999

Browse files
committed
make group infra the default one
1 parent 909dfd6 commit 565d999

File tree

14 files changed

+510
-140
lines changed

14 files changed

+510
-140
lines changed

test/tap/groups/default-g1/pre-proxysql.bash

100644100755
File mode changed.

test/tap/groups/default-g2/pre-proxysql.bash

100644100755
File mode changed.

test/tap/groups/default-g3/pre-proxysql.bash

100644100755
File mode changed.

test/tap/groups/default-g4/pre-proxysql.bash

100644100755
File mode changed.

test/tap/groups/mysql84-g1/pre-proxysql.bash

100644100755
Lines changed: 51 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,39 +6,76 @@
66

77
[[ $(mysql --skip-ssl-verify-server-cert -h 2>&1) =~ skip-ssl-verify-server-cert ]] || export SSLOPT=--skip-ssl-verify-server-cert
88

9-
INFRA=infra-$(basename "$0" | sed 's/-g[0-9]//' | sed 's/_.*//')
9+
INFRA=infra-$(basename $(dirname "$0") | sed 's/-g[0-9]//' | sed 's/_.*//')
10+
11+
# destroy running infras
12+
$JENKINS_SCRIPTS_PATH/infra-default/docker-compose-destroy.bash
13+
# cleanup
14+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
15+
DELETE FROM mysql_users; \
16+
LOAD MYSQL USERS TO RUNTIME; \
17+
SAVE MYSQL USERS TO DISK; \
18+
DELETE FROM mysql_servers; \
19+
DELETE FROM mysql_replication_hostgroups; \
20+
DELETE FROM mysql_group_replication_hostgroups; \
21+
DELETE FROM mysql_galera_hostgroups; \
22+
LOAD MYSQL SERVERS TO RUNTIME; \
23+
SAVE MYSQL SERVERS TO DISK; \
24+
DELETE FROM mysql_query_rules; \
25+
LOAD MYSQL QUERY RULES TO RUNTIME; \
26+
SAVE MYSQL QUERY RULES TO DISK; \
27+
DELETE FROM pgsql_users; \
28+
LOAD PGSQL USERS TO RUNTIME; \
29+
SAVE PGSQL USERS TO DISK; \
30+
DELETE FROM pgsql_servers; \
31+
LOAD PGSQL SERVERS TO RUNTIME; \
32+
SAVE PGSQL SERVERS TO DISK; \
33+
#DELETE FROM pgsql_query_rules; \
34+
#LOAD PGSQL QUERY RULES TO RUNTIME; \
35+
#SAVE PGSQL QUERY RULES TO DISK; \
36+
" 2>&1 | grep -vP 'mysql: .?Warning'
1037

1138
# load environment for infra
1239
source $JENKINS_SCRIPTS_PATH/${INFRA}/.env
1340

1441
# Start infra
42+
$JENKINS_SCRIPTS_PATH/infra-docker-hoster/docker-compose-init.bash
1543
$JENKINS_SCRIPTS_PATH/${INFRA}/docker-compose-init.bash
1644

17-
# make infra default
18-
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e "
19-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='root'; \
20-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='user'; \
21-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='testuser'; \
22-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='sbtest1'; \
23-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='sbtest2'; \
24-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='sbtest3'; \
25-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='sbtest4'; \
26-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='ssluser'; \
45+
# create default users
46+
for MYUSER in root user testuser sbtest1 sbtest2 sbtest3 sbtest4 ssluser ; do
47+
# FIXME: using 0 as default hostgroup
48+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
49+
INSERT OR IGNORE INTO mysql_users (username,password,active,default_hostgroup,comment) values ('${MYUSER}','${MYUSER}',1,${WHG},'${INFRA}'); \
50+
UPDATE mysql_users SET default_hostgroup=0,comment='${INFRA}' WHERE username='${MYUSER}'; \
51+
" 2>&1 | grep -vP 'mysql: .?Warning'
52+
done
53+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
2754
LOAD MYSQL USERS TO RUNTIME; \
2855
SAVE MYSQL USERS TO DISK; \
2956
" 2>&1 | grep -vP 'mysql: .?Warning'
3057

31-
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e "
58+
# create default hostgroups
59+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
3260
DELETE FROM mysql_servers WHERE hostgroup_id IN (0,1,2,3); \
3361
INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (0,'mysql1.${INFRA}',3306,1,'mysql1.${INFRA}'); \
3462
INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (1,'mysql1.${INFRA}',3306,1,'mysql1.${INFRA}'); \
3563
INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (1,'mysql2.${INFRA}',3306,1,'mysql2.${INFRA}'); \
36-
#INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (2,'mysql2.${INFRA}',3306,1,'mysql2.${INFRA}'); \
3764
INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (1,'mysql3.${INFRA}',3306,1,'mysql3.${INFRA}'); \
38-
#INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (2,'mysql3.${INFRA}',3306,1,'mysql3.${INFRA}'); \
3965
LOAD MYSQL SERVERS TO RUNTIME; \
4066
SAVE MYSQL SERVERS TO DISK; \
4167
" 2>&1 | grep -vP 'mysql: .?Warning'
4268

69+
# create default routing
70+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
71+
DELETE FROM mysql_query_rules WHERE destination_hostgroup IN (0,1,2,3,4); \
72+
INSERT INTO mysql_query_rules (rule_id,active,username,match_digest,destination_hostgroup,apply) VALUES (1,1,'root','^SELECT.*FOR UPDATE',0,1); \
73+
INSERT INTO mysql_query_rules (rule_id,active,username,match_digest,destination_hostgroup,apply) VALUES (2,1,'root','^SELECT',1,1); \
74+
INSERT INTO mysql_query_rules (rule_id,active,username,match_digest,destination_hostgroup,apply) VALUES (4,1,'testuser','^SELECT.*FOR UPDATE',0,1); \
75+
INSERT INTO mysql_query_rules (rule_id,active,username,match_digest,destination_hostgroup,apply) VALUES (5,1,'testuser','^SELECT',1,1); \
76+
LOAD MYSQL QUERY RULES TO RUNTIME; \
77+
SAVE MYSQL QUERY RULES TO DISK; \
78+
" 2>&1 | grep -vP 'mysql: .?Warning'
79+
4380
# wait for infra to stabilize
4481
sleep 10

test/tap/groups/mysql84-gr-g1/pre-proxysql.bash

100644100755
Lines changed: 51 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,39 +6,76 @@
66

77
[[ $(mysql --skip-ssl-verify-server-cert -h 2>&1) =~ skip-ssl-verify-server-cert ]] || export SSLOPT=--skip-ssl-verify-server-cert
88

9-
INFRA=infra-$(basename "$0" | sed 's/-g[0-9]//' | sed 's/_.*//')
9+
INFRA=infra-$(basename $(dirname "$0") | sed 's/-g[0-9]//' | sed 's/_.*//')
10+
11+
# destroy running infras
12+
$JENKINS_SCRIPTS_PATH/infra-default/docker-compose-destroy.bash
13+
# cleanup
14+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
15+
DELETE FROM mysql_users; \
16+
LOAD MYSQL USERS TO RUNTIME; \
17+
SAVE MYSQL USERS TO DISK; \
18+
DELETE FROM mysql_servers; \
19+
DELETE FROM mysql_replication_hostgroups; \
20+
DELETE FROM mysql_group_replication_hostgroups; \
21+
DELETE FROM mysql_galera_hostgroups; \
22+
LOAD MYSQL SERVERS TO RUNTIME; \
23+
SAVE MYSQL SERVERS TO DISK; \
24+
DELETE FROM mysql_query_rules; \
25+
LOAD MYSQL QUERY RULES TO RUNTIME; \
26+
SAVE MYSQL QUERY RULES TO DISK; \
27+
DELETE FROM pgsql_users; \
28+
LOAD PGSQL USERS TO RUNTIME; \
29+
SAVE PGSQL USERS TO DISK; \
30+
DELETE FROM pgsql_servers; \
31+
LOAD PGSQL SERVERS TO RUNTIME; \
32+
SAVE PGSQL SERVERS TO DISK; \
33+
#DELETE FROM pgsql_query_rules; \
34+
#LOAD PGSQL QUERY RULES TO RUNTIME; \
35+
#SAVE PGSQL QUERY RULES TO DISK; \
36+
" 2>&1 | grep -vP 'mysql: .?Warning'
1037

1138
# load environment for infra
1239
source $JENKINS_SCRIPTS_PATH/${INFRA}/.env
1340

1441
# Start infra
42+
$JENKINS_SCRIPTS_PATH/infra-docker-hoster/docker-compose-init.bash
1543
$JENKINS_SCRIPTS_PATH/${INFRA}/docker-compose-init.bash
1644

17-
# make infra default
18-
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e "
19-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='root'; \
20-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='user'; \
21-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='testuser'; \
22-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='sbtest1'; \
23-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='sbtest2'; \
24-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='sbtest3'; \
25-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='sbtest4'; \
26-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='ssluser'; \
45+
# create default users
46+
for MYUSER in root user testuser sbtest1 sbtest2 sbtest3 sbtest4 ssluser ; do
47+
# FIXME: using 0 as default hostgroup
48+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
49+
INSERT OR IGNORE INTO mysql_users (username,password,active,default_hostgroup,comment) values ('${MYUSER}','${MYUSER}',1,${WHG},'${INFRA}'); \
50+
UPDATE mysql_users SET default_hostgroup=0,comment='${INFRA}' WHERE username='${MYUSER}'; \
51+
" 2>&1 | grep -vP 'mysql: .?Warning'
52+
done
53+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
2754
LOAD MYSQL USERS TO RUNTIME; \
2855
SAVE MYSQL USERS TO DISK; \
2956
" 2>&1 | grep -vP 'mysql: .?Warning'
3057

31-
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e "
58+
# create default hostgroups
59+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
3260
DELETE FROM mysql_servers WHERE hostgroup_id IN (0,1,2,3); \
3361
INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (0,'mysql1.${INFRA}',3306,1,'mysql1.${INFRA}'); \
3462
INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (1,'mysql1.${INFRA}',3306,1,'mysql1.${INFRA}'); \
3563
INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (1,'mysql2.${INFRA}',3306,1,'mysql2.${INFRA}'); \
36-
#INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (2,'mysql2.${INFRA}',3306,1,'mysql2.${INFRA}'); \
3764
INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (1,'mysql3.${INFRA}',3306,1,'mysql3.${INFRA}'); \
38-
#INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (2,'mysql3.${INFRA}',3306,1,'mysql3.${INFRA}'); \
3965
LOAD MYSQL SERVERS TO RUNTIME; \
4066
SAVE MYSQL SERVERS TO DISK; \
4167
" 2>&1 | grep -vP 'mysql: .?Warning'
4268

69+
# create default routing
70+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
71+
DELETE FROM mysql_query_rules WHERE destination_hostgroup IN (0,1,2,3,4); \
72+
INSERT INTO mysql_query_rules (rule_id,active,username,match_digest,destination_hostgroup,apply) VALUES (1,1,'root','^SELECT.*FOR UPDATE',0,1); \
73+
INSERT INTO mysql_query_rules (rule_id,active,username,match_digest,destination_hostgroup,apply) VALUES (2,1,'root','^SELECT',1,1); \
74+
INSERT INTO mysql_query_rules (rule_id,active,username,match_digest,destination_hostgroup,apply) VALUES (4,1,'testuser','^SELECT.*FOR UPDATE',0,1); \
75+
INSERT INTO mysql_query_rules (rule_id,active,username,match_digest,destination_hostgroup,apply) VALUES (5,1,'testuser','^SELECT',1,1); \
76+
LOAD MYSQL QUERY RULES TO RUNTIME; \
77+
SAVE MYSQL QUERY RULES TO DISK; \
78+
" 2>&1 | grep -vP 'mysql: .?Warning'
79+
4380
# wait for infra to stabilize
4481
sleep 10

test/tap/groups/mysql90-g1/pre-proxysql.bash

100644100755
Lines changed: 51 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,39 +6,76 @@
66

77
[[ $(mysql --skip-ssl-verify-server-cert -h 2>&1) =~ skip-ssl-verify-server-cert ]] || export SSLOPT=--skip-ssl-verify-server-cert
88

9-
INFRA=infra-$(basename "$0" | sed 's/-g[0-9]//' | sed 's/_.*//')
9+
INFRA=infra-$(basename $(dirname "$0") | sed 's/-g[0-9]//' | sed 's/_.*//')
10+
11+
# destroy running infras
12+
$JENKINS_SCRIPTS_PATH/infra-default/docker-compose-destroy.bash
13+
# cleanup
14+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
15+
DELETE FROM mysql_users; \
16+
LOAD MYSQL USERS TO RUNTIME; \
17+
SAVE MYSQL USERS TO DISK; \
18+
DELETE FROM mysql_servers; \
19+
DELETE FROM mysql_replication_hostgroups; \
20+
DELETE FROM mysql_group_replication_hostgroups; \
21+
DELETE FROM mysql_galera_hostgroups; \
22+
LOAD MYSQL SERVERS TO RUNTIME; \
23+
SAVE MYSQL SERVERS TO DISK; \
24+
DELETE FROM mysql_query_rules; \
25+
LOAD MYSQL QUERY RULES TO RUNTIME; \
26+
SAVE MYSQL QUERY RULES TO DISK; \
27+
DELETE FROM pgsql_users; \
28+
LOAD PGSQL USERS TO RUNTIME; \
29+
SAVE PGSQL USERS TO DISK; \
30+
DELETE FROM pgsql_servers; \
31+
LOAD PGSQL SERVERS TO RUNTIME; \
32+
SAVE PGSQL SERVERS TO DISK; \
33+
#DELETE FROM pgsql_query_rules; \
34+
#LOAD PGSQL QUERY RULES TO RUNTIME; \
35+
#SAVE PGSQL QUERY RULES TO DISK; \
36+
" 2>&1 | grep -vP 'mysql: .?Warning'
1037

1138
# load environment for infra
1239
source $JENKINS_SCRIPTS_PATH/${INFRA}/.env
1340

1441
# Start infra
42+
$JENKINS_SCRIPTS_PATH/infra-docker-hoster/docker-compose-init.bash
1543
$JENKINS_SCRIPTS_PATH/${INFRA}/docker-compose-init.bash
1644

17-
# make infra default
18-
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e "
19-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='root'; \
20-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='user'; \
21-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='testuser'; \
22-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='sbtest1'; \
23-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='sbtest2'; \
24-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='sbtest3'; \
25-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='sbtest4'; \
26-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='ssluser'; \
45+
# create default users
46+
for MYUSER in root user testuser sbtest1 sbtest2 sbtest3 sbtest4 ssluser ; do
47+
# FIXME: using 0 as default hostgroup
48+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
49+
INSERT OR IGNORE INTO mysql_users (username,password,active,default_hostgroup,comment) values ('${MYUSER}','${MYUSER}',1,${WHG},'${INFRA}'); \
50+
UPDATE mysql_users SET default_hostgroup=0,comment='${INFRA}' WHERE username='${MYUSER}'; \
51+
" 2>&1 | grep -vP 'mysql: .?Warning'
52+
done
53+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
2754
LOAD MYSQL USERS TO RUNTIME; \
2855
SAVE MYSQL USERS TO DISK; \
2956
" 2>&1 | grep -vP 'mysql: .?Warning'
3057

31-
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e "
58+
# create default hostgroups
59+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
3260
DELETE FROM mysql_servers WHERE hostgroup_id IN (0,1,2,3); \
3361
INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (0,'mysql1.${INFRA}',3306,1,'mysql1.${INFRA}'); \
3462
INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (1,'mysql1.${INFRA}',3306,1,'mysql1.${INFRA}'); \
3563
INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (1,'mysql2.${INFRA}',3306,1,'mysql2.${INFRA}'); \
36-
#INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (2,'mysql2.${INFRA}',3306,1,'mysql2.${INFRA}'); \
3764
INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (1,'mysql3.${INFRA}',3306,1,'mysql3.${INFRA}'); \
38-
#INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (2,'mysql3.${INFRA}',3306,1,'mysql3.${INFRA}'); \
3965
LOAD MYSQL SERVERS TO RUNTIME; \
4066
SAVE MYSQL SERVERS TO DISK; \
4167
" 2>&1 | grep -vP 'mysql: .?Warning'
4268

69+
# create default routing
70+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
71+
DELETE FROM mysql_query_rules WHERE destination_hostgroup IN (0,1,2,3,4); \
72+
INSERT INTO mysql_query_rules (rule_id,active,username,match_digest,destination_hostgroup,apply) VALUES (1,1,'root','^SELECT.*FOR UPDATE',0,1); \
73+
INSERT INTO mysql_query_rules (rule_id,active,username,match_digest,destination_hostgroup,apply) VALUES (2,1,'root','^SELECT',1,1); \
74+
INSERT INTO mysql_query_rules (rule_id,active,username,match_digest,destination_hostgroup,apply) VALUES (4,1,'testuser','^SELECT.*FOR UPDATE',0,1); \
75+
INSERT INTO mysql_query_rules (rule_id,active,username,match_digest,destination_hostgroup,apply) VALUES (5,1,'testuser','^SELECT',1,1); \
76+
LOAD MYSQL QUERY RULES TO RUNTIME; \
77+
SAVE MYSQL QUERY RULES TO DISK; \
78+
" 2>&1 | grep -vP 'mysql: .?Warning'
79+
4380
# wait for infra to stabilize
4481
sleep 10

test/tap/groups/mysql90-gr-g1/pre-proxysql.bash

100644100755
Lines changed: 51 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,39 +6,76 @@
66

77
[[ $(mysql --skip-ssl-verify-server-cert -h 2>&1) =~ skip-ssl-verify-server-cert ]] || export SSLOPT=--skip-ssl-verify-server-cert
88

9-
INFRA=infra-$(basename "$0" | sed 's/-g[0-9]//' | sed 's/_.*//')
9+
INFRA=infra-$(basename $(dirname "$0") | sed 's/-g[0-9]//' | sed 's/_.*//')
10+
11+
# destroy running infras
12+
$JENKINS_SCRIPTS_PATH/infra-default/docker-compose-destroy.bash
13+
# cleanup
14+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
15+
DELETE FROM mysql_users; \
16+
LOAD MYSQL USERS TO RUNTIME; \
17+
SAVE MYSQL USERS TO DISK; \
18+
DELETE FROM mysql_servers; \
19+
DELETE FROM mysql_replication_hostgroups; \
20+
DELETE FROM mysql_group_replication_hostgroups; \
21+
DELETE FROM mysql_galera_hostgroups; \
22+
LOAD MYSQL SERVERS TO RUNTIME; \
23+
SAVE MYSQL SERVERS TO DISK; \
24+
DELETE FROM mysql_query_rules; \
25+
LOAD MYSQL QUERY RULES TO RUNTIME; \
26+
SAVE MYSQL QUERY RULES TO DISK; \
27+
DELETE FROM pgsql_users; \
28+
LOAD PGSQL USERS TO RUNTIME; \
29+
SAVE PGSQL USERS TO DISK; \
30+
DELETE FROM pgsql_servers; \
31+
LOAD PGSQL SERVERS TO RUNTIME; \
32+
SAVE PGSQL SERVERS TO DISK; \
33+
#DELETE FROM pgsql_query_rules; \
34+
#LOAD PGSQL QUERY RULES TO RUNTIME; \
35+
#SAVE PGSQL QUERY RULES TO DISK; \
36+
" 2>&1 | grep -vP 'mysql: .?Warning'
1037

1138
# load environment for infra
1239
source $JENKINS_SCRIPTS_PATH/${INFRA}/.env
1340

1441
# Start infra
42+
$JENKINS_SCRIPTS_PATH/infra-docker-hoster/docker-compose-init.bash
1543
$JENKINS_SCRIPTS_PATH/${INFRA}/docker-compose-init.bash
1644

17-
# make infra default
18-
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e "
19-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='root'; \
20-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='user'; \
21-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='testuser'; \
22-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='sbtest1'; \
23-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='sbtest2'; \
24-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='sbtest3'; \
25-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='sbtest4'; \
26-
UPDATE mysql_users SET default_hostgroup=${WHG},comment='${INFRA}' WHERE username='ssluser'; \
45+
# create default users
46+
for MYUSER in root user testuser sbtest1 sbtest2 sbtest3 sbtest4 ssluser ; do
47+
# FIXME: using 0 as default hostgroup
48+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
49+
INSERT OR IGNORE INTO mysql_users (username,password,active,default_hostgroup,comment) values ('${MYUSER}','${MYUSER}',1,${WHG},'${INFRA}'); \
50+
UPDATE mysql_users SET default_hostgroup=0,comment='${INFRA}' WHERE username='${MYUSER}'; \
51+
" 2>&1 | grep -vP 'mysql: .?Warning'
52+
done
53+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
2754
LOAD MYSQL USERS TO RUNTIME; \
2855
SAVE MYSQL USERS TO DISK; \
2956
" 2>&1 | grep -vP 'mysql: .?Warning'
3057

31-
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e "
58+
# create default hostgroups
59+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
3260
DELETE FROM mysql_servers WHERE hostgroup_id IN (0,1,2,3); \
3361
INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (0,'mysql1.${INFRA}',3306,1,'mysql1.${INFRA}'); \
3462
INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (1,'mysql1.${INFRA}',3306,1,'mysql1.${INFRA}'); \
3563
INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (1,'mysql2.${INFRA}',3306,1,'mysql2.${INFRA}'); \
36-
#INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (2,'mysql2.${INFRA}',3306,1,'mysql2.${INFRA}'); \
3764
INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (1,'mysql3.${INFRA}',3306,1,'mysql3.${INFRA}'); \
38-
#INSERT INTO mysql_servers (hostgroup_id,hostname,port,max_replication_lag,comment) VALUES (2,'mysql3.${INFRA}',3306,1,'mysql3.${INFRA}'); \
3965
LOAD MYSQL SERVERS TO RUNTIME; \
4066
SAVE MYSQL SERVERS TO DISK; \
4167
" 2>&1 | grep -vP 'mysql: .?Warning'
4268

69+
# create default routing
70+
mysql ${SSLOPT} -h127.0.0.1 -P6032 -uadmin -padmin -e " \
71+
DELETE FROM mysql_query_rules WHERE destination_hostgroup IN (0,1,2,3,4); \
72+
INSERT INTO mysql_query_rules (rule_id,active,username,match_digest,destination_hostgroup,apply) VALUES (1,1,'root','^SELECT.*FOR UPDATE',0,1); \
73+
INSERT INTO mysql_query_rules (rule_id,active,username,match_digest,destination_hostgroup,apply) VALUES (2,1,'root','^SELECT',1,1); \
74+
INSERT INTO mysql_query_rules (rule_id,active,username,match_digest,destination_hostgroup,apply) VALUES (4,1,'testuser','^SELECT.*FOR UPDATE',0,1); \
75+
INSERT INTO mysql_query_rules (rule_id,active,username,match_digest,destination_hostgroup,apply) VALUES (5,1,'testuser','^SELECT',1,1); \
76+
LOAD MYSQL QUERY RULES TO RUNTIME; \
77+
SAVE MYSQL QUERY RULES TO DISK; \
78+
" 2>&1 | grep -vP 'mysql: .?Warning'
79+
4380
# wait for infra to stabilize
4481
sleep 10

0 commit comments

Comments
 (0)