replaced with new version
[util-vserver.git] / util-vserver / scripts / vrpm
1 #! /bin/bash -e
2
3 # Copyright (C) 2003 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
4 #  
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; version 2 of the License.
8 #  
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 # GNU General Public License for more details.
13 #  
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17
18 : ${UTIL_VSERVER_VARS:=$(dirname $0)/util-vserver-vars}
19 test -e "$UTIL_VSERVER_VARS" || {
20     echo "Can not find util-vserver installation; aborting..."
21     exit 1
22 }
23 . "$UTIL_VSERVER_VARS"
24 . "$_LIB_FUNCTIONS"
25
26 function showHelp()
27 {
28     echo "Usage: $0 <vserver-name>* [--all] [--help] [--version] [--unify] -- <rpm-params>+"
29     exit $1
30 }
31
32 function showVersion()
33 {
34     cat <<EOF 
35 vrpm 0.23.5 -- rpm for vservers
36 Copyright (C) 2003 Enrico Scholz
37 This program is free software; you may redistribute it under the terms of
38 the GNU General Public License.  This program has absolutely no warranty.
39 EOF
40     exit $1
41 }
42
43 do_unify=
44 vservers=
45
46 while test "$#" -ge 1; do
47     case "$1" in
48         --all)
49             getAllVservers tmp
50             vservers="$vservers $tmp"
51             ;;
52         --unify)
53             do_unify=1
54             ;;
55         --)
56             shift; break;;
57         --help)
58             showHelp 0;;
59         --version)
60             showVersion 0;;
61         *)  vservers="$vservers $1";;
62      esac
63      shift
64 done
65
66 test "$#" -ge 1 || showHelp 1 >&2
67
68 cnt=0
69 res=255
70 for i in $vservers; do
71     cnt=$[ cnt + 1 ]
72     "$_NEW_NAMESPACE" "$_VRPM_WORKER" "$i" "$@"
73     res=$?
74 done
75
76 test -z "$do_unify" || echo "unify currently unsupported" >&2
77 test "$cnt" -ge 0   || echo "No vservers specified" >&2
78 exit $res