ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/mysql-deployment.spec
Revision: 1.9
Committed: Fri May 30 19:41:59 2008 UTC (16 years, 11 months ago) by valya
Branch: MAIN
CVS Tags: forFrontend-3, forPHEDEX-web-services-20090423, forPHEDEX-web-services-20090406, forPHEDEX313a, forPHEDEX313, forPHEDEX-web-services-20090216, forPHEDEX312, forPHEDEX311, forPHEDEX310, forPHEDEX310pre2, forPHEDEX-web-services-20081205, forPHEDEX310pre1, ofctest, forPHEDEX307, forFrontend-2, forPHEDEX-web-services-20081008, forPHEDEX-web-services-20081007, forPHEDEX-web302_test1, forPHEDEX306, forPHEDEX-datasvc120_test1, forFrontend-1, forPHEDEX305, forPHEDEX-web301, re-deps-20080722, forPHEDEX304, forPHEDEX-datasvc110, forPHEDEX-web300, forPHEDEX-web110, re20080627, WEBTOOLS-APPS_20080624, WEBTOOLS-APPS_20080619_1, WEBTOOLS-APPS_20080619, WEBTOOLS-APPS_20080617, WEBTOOLS-APPS_20080611, WEBTOOLS-APPS_20080609_1, WEBTOOLS-APPS_20080609, SiteDB_030608_1
Changes since 1.8: +27 -19 lines
Log Message:
More to new DBS version 1_1_6_pre2. Work on install/upgrade options of DBS. Use DBS template to create context.xml

File Contents

# Content
1 ### RPM external mysql-deployment 0.0.3
2
3 Source: mysql-deployment.sh
4 Requires: mysql
5 # Let's fake the fact that we have perl (DBI) so that rpm does not complain.
6 Provides: mysql-deployment.sh
7
8 %prep
9 mkdir -p %{i}/bin
10 cat << \EOF > %{i}/bin/mysql-deployment.sh
11 #!/bin/bash
12 set -e
13
14 if [ -z ${VO_CMS_SW_DIR} ]; then
15 echo "+++ Your CMS environment is not setup, missing VO_CMS_SW_DIR environment"
16 exit 1
17 fi
18 if [ -z ${MYSQL_ROOT} ]; then
19 echo "+++ Your CMS MYSQL environment is not setup, MYSQL_ROOT environment"
20 exit 1
21 fi
22 MYSQL_PATH=$MYSQL_ROOT/mysqldb
23 if [ ! -d ${MYSQL_PATH} ]; then
24 echo "+++ Making ${MYSQL_PATH} directory ..."
25 mkdir -p ${MYSQL_PATH}
26 fi
27 MYSQL_PORT=3316
28 MYSQL_SOCK=$MYSQL_PATH/mysql.sock
29 MYSQL_PID=$MYSQL_PATH/mysqld.pid
30 MYSQL_ERR=$MYSQL_PATH/error.log
31
32 pid=`ps -u ${LOGNAME} | grep mysqld_safe | grep -v grep | tail -1 | awk '{print $1}'`
33 if [ ! -z ${pid} ]; then
34 echo "CMS MySQL server is already running ..."
35 else
36 # may use --skip-networking for pure local MySQL
37
38 if [ ! -d $MYSQL_ROOT/mysqldb/mysql ]; then
39 echo "+++ Installing CMS MySQL accounts and DBs ..."
40 $MYSQL_ROOT/bin/mysql_install_db --datadir=$MYSQL_PATH --port=$MYSQL_PORT --socket=$MYSQL_SOCK
41
42 echo "+++ Start up CMS MySQL daemon on port ${MYSQL_PORT} ..."
43 $MYSQL_ROOT/bin/mysqld_safe --datadir=$MYSQL_PATH --port=$MYSQL_PORT \
44 --socket=$MYSQL_SOCK --log-error=$MYSQL_ERR --pid-file=$MYSQL_PID &
45
46 sleep 10
47 # create CMS MySQL root account
48 echo "+++ Creating MySQL default root account ..."
49 echo "+++ Account for localhost"
50 $MYSQL_ROOT/bin/mysqladmin --port=$MYSQL_PORT --socket=$MYSQL_SOCK -u root password "cms"
51 echo "+++ Account for `hostname`"
52 $MYSQL_ROOT/bin/mysqladmin --port=$MYSQL_PORT --socket=$MYSQL_SOCK -u root -h `hostname` password "cms"
53
54 # create CMS MySQL DBS account
55 echo "+++ Creating MySQL default dbs account ..."
56 $MYSQL_ROOT/bin/mysql --socket=$MYSQL_SOCK -uroot -pcms mysql -e "CREATE USER dbs@localhost IDENTIFIED BY 'cmsdbs'"
57 $MYSQL_ROOT/bin/mysql --socket=$MYSQL_SOCK -uroot -pcms mysql -e "UPDATE user set Select_priv='Y',Insert_priv='Y',Update_priv='Y',Delete_priv='Y',Create_priv='Y',Drop_priv='Y',References_priv='Y',Index_priv='Y',Alter_priv='Y',Create_tmp_table_priv='Y',Lock_tables_priv='Y',Execute_priv='Y',Create_view_priv='Y',Show_view_priv='Y',Create_routine_priv='Y',Alter_routine_priv='Y' where User='dbs';"
58 else
59 echo "+++ Start up CMS MySQL daemon on port ${MYSQL_PORT} ..."
60 $MYSQL_ROOT/bin/mysqld_safe --datadir=$MYSQL_PATH --port=$MYSQL_PORT \
61 --socket=$MYSQL_SOCK --log-error=$MYSQL_ERR --pid-file=$MYSQL_PID &
62 sleep 10
63 fi
64 fi
65
66 EOF
67 chmod a+x %{i}/bin/mysql-deployment.sh
68
69 %build
70
71 %install
72 #cp /tmp/mysql-deployment.sh %{i}/bin
73 #cp %{i}/mysql-deployment.sh $RPM_SOURCE_DIR
74
75 %post
76 %{relocateConfig}/bin/mysql-deployment.sh
77