system: Add update-php.ini script.
authorroot <root@template.drsnuggles.stderr.nl>
Thu, 6 Nov 2008 13:55:44 +0000 (14:55 +0100)
committerroot <root@template.drsnuggles.stderr.nl>
Thu, 6 Nov 2008 13:55:44 +0000 (14:55 +0100)
This script merges system php.ini with a per-site php.ini.override, to
compensate for the lack of a proper include statement in php's config
files.

usr/local/bin/update-php.ini [new file with mode: 0755]

diff --git a/usr/local/bin/update-php.ini b/usr/local/bin/update-php.ini
new file mode 100755 (executable)
index 0000000..e801500
--- /dev/null
@@ -0,0 +1,39 @@
+#!/bin/sh
+
+# This script will merge the main php.ini with site specific additions into a site specific php.ini.
+
+BASE=/etc/php5/cgi/php.ini
+SITES=/data/www/*
+CONFIN=conf/php.ini.override
+CONFOUT=conf/php.ini
+
+for SITE in $SITES; do
+       IN=$SITE/$CONFIN
+       OUT=$SITE/$CONFOUT
+       if [ \! -r $IN ]; then
+               continue;
+       fi
+       echo "Updating $OUT"
+
+       cat > $OUT <<EOF
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;
+; This file is autogenerated by $0
+; 
+; Do NOT edit this file directly.
+;
+; You should instead edit $IN and run $0 afterwards.
+;
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+
+;;; Begin included $BASE ;;;
+
+EOF
+       
+       cat $BASE >> $OUT
+       echo -e "\n;;; End included $BASE ;;;\n" >> $OUT
+       echo -e "\n;;; Begin included $IN ;;;\n" >> $OUT
+       cat $IN >> $OUT
+       echo -e "\n;;; End included $IN ;;;\n" >> $OUT
+done