Skip to content

Commit 2548e6b

Browse files
committed
refactor: Clean up and update test files
1 parent 2341ac7 commit 2548e6b

11 files changed

+57
-41
lines changed

test/.env

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
VERSION=8.1
1+
VERSION=8.1.0

test/Makefile

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ test:
22
docker compose up --build --force-recreate --always-recreate-deps --renew-anon-volumes -d
33
docker exec test-mysqlrouter-go-test-1 sh -c "bash /go/src/mysqlrouter-go/entrypoint.sh"
44

5-
down:
5+
clean:
66
docker compose down
77
docker compose rm -f
88

9-
local: test down
9+
local: test clean

test/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
docker compose up && docker compose rm -fsv
1+
See [Makefile](Makefile)

test/docker-compose.yml

+41-20
Original file line numberDiff line numberDiff line change
@@ -17,24 +17,27 @@ services:
1717
# why using `latest` tag?
1818
# Oracle does not pin the version of mysql-server of linux/amd64 ^^
1919
mysql-server-1:
20-
env_file:
21-
- mysql-server.env
20+
environment:
21+
MYSQL_ROOT_PASSWORD: "mysql"
22+
MYSQL_ROOT_HOST: "%"
2223
image: container-registry.oracle.com/mysql/community-server:latest
2324
command: [ "mysqld","--server_id=1", "--binlog-transaction-dependency-tracking=WRITESET", "--binlog_checksum=NONE","--gtid_mode=ON","--enforce_gtid_consistency=ON","--log_bin","--log_slave_updates=ON","--master_info_repository=TABLE","--relay_log_info_repository=TABLE","--transaction_write_set_extraction=XXHASH64","--user=mysql","--skip-host-cache","--skip-name-resolve", "--default_authentication_plugin=mysql_native_password" ]
2425
ports:
2526
- "3301:3306"
2627

2728
mysql-server-2:
28-
env_file:
29-
- mysql-server.env
29+
environment:
30+
MYSQL_ROOT_PASSWORD: "mysql"
31+
MYSQL_ROOT_HOST: "%"
3032
image: container-registry.oracle.com/mysql/community-server:latest
3133
command: [ "mysqld","--server_id=2","--binlog-transaction-dependency-tracking=WRITESET", "--binlog_checksum=NONE","--gtid_mode=ON","--enforce_gtid_consistency=ON","--log_bin","--log_slave_updates=ON","--master_info_repository=TABLE","--relay_log_info_repository=TABLE","--transaction_write_set_extraction=XXHASH64","--user=mysql","--skip-host-cache","--skip-name-resolve", "--default_authentication_plugin=mysql_native_password" ]
3234
ports:
3335
- "3302:3306"
3436

3537
mysql-server-3:
36-
env_file:
37-
- mysql-server.env
38+
environment:
39+
MYSQL_ROOT_PASSWORD: "mysql"
40+
MYSQL_ROOT_HOST: "%"
3841
image: container-registry.oracle.com/mysql/community-server:latest
3942
command: [ "mysqld","--server_id=3","--binlog-transaction-dependency-tracking=WRITESET", "--binlog_checksum=NONE","--gtid_mode=ON","--enforce_gtid_consistency=ON","--log_bin","--log_slave_updates=ON","--master_info_repository=TABLE","--relay_log_info_repository=TABLE","--transaction_write_set_extraction=XXHASH64","--user=mysql","--skip-host-cache","--skip-name-resolve", "--default_authentication_plugin=mysql_native_password" ]
4043
ports:
@@ -44,26 +47,38 @@ services:
4447
platform: linux/amd64
4548
build:
4649
context: ./mysql-shell
50+
args:
51+
MYSQL_SHELL_PACKAGER_URL: "https://dev.mysql.com/get/Downloads/MySQL-Shell/mysql-shell-8.1.0-1.el7.x86_64.rpm"
4752
dockerfile: Dockerfile
48-
env_file:
49-
- mysql-shell.env
53+
environment:
54+
MYSQL_USER: "root"
55+
MYSQL_HOST: "mysql-server-1"
56+
MYSQL_PORT: "3306"
57+
MYSQL_PASSWORD: "mysql"
58+
MYSQLSH_SCRIPT: "/setupCluster.js"
5059
image: mysqlshell:${VERSION}
5160
depends_on:
5261
- mysql-server-1
5362
- mysql-server-2
5463
- mysql-server-3
5564

