WL#6973: Offer deployment without test db, test scripts or demofiles.

Affects: Server-5.7   —   Status: In-Documentation

It is a requirement that a customer must have a choice to install and
deploy a service without risking that any unnecessary demo-, test- and database
files enters his production.

This worklog exists to outline the work needed to support the installation and
deployment process for the MySQL server but also establish principles for all
other MySQL products.
Scope: RPMs

This task is divided in two parts:

1> Modifying repo code to remove unwanted scripts
2> Modifying release engineering scripts for creating RPMs.

Point 2 requires additional help from Build and Release team.

F-1: Remove mysqlbug script as it is no longer useful.
F-2: Modify scripts used to generate RPMs such that
binaries/scripts/files/libraries related to testing/demo are part of correct RPM.
1>MySQL-server RPM for OEL contains following binaries/libraries/files which
will be moved to MySQL-test RPM

/usr/bin/mysqltest
/usr/share/man/man1/mysqltest.1.gz
/usr/lib64/mysql/plugin/daemon_example.ini
/usr/lib64/mysql/plugin/auth.so
/usr/lib64/mysql/plugin/auth_test_plugin.so
/usr/lib64/mysql/plugin/libdaemon_example.so
/usr/lib64/mysql/plugin/qa_auth_client.so
/usr/lib64/mysql/plugin/qa_auth_interface.so
/usr/lib64/mysql/plugin/qa_auth_server.so
/usr/lib64/mysql/plugin/debug/auth.so
/usr/lib64/mysql/plugin/debug/auth_test_plugin.so
/usr/lib64/mysql/plugin/debug/libdaemon_example.so
/usr/lib64/mysql/plugin/debug/qa_auth_client.so
/usr/lib64/mysql/plugin/debug/qa_auth_interface.so
/usr/lib64/mysql/plugin/debug/qa_auth_server.so 

2> mysqlbug will be removed from repo as it is marked as obsolete from MySQL 5.5
onwards.
http://dev.mysql.com/doc/refman/5.5/en/mysqlbug.html

3> Following file will be removed from MySQL-server RPM

/usr/share/man/man1/mysqlbug.1.gz
1> scripts/mysqlbug.sh : This will be removed

2> scripts/CMakeLists.txt : This will be modified to remove references to mysqlbug

-# Required for mysqlbug until autotools are deprecated, once done remove these
-# and expand default cmake variables
-SET(CC ${CMAKE_C_COMPILER})
-SET(CXX ${CMAKE_CXX_COMPILER})
-SET(SAVE_CC ${CMAKE_C_COMPILER})
-SET(SAVE_CXX ${CMAKE_CXX_COMPILER})
-SET(SAVE_CFLAGS ${CFLAGS})
-SET(SAVE_CXXFLAGS ${CXXFLAGS})
-# XXX no cmake equivalent for this, just make one up
-SET(CONFIGURE_LINE "Built using CMake")
-
-# Also required for mysqlbug, autoconf only supports --version so for now we
-# just explicitly require GNU
-IF(CMAKE_COMPILER_IS_GNUCC)
-  EXECUTE_PROCESS(
-    COMMAND ${CMAKE_C_COMPILER} ${CMAKE_C_COMPILER_ARG1} --version
-    COMMAND sed 1q
-    OUTPUT_VARIABLE CC_VERSION)
-ELSE()
-  SET(CC_VERSION "")
-ENDIF()
-IF(CMAKE_COMPILER_IS_GNUCXX)
-  EXECUTE_PROCESS(
-    COMMAND ${CMAKE_CXX_COMPILER} ${CMAKE_CXX_COMPILER_ARG1} --version
-    COMMAND sed 1q
-    OUTPUT_VARIABLE CXX_VERSION)
-ELSE()
-  SET(CXX_VERSION "")
-ENDIF()
-
-CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/mysqlbug.sh
-  ${CMAKE_CURRENT_BINARY_DIR}/mysqlbug ESCAPE_QUOTES @ONLY)
-INSTALL_SCRIPT(${CMAKE_CURRENT_BINARY_DIR}/mysqlbug
-  DESTINATION ${INSTALL_BINDIR}
-  COMPONENT Server
-  )
-

3> Modify .bzrignore to remove mysqlbug from the list
=== modified file '.bzrignore'
--- .bzrignore 
revid:thirunarayanan.balathandayuth@oracle.com-20140210044812-thxvoiqccdegh6lv
+++ .bzrignore  2014-02-10 06:00:33 +0000
@@ -1853,7 +1853,6 @@
 scripts/mysql_upgrade_shell
 scripts/mysql_zap
 scripts/mysqlaccess
-scripts/mysqlbug
 scripts/mysqld_multi
 scripts/mysqld_safe
 scripts/mysqldumpslow