vshost-util-vserver

Build script and sources for util-vserver.
git clone https://ccx.te2000.cz/git/vshost-util-vserver
Log | Files | Refs

vemerge (2355B)


      1 #!/bin/bash
      2 # $Id$
      3 
      4 # Copyright (C) 2006 Benedikt Boehm <hollow@gentoo.org>
      5 #  
      6 # This program is free software; you can redistribute it and/or modify
      7 # it under the terms of the GNU General Public License as published by
      8 # the Free Software Foundation; version 2 of the License.
      9 #  
     10 # This program is distributed in the hope that it will be useful,
     11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
     12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     13 # GNU General Public License for more details.
     14 #  
     15 # You should have received a copy of the GNU General Public License
     16 # along with this program; if not, write to the Free Software
     17 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
     18 
     19 : ${UTIL_VSERVER_VARS:=/usr/lib/util-vserver/util-vserver-vars}
     20 test -e "$UTIL_VSERVER_VARS" || {
     21     echo $"Can not find util-vserver installation (the file '$UTIL_VSERVER_VARS' would be expected); aborting..." >&2
     22     exit 1
     23 }
     24 . "$UTIL_VSERVER_VARS"
     25 . "$_LIB_FUNCTIONS"
     26 
     27 
     28 function showHelp()
     29 {
     30     echo \
     31 $"Usage: $0 <vserver-name>* [--all] -- <params>+
     32 
     33 Report bugs to <$PACKAGE_BUGREPORT>."
     34     exit 0
     35 }
     36 
     37 function showVersion()
     38 {
     39     echo \
     40 $"vemerge $PACKAGE_VERSION -- emerge for vservers
     41 This program is part of $PACKAGE_STRING
     42 
     43 Copyright (C) 2006 Benedikt Boehm
     44 This program is free software; you may redistribute it under the terms of
     45 the GNU General Public License.  This program has absolutely no warranty."
     46     exit 0
     47 }
     48 
     49 tmp=$(getopt -o +q --long help,version,debug,quiet,$VS_ALLVSERVERS_ARGS -n "$0" -- "$@") || exit 1
     50 eval set -- "$tmp"
     51 
     52 declare -a send_through vsomething_opts
     53 
     54 while true; do
     55     case "$1" in
     56 	(--help)    	showHelp $0 ;;
     57 	(--version) 	showVersion ;;
     58 	(--debug)	send_through=( "${send_through[@]}" "$1" ); set -x;;
     59 	(--quiet|-q)	send_through=( "${send_through[@]}" "$1" );;
     60 	(--)		test ${#vsomething_opts[@]} -eq 0 && shift; break;;
     61 	(*)             vsomething_opts=( "${vsomething_opts[@]}" "$1" );;
     62     esac
     63     shift
     64 done
     65 
     66 declare -a vserver_names
     67 
     68 while [ $# -gt 0 ]; do
     69     case "$1" in
     70 	(--)		shift; break;;
     71 	(*)	   	vserver_names=( "${vserver_names[@]}" "$1" );;
     72     esac
     73     shift
     74 done
     75 
     76 VSOMETHING_TITLE=vemerge
     77 VSOMETHING_PKGMGMT=1
     78 
     79 export VSOMETHING_TITLE VSOMETHING_PKGMGMT
     80 exec $_VSOMETHING "${send_through[@]}" emerge "${vsomething_opts[@]}" "${vserver_names[@]}" -- "$@"