Petrb has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/62348


Change subject: inserted toolwatcher to git
......................................................................

inserted toolwatcher to git

Change-Id: I4d7462baf8ca03c5cdcf31feaca2ba60226828a7
---
A usr/local/sbin/toolwatcher
1 file changed, 46 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/labs/toollabs 
refs/changes/48/62348/1

diff --git a/usr/local/sbin/toolwatcher b/usr/local/sbin/toolwatcher
new file mode 100755
index 0000000..81f2574
--- /dev/null
+++ b/usr/local/sbin/toolwatcher
@@ -0,0 +1,46 @@
+#! /bin/bash
+
+export HOME=/root
+while true;do
+       cd /data/project/
+       for tool in $(getent passwd | cut -d : -f 1 | sed -n 
'/^local-/{s///;p}'); do
+               if [ ! -d "/data/project/$tool" ]; then
+                       logger -t toolwatcher "Creating tool $tool"
+
+                       mkdir "$tool"
+                       mkdir "$tool/public_html"
+                       mkdir "$tool/cgi-bin"
+                       chmod -R g+rw,o+r "$tool"
+                       chown -R "local-$tool:local-$tool" "$tool"
+                       find "$tool" -type d | xargs chmod g+sx,o+x
+               fi
+
+               if [ ! -f "$tool/.my.cnf" ]; then
+                       dbname=$(echo "$tool"|tr -d -c '[:alnum:]')
+                       pwd=$(pwgen -nc 16)
+                       /usr/bin/mysql -h tools-db -u root <<-END
+                               create database $dbname;
+                               grant usage on *.* to '$dbname'@'%' identified 
by '$pwd';
+                               grant all privileges on $dbname.* to 
'$dbname'@'%' with grant option;
+                       END
+                       touch tmp.$$
+                       chmod u=r,go= tmp.$$
+                       chown "local-$tool:local-$tool" tmp.$$
+                       cat >>tmp.$$ <<-END
+                               [client]
+                               host=tools-db
+                               user=$dbname
+                               database=$dbname
+                               password='$pwd'
+                       END
+                       mv tmp.$$ "$tool/.my.cnf"
+               fi
+
+               if ! greq -q "^$tool " /data/project/.system/webservers 
>/dev/null; then
+                       echo "$tool tools-webserver-01" 
>>/data/project/.system/webservers
+               fi
+       done
+       cd /tmp
+       sleep 120
+done
+

-- 
To view, visit https://gerrit.wikimedia.org/r/62348
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I4d7462baf8ca03c5cdcf31feaca2ba60226828a7
Gerrit-PatchSet: 1
Gerrit-Project: labs/toollabs
Gerrit-Branch: master
Gerrit-Owner: Petrb <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to