forked from pool/mariadb
Accepting request 755371 from home:pgajdos
- added rpm test macros: %mysql_testserver_start, %mysql_testserver_cconf, %mysql_testserver_stop First two consuments are python-sortinghat and python-mysqlclient. OBS-URL: https://build.opensuse.org/request/show/755371 OBS-URL: https://build.opensuse.org/package/show/server:database/mariadb?expand=0&rev=241
This commit is contained in:
parent
2933da7de9
commit
a46f46d4ab
99
macros.mariadb-test
Normal file
99
macros.mariadb-test
Normal file
@ -0,0 +1,99 @@
|
||||
%__mysql_test_run_dir /tmp/mysql
|
||||
%__mysql_test_user abuild
|
||||
%__mysql_test_pass abuildpw
|
||||
%__mysql_test_cconf abuild-myclient.cnf
|
||||
%__mysql_test_port 63306
|
||||
|
||||
#
|
||||
# macro: mysql_testserver_start -- start a test mysqld instance
|
||||
#
|
||||
# usage: %mysql_test_start -u <user> -p <password> -t <port>
|
||||
#
|
||||
|
||||
%mysql_testserver_start(u:p:t:) \
|
||||
TEST_RUN_DIR=%{__mysql_test_run_dir} \
|
||||
TEST_USER="%{-u:%{-u*}}" \
|
||||
if [ -z "$TEST_USER" ]; then \
|
||||
TEST_USER='%{__mysql_test_user}' \
|
||||
fi \
|
||||
TEST_PASS="%{-p:%{-p*}}" \
|
||||
if [ -z "$TEST_PASS" ]; then \
|
||||
TEST_PASS='%{__mysql_test_pass}' \
|
||||
fi \
|
||||
TEST_PORT="%{-t:%{-t*}}" \
|
||||
if [ -z "$TEST_PORT" ]; then \
|
||||
TEST_PORT='%{__mysql_test_port}' \
|
||||
fi \
|
||||
\
|
||||
[ -d $TEST_RUN_DIR ] && rm -r $TEST_RUN_DIR \
|
||||
mkdir -p $TEST_RUN_DIR/datadir{,-private} \
|
||||
\
|
||||
cat << EOF > $TEST_RUN_DIR/my.cnf \
|
||||
[client] \
|
||||
socket = $TEST_RUN_DIR/mysql.sock \
|
||||
port = $TEST_PORT \
|
||||
[mysqld] \
|
||||
user = $TEST_USER \
|
||||
log-error = $TEST_RUN_DIR/mysqld.log \
|
||||
secure_file_priv = $TEST_RUN_DIR/datadir-private \
|
||||
datadir = $TEST_RUN_DIR/datadir \
|
||||
server-id = 1 \
|
||||
socket = $TEST_RUN_DIR/mysql.sock \
|
||||
port = $TEST_PORT \
|
||||
sql_mode = '' \
|
||||
EOF\
|
||||
\
|
||||
echo '>>> Initializing databases' \
|
||||
mysql_install_db --defaults-file=$TEST_RUN_DIR/my.cnf \
|
||||
\
|
||||
echo '>>> Invoking mysqld' \
|
||||
/usr/sbin/mysqld --defaults-file=$TEST_RUN_DIR/my.cnf& \
|
||||
sleep 2 \
|
||||
\
|
||||
echo '>>> Creating authentication database' \
|
||||
mysqladmin --defaults-file=$TEST_RUN_DIR/my.cnf --user root password 'roots_secret' \
|
||||
mysqladmin --defaults-file=$TEST_RUN_DIR/my.cnf --user root --password='roots_secret' create testhat \
|
||||
mysql --defaults-file=$TEST_RUN_DIR/my.cnf --user root --password='roots_secret' -e "CREATE USER '$TEST_USER'@'localhost' IDENTIFIED BY '$TEST_PASS'" \
|
||||
mysql --defaults-file=$TEST_RUN_DIR/my.cnf --user root --password='roots_secret' -e "GRANT ALL PRIVILEGES ON * . * TO '$TEST_USER'@'localhost'" \
|
||||
mysql --defaults-file=$TEST_RUN_DIR/my.cnf --user root --password='roots_secret' -e "FLUSH PRIVILEGES" \
|
||||
%nil
|
||||
|
||||
#
|
||||
# macro mysql_testserver_cconf -- generate client access conf
|
||||
#
|
||||
|
||||
%mysql_testserver_cconf(n:t:) \
|
||||
TEST_RUN_DIR=%{__mysql_test_run_dir} \
|
||||
TEST_CCONF="%{-n:%{-n*}}" \
|
||||
if [ -z "$TEST_CCONF" ]; then \
|
||||
TEST_CCONF='%{__mysql_test_cconf}' \
|
||||
fi \
|
||||
TEST_PORT="%{-t:%{-t*}}" \
|
||||
if [ -z "$TEST_PORT" ]; then \
|
||||
TEST_PORT='%{__mysql_test_port}' \
|
||||
fi \
|
||||
cat << EOF > $TEST_CCONF \
|
||||
[client] \
|
||||
user = abuild \
|
||||
password = abuildpw \
|
||||
database = test \
|
||||
socket = $TEST_RUN_DIR/mysql.sock \
|
||||
port = $TEST_PORT \
|
||||
EOF\
|
||||
%nil
|
||||
|
||||
#
|
||||
# macro: mysql_testserver_stop -- start a test mysqld instance
|
||||
#
|
||||
# usage: %mysql_test_stop
|
||||
#
|
||||
|
||||
%mysql_testserver_stop() \
|
||||
TEST_RUN_DIR=%{__mysql_test_run_dir} \
|
||||
echo '>>> Shutting the mysql server down' \
|
||||
cat << EOF > $TEST_RUN_DIR/shutdown.sql \
|
||||
SHUTDOWN; \
|
||||
EOF\
|
||||
mysql --defaults-file=$TEST_RUN_DIR/my.cnf --user root --password='roots_secret' < $TEST_RUN_DIR/shutdown.sql \
|
||||
%nil
|
||||
|
@ -1,3 +1,10 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 5 10:41:56 UTC 2019 - pgajdos@suse.com
|
||||
|
||||
- added rpm test macros: %mysql_testserver_start,
|
||||
%mysql_testserver_cconf, %mysql_testserver_stop
|
||||
First two consuments are python-sortinghat and python-mysqlclient.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Nov 19 17:16:49 UTC 2019 - Kristyna Streitova <kstreitova@suse.com>
|
||||
|
||||
|
17
mariadb.spec
17
mariadb.spec
@ -71,6 +71,7 @@ Source15: mariadb.service
|
||||
Source16: mariadb.target
|
||||
Source17: mysql-systemd-helper
|
||||
Source18: mariadb@.service
|
||||
Source19: macros.mariadb-test
|
||||
Source50: suse_skipped_tests.list
|
||||
Patch1: mariadb-10.2.4-logrotate.patch
|
||||
Patch3: mariadb-10.1.1-mysqld_multi-features.patch
|
||||
@ -214,6 +215,13 @@ Obsoletes: libmysqld-devel < %{version}-%{release}
|
||||
This package contains the development header files and libraries
|
||||
for developing applications that embed the MariaDB.
|
||||
|
||||
%package rpm-macros
|
||||
Summary: MariaDB RPM macros
|
||||
Requires: %{name}
|
||||
|
||||
%description rpm-macros
|
||||
Provides macros usable in rpm spec files.
|
||||
|
||||
%package client
|
||||
Summary: Client for MariaDB
|
||||
Group: Productivity/Databases/Clients
|
||||
@ -651,6 +659,11 @@ rm -rf '%{buildroot}'%{_datadir}/mysql/{solaris,SELinux}
|
||||
# Create the directory specified in 'secure-file-priv' option
|
||||
mkdir -p '%{buildroot}'%{_localstatedir}/lib/mysql-files
|
||||
|
||||
# install rpm macros file
|
||||
mkdir -p %{buildroot}%{_rpmconfigdir}/macros.d
|
||||
install -m 644 %{SOURCE19} %{buildroot}%{_rpmconfigdir}/macros.d
|
||||
|
||||
|
||||
%check
|
||||
cd build
|
||||
|
||||
@ -815,6 +828,10 @@ exit 0
|
||||
%{_datadir}/mysql/systemd/mariadb.service
|
||||
%{_datadir}/mysql/systemd/mariadb@.service
|
||||
|
||||
%files rpm-macros
|
||||
%dir %{_rpmconfigdir}/macros.d
|
||||
%{_rpmconfigdir}/macros.d/macros.mariadb-test
|
||||
|
||||
%files -n libmariadbd%{soname}
|
||||
%{_libdir}/libmariadbd.so.*
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user