diff options
Diffstat (limited to 'src/jail-commit')
-rwxr-xr-x | src/jail-commit | 93 |
1 files changed, 0 insertions, 93 deletions
diff --git a/src/jail-commit b/src/jail-commit deleted file mode 100755 index 8de547c..0000000 --- a/src/jail-commit +++ /dev/null @@ -1,93 +0,0 @@ -#!/bin/bash -# -# jail-update: update config files from a jail to a template -# feedback: rhatto@riseup.net | gpl -# -# Jail-update is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or any later version. -# -# Jail-update is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along with -# this program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA -# - -COMMON="/usr/libexec/simplepkg/common.sh" - -if [ -f "$COMMON" ]; then - source $COMMON -else - echo "error: file $COMMON found, check your `basename $0` installation" - exit 1 -fi - -function template_merge { - - # copy differences between the jail - # and the template in the template folder - - # usage: template_merge <jail-path> - - if [ -z "$1" ] || [ ! -d "$TEMPLATE_BASE.d" ]; then - return 1 - fi - - rm -f $TEMPLATE_BASE.perms - touch $TEMPLATE_BASE.perms - cd $TEMPLATE_BASE.d - - for file in `find`; do - if [[ -f "$file" && -f "$1/$file" ]]; then - if ! diff $file $1/$file; then - echo updating $file - cp -af $1/$file $file - fi - perms="`numeric_perm $1/$file`" - owner="`get_owner $1/$file`" - group="`get_group $1/$file`" - echo "$file;$owner;$group;$perms" >> $TEMPLATE_BASE.perms - fi - done - -} - -function template_svn_commit { - - if [ "$TEMPLATES_UNDER_SVN" == "1" ] && \ - [ "$TEMPLATE_STORAGE_STYLE" == "own-folder" ]; then - cd `basedir $TEMPLATE_BASE` - svn commit -m "changes for `date`" - fi - -} - -if [ -f $JAIL_LIST ]; then - for jailpath in `cat $JAIL_LIST`; do - jail="`basename $jailpath`" - search_template $jail --update - if [ "$?" == "0" ]; then - echo updating $jailpath... - if [ -d "$TEMPLATE_BASE.d" ] || [ -a "$TEMPLATE_BASE.template" ]; then - templatepkg -u $jail $jailpath - template_merge $jailpath - template_svn_commit $TEMPLATE_BASE - fi - fi - done -fi - -# main jail -search_template main --update -if [ "$?" == "0" ]; then - if [ -a "$TEMPLATE_BASE.template" ] || [ -a "$TEMPLATE_BASE.template" ]; then - echo updating main installation... - templatepkg -u main - template_merge / - template_svn_commit $TEMPLATE_BASE - fi -fi - |