56-
#
57-
# DO NOT CHANGE APP NAME
58-
# WE WILL HAVE TO CHANGE CERTIFICATES.
59-
#
65+
#
66+
# DO NOT CHANGE APP NAME
67+
# WE WILL HAVE TO CHANGE CERTIFICATES.
68+
#
6069
mysql-router-http:
6170
platform: linux/amd64
6271
build:
6372
context: ./mysql-router
73+
args:
74+
MYSQL_YUM_REPO_URL: https://dev.mysql.com/get/mysql80-community-release-el7-8.noarch.rpm
6475
dockerfile: Dockerfile_http
65-
env_file:
66-
- mysql-router.env
76+
environment:
77+
MYSQL_USER: "root"
78+
MYSQL_HOST: "mysql-server-1"
79+
MYSQL_PORT: "3306"
80+
MYSQL_PASSWORD: mysql
81+
MYSQL_INNODB_NUM_MEMBERS: 3
6782
image: mysqlrouter-http:${VERSION}
6883
ports:
6984
- "8080:8080"
@@ -73,17 +88,23 @@ services:
7388
- mysql-server-3
7489
restart: on-failure
7590

76-
#
77-
# DO NOT CHANGE APP NAME
78-
# WE WILL HAVE TO CHANGE CERTIFICATES.
79-
#
91+
#
92+
# DO NOT CHANGE APP NAME
93+
# WE WILL HAVE TO CHANGE CERTIFICATES.
94+
#
8095
mysql-router-https:
8196
platform: linux/amd64
8297
build:
8398
context: ./mysql-router
99+
args:
100+
MYSQL_YUM_REPO_URL: https://dev.mysql.com/get/mysql80-community-release-el7-8.noarch.rpm
84101
dockerfile: Dockerfile_https
85-
env_file:
86-
- mysql-router.env
102+
environment:
103+
MYSQL_USER: "root"
104+
MYSQL_HOST: "mysql-server-1"
105+
MYSQL_PORT: "3306"
106+
MYSQL_PASSWORD: mysql
107+
MYSQL_INNODB_NUM_MEMBERS: 3
87108
image: mysqlrouter-https:${VERSION}
88109
ports:
89110
- "8443:8443"

test/mysql-router.env

-5
This file was deleted.

test/mysql-router/Dockerfile_http

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
FROM oraclelinux:7-slim
22

3-
RUN rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 \
4-
&& yum install -y https://dev.mysql.com/get/mysql80-community-release-el7-8.noarch.rpm \
3+
ARG MYSQL_YUM_REPO_URL
4+
5+
RUN yum install -y $MYSQL_YUM_REPO_URL \
6+
&& yum-config-manager --enable mysql-innovation-community \
57
&& yum install -y mysql-community-client mysql-router-community libpwquality \
68
&& yum clean all
79

test/mysql-router/Dockerfile_https

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
FROM oraclelinux:7-slim
22

3-
RUN rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 \
4-
&& yum install -y https://dev.mysql.com/get/mysql80-community-release-el7-8.noarch.rpm \
3+
ARG MYSQL_YUM_REPO_URL
4+
5+
RUN yum install -y $MYSQL_YUM_REPO_URL \
6+
&& yum-config-manager --enable mysql-innovation-community \
57
&& yum install -y mysql-community-client mysql-router-community libpwquality \
68
&& yum clean all
79

test/mysql-router/run_http.sh

+3
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22
set -e
33

44
if [ "$1" = 'mysqlrouter' ]; then
5+
6+
mysqlrouter --version
7+
58
if [[ -z $MYSQL_HOST || -z $MYSQL_PORT || -z $MYSQL_USER || -z $MYSQL_PASSWORD ]]; then
69
echo "We require all of"
710
echo " MYSQL_HOST"

test/mysql-server.env

-2
This file was deleted.

test/mysql-shell.env

-5
This file was deleted.

test/mysql-shell/Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
FROM oraclelinux:7-slim
22

3-
ARG MYSQL_SHELL_PACKAGER_URL="https://dev.mysql.com/get/Downloads/MySQL-Shell/mysql-shell-8.1.0-1.el7.x86_64.rpm"
3+
ARG MYSQL_SHELL_PACKAGER_URL
44

55
COPY run.sh /run.sh
66
RUN chmod +x /run.sh

0 commit comments

Comments
 (0)