mirror of
				https://github.com/iiab/iiab.git
				synced 2025-03-09 15:40:17 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			97 lines
		
	
	
	
		
			3.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			97 lines
		
	
	
	
		
			3.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
#!/bin/bash
 | 
						|
#
 | 
						|
# moodle        This shell script is modified from sysVinit init.d moodle 
 | 
						|
#		--checks for moodle upgrade flag and enables the cron 
 | 
						|
#		job for Moodle
 | 
						|
#
 | 
						|
# Author:       Ignacio Vazquez-Abrams <ivazquez@ivazquez.net>
 | 
						|
# Adapted from the yum initscript by Seth Vidal
 | 
						|
# Adapted for systemd by George Hunt <georgejhunt@gmail.com>
 | 
						|
#
 | 
						|
# description:  Enable the Moodle cron job
 | 
						|
#
 | 
						|
# source function library
 | 
						|
. /etc/rc.d/init.d/functions
 | 
						|
 | 
						|
# both moodle cron and config.php check
 | 
						|
# for this file -
 | 
						|
lockfile=/var/lock/subsys/moodle
 | 
						|
 | 
						|
RETVAL=0
 | 
						|
 | 
						|
	
 | 
						|
start() {
 | 
						|
        if [ -e /etc/moodle/needsupgrade ]; then
 | 
						|
 | 
						|
                echo "Moodle installation or upgrade required..."
 | 
						|
		pushd /var/www/moodle/web
 | 
						|
 | 
						|
		echo "["`date`"]" Start install / upgrade >> /var/log/moodle-instupg.log 
 | 
						|
 | 
						|
		# Correct a bungled 'version' variable in mdl_config. If version matches local_version, and
 | 
						|
		# is one of the known-to-be-bungled local_version/version pairs, fix it to the last-known-good
 | 
						|
		# value.
 | 
						|
		echo "Correcting version/local_version mangling - will error out on fresh DBs" >> /var/log/moodle-instupg.log 
 | 
						|
		(su -c "psql -c \"UPDATE mdl_config 
 | 
						|
                                 SET value='2007101526'
 | 
						|
                                 WHERE id=(SELECT v.id 
 | 
						|
                                           FROM mdl_config v 
 | 
						|
                                            JOIN mdl_config lv 
 | 
						|
                                                 ON (v.name='version' AND lv.name='local_version'
 | 
						|
                                                     AND v.value=lv.value)
 | 
						|
                                           WHERE lv.value IN ('2009030301', '2009042801',
 | 
						|
                                                              '2009051800', '2009052500'));\" moodle-xs " postgres 2>&1 ) >> /var/log/moodle-instupg.log 
 | 
						|
 | 
						|
 | 
						|
		# Before install/upgrade, enable the admin user
 | 
						|
		# (will DTRT for upgrades, fail silently in fresh installs)
 | 
						|
		( runuser -s /bin/bash -c "/usr/bin/php /var/www/moodle/web/local/scripts/adminuser-enable.php" apache 2>&1 ) >> /var/log/moodle-instupg.log 
 | 
						|
 | 
						|
		# Install/upgrade moodle DB schema
 | 
						|
		( runuser -s /bin/bash -c "/usr/bin/php /var/www/moodle/web/admin/cliupgrade.php \
 | 
						|
		    --agreelicense=yes --confirmrelease=yes \
 | 
						|
		    --sitefullname='School Server' \
 | 
						|
		    --siteshortname='XS' \
 | 
						|
		    --sitesummary='Put the name of your school here' \
 | 
						|
		    --adminfirstname=Admin --adminlastname=OLPC \
 | 
						|
		    --adminusername=admin --adminpassword=changeme \
 | 
						|
		    --adminemail=admin@localhost \
 | 
						|
		    --verbose=0 --interactivelevel=0" apache 2>&1 ) #&& \
 | 
						|
        #  runuser -s /bin/bash -c "/usr/bin/php /var/www/moodle/web/local/scripts/adminuser-disable.php" apache 2>&1 ) \
 | 
						|
        # >> /var/log/moodle-instupg.log 
 | 
						|
		if [ $? = 0 ]; then
 | 
						|
		    # success
 | 
						|
		    echo "["`date`"]" Finished install / upgrade - Success >> /var/log/moodle-instupg.log 
 | 
						|
		    rm -f /etc/moodle/needsupgrade
 | 
						|
		else
 | 
						|
		    # failure
 | 
						|
		    echo "["`date`"]" Finished install / upgrade - Failure >> /var/log/moodle-instupg.log 
 | 
						|
		    exit 1
 | 
						|
		fi
 | 
						|
		popd
 | 
						|
	fi
 | 
						|
	echo -n $"Enabling Moodle access and cron job: "
 | 
						|
	touch "$lockfile" && success || failure
 | 
						|
	RETVAL=$?
 | 
						|
	echo
 | 
						|
}
 | 
						|
 | 
						|
stop() {
 | 
						|
	echo -n $"Disabling Moodle access and cron job: "
 | 
						|
	rm -f "$lockfile" && success || failure
 | 
						|
	RETVAL=$?
 | 
						|
	echo
 | 
						|
}
 | 
						|
 | 
						|
case "$1" in
 | 
						|
  start)
 | 
						|
	start
 | 
						|
	;;
 | 
						|
  stop) 
 | 
						|
	stop
 | 
						|
	;;
 | 
						|
  *)
 | 
						|
	exit 1
 | 
						|
esac
 | 
						|
 | 
						|
exit $RETVAL
 |