Correction : rule_{mysql,tmpfs}_configure : socket unix.
authorJulien Moutinho <julm+burette@autogeree.net>
Sat, 23 Mar 2013 13:50:20 +0000 (14:50 +0100)
committerJulien Moutinho <julm+burette@autogeree.net>
Sat, 23 Mar 2013 15:08:54 +0000 (16:08 +0100)
etc/init.d/tmpfs
etc/mysql/my.cnf
etc/sv/mysql/configure.sh [new file with mode: 0644]
etc/sv/mysql/log/run [new file with mode: 0755]
etc/sv/mysql/run
vm_hosted

index 22bc883..fa749ee 100755 (executable)
@@ -50,6 +50,11 @@ do_start() {
                        sudo install -d -m 770 -o gitweb -g gitweb \
                         /run/tmp/gitweb
                        
                        sudo install -d -m 770 -o gitweb -g gitweb \
                         /run/tmp/gitweb
                        
+                       ! getent passwd mysql >/dev/null ||
+                       sudo install -d -m 1771 -o mysql -g mysql \
+                        /run/mysqld \
+                        /run/mysqld/sock
+                       
                        sudo install -d -m 1771 -o root -g root \
                         /run/spawn-fcgi
                 fi
                        sudo install -d -m 1771 -o root -g root \
                         /run/spawn-fcgi
                 fi
index 60dd256..8fa1de4 100644 (file)
@@ -1,9 +1,9 @@
 [client]
 port           = 3306
 [client]
 port           = 3306
-socket         = /var/run/mysqld/mysqld.sock
+socket         = /run/mysqld/sock/mysql
 [mysqld_safe]
 nice           = 0
 [mysqld_safe]
 nice           = 0
-socket         = /var/run/mysqld/mysqld.sock
+socket         = /run/mysqld/sock/mysql
 [mysqld]
 # chroot = /var/lib/mysql/
 # ssl-ca=/etc/mysql/cacert.pem
 [mysqld]
 # chroot = /var/lib/mysql/
 # ssl-ca=/etc/mysql/cacert.pem
@@ -27,13 +27,13 @@ max_allowed_packet  = 16M
 max_binlog_size         = 100M
 #max_connections        = 100
 myisam-recover         = BACKUP
 max_binlog_size         = 100M
 #max_connections        = 100
 myisam-recover         = BACKUP
-pid-file       = /var/run/mysqld/mysqld.pid
+#pid-file      = /run/mysqld/pid/mysql
 port           = 3306
 query_cache_limit      = 1M
 query_cache_size        = 16M
 #server-id             = 1
 skip-external-locking
 port           = 3306
 query_cache_limit      = 1M
 query_cache_size        = 16M
 #server-id             = 1
 skip-external-locking
-socket         = /var/run/mysqld/mysqld.sock
+#socket                = /run/mysqld/sock/mysql
 #table_cache            = 64
 thread_cache_size       = 8
 #thread_concurrency     = 10
 #table_cache            = 64
 thread_cache_size       = 8
 #thread_concurrency     = 10
diff --git a/etc/sv/mysql/configure.sh b/etc/sv/mysql/configure.sh
new file mode 100644 (file)
index 0000000..729bdef
--- /dev/null
@@ -0,0 +1,9 @@
+rule adduser log-"$sv"\
+ --disabled-login \
+ --disabled-password \
+ --group \
+ --home /home/mysql/log \
+ --shell /bin/false \
+ --system
+sudo install -d -m 770 -o log-"$sv" -g log-"$sv" \
+ /home/mysql/log
diff --git a/etc/sv/mysql/log/run b/etc/sv/mysql/log/run
new file mode 100755 (executable)
index 0000000..96866cb
--- /dev/null
@@ -0,0 +1,7 @@
+#!/bin/sh -eux
+sv=${PWD%/log}
+sv=${sv#/etc/sv/}
+eval "home=~log-$sv"
+cd "$home"
+exec chpst -u log-"$sv":log-"$sv" \
+       svlogd -v -tt "$home"
index 70fdd55..fdaad1a 100755 (executable)
@@ -7,8 +7,7 @@ exec /usr/bin/chpst \
  /usr/sbin/mysqld \
  --basedir=/usr \
  --datadir=$home \
  /usr/sbin/mysqld \
  --basedir=/usr \
  --datadir=$home \
- --pid-file=/var/run/mysqld/mysqld.pid \
  --plugin-dir=/usr/lib/mysql/plugin \
  --port=3306 \
  --plugin-dir=/usr/lib/mysql/plugin \
  --port=3306 \
- --socket=/var/run/mysqld/mysqld.sock \
+ --socket=/run/mysqld/sock/"$sv" \
  --user=$sv
  --user=$sv
index d1f3cc3..21950b0 100755 (executable)
--- a/vm_hosted
+++ b/vm_hosted
@@ -714,10 +714,16 @@ rule_mysql_configure () {
                /etc/mysql/my.cnf
        if test ! -d /home/mysql
         then
                /etc/mysql/my.cnf
        if test ! -d /home/mysql
         then
-               sudo install -d -m 750 -o mysql -g mysql /home/mysql
-               sudo -u mysql mysql_install_db --no-defaults --datadir=/home/mysql
+               sudo install -d -m 750 -o mysql -g mysql \
+                /home/mysql
+               sudo install -d -m 750 -o mysql -g mysql \
+                /home/mysql/data
+               sudo -u mysql mysql_install_db \
+                --no-defaults \
+                --datadir=/home/mysql/data
                sudo usermod --home /home/mysql mysql
         fi
                sudo usermod --home /home/mysql mysql
         fi
+       sudo service tmpfs restart
  }
 rule_network_configure () {
        sudo install -m 644 -o root -g root /dev/stdin /etc/hostname <<-EOF
  }
 rule_network_configure () {
        sudo install -m 644 -o root -g root /dev/stdin /etc/hostname <<-EOF