summaryrefslogtreecommitdiffstats
path: root/src/sbin
diff options
context:
space:
mode:
authorChris St. Pierre <chris.a.st.pierre@gmail.com>2012-07-20 13:47:46 -0400
committerChris St. Pierre <chris.a.st.pierre@gmail.com>2012-07-20 13:47:46 -0400
commitb419ae3065554cf778ad00c44c33416bb8ea1850 (patch)
treee2a951ba8b689d7d2076eb09e97b74470645eaef /src/sbin
parent15de42173b0ebab86f04a933b525b57a625f5fa7 (diff)
downloadbcfg2-b419ae3065554cf778ad00c44c33416bb8ea1850.tar.gz
bcfg2-b419ae3065554cf778ad00c44c33416bb8ea1850.tar.bz2
bcfg2-b419ae3065554cf778ad00c44c33416bb8ea1850.zip
made -B (skip bundle) mode work with -Q (bundle-quick mode)
Diffstat (limited to 'src/sbin')
-rwxr-xr-xsrc/sbin/bcfg29
1 files changed, 6 insertions, 3 deletions
diff --git a/src/sbin/bcfg2 b/src/sbin/bcfg2
index 4fbbef877..4c1514117 100755
--- a/src/sbin/bcfg2
+++ b/src/sbin/bcfg2
@@ -57,8 +57,8 @@ class Client:
self.logger = logging.getLogger('bcfg2')
self.logger.debug(self.setup)
if self.setup['bundle_quick']:
- if self.setup['bundle'] == []:
- self.logger.error("-Q option requires -b")
+ if not self.setup['bundle'] and not self.setup['skipbundle']:
+ self.logger.error("-Q option requires -b or -B")
raise SystemExit(1)
elif self.setup['remove']:
self.logger.error("-Q option incompatible with -r")
@@ -264,7 +264,10 @@ class Client:
[newconfig.append(bundle)
for bundle in self.config.getchildren()
if (bundle.tag == 'Bundle' and
- bundle.get('name') in self.setup['bundle'])]
+ ((self.setup['bundle'] and
+ bundle.get('name') in self.setup['bundle']) or
+ (self.setup['skipbundle'] and
+ bundle.get('name') not in self.setup['skipbundle'])))]
self.config = newconfig
self.tools = Bcfg2.Client.Frame.Frame(self.config,