#!/bin/sh /etc/rc.common
# Copyright (C) 2006-2011 OpenWrt.org

START=50

start_instance () {
	local section="$1"
	config_get path "$section" 'path'
	config_get port "$section" 'port'

	if [ ! -d "$path" ]; then
		echo "The subversion repository (${path}) does not exist."
		echo "Create a new repository and/or change the path in /etc/config/subversion"
		echo
		echo "Create a new subversion repository with:"
		echo "        mkdir -p /srv"
		echo "        svnadmin create --fs-type fsfs /srv/svn"
		echo
		echo "Changing the path using UCI (default path is: /var/local/svn):"
		echo "        uci set subversion.@[0].path="/srv/svn""
		echo "        uci commit"
		echo "        /etc/init.d/subversion restart"
		return 1
	fi

	service_start /usr/bin/svnserve -d --listen-port ${port} -r ${path}
}

start() {
	config_load 'subversion'
	config_foreach start_instance 'subversion'
}

stop() {
	SERVICE_SIG_STOP="INT" \
	service_stop /usr/bin/svnserve
}