From b53f3ecdeca20740c974bd7cbf29ce7498dffd8f Mon Sep 17 00:00:00 2001 From: Narayan Desai Date: Mon, 8 Jan 2007 21:54:14 +0000 Subject: Two client updates - add default toolset support for debian - Add support for clearing maintenance modes in smf git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@2632 ce84e21b-d406-0410-9b95-82705330c041 --- src/lib/Client/Frame.py | 3 ++- src/lib/Client/Tools/SMF.py | 10 ++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/lib/Client/Frame.py b/src/lib/Client/Frame.py index 16fa3e11a..d6424b603 100644 --- a/src/lib/Client/Frame.py +++ b/src/lib/Client/Frame.py @@ -15,7 +15,8 @@ def promptFilter(prompt, entries): continue return ret -toolset_defs = {'rh': {'Service':'chkconfig', 'Package':'rpm'}} +toolset_defs = {'rh': {'Service':'chkconfig', 'Package':'rpm'}, + 'debian': {'Service':'deb', 'Package':'deb'}} class Frame: '''Frame is the container for all Tool objects and state information''' diff --git a/src/lib/Client/Tools/SMF.py b/src/lib/Client/Tools/SMF.py index 57d1ea8f7..e2ad2f80b 100644 --- a/src/lib/Client/Tools/SMF.py +++ b/src/lib/Client/Tools/SMF.py @@ -84,8 +84,14 @@ class SMF(Bcfg2.Client.Tools.Tool): % (loc.replace('/S', '/DISABLED.S'), loc)) cmdrc = 1 else: - cmdrc = self.cmd.run("/usr/sbin/svcadm enable -r %s" % \ - (entry.get('FMRI')))[0] + srvdata = self.cmd.run("/usr/bin/svcs -H -o STA %s" % + entry.get('FMRI'))[1] [0].split() + if srvdata[0] == 'MNT': + cmdarg = 'clear' + else: + cmdarg = 'enable' + cmdrc = self.cmd.run("/usr/sbin/svcadm %s -r %s" % \ + (cmdarg, entry.get('FMRI')))[0] return cmdrc == 0 def Remove(self, svcs): -- cgit v1.2.3-1-g7c22