From 87453978cfe1ef05d2a57112f58e778a97626cef Mon Sep 17 00:00:00 2001 From: Narayan Desai Date: Thu, 21 Dec 2006 15:27:55 +0000 Subject: Fix some error paths in SMF git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@2604 ce84e21b-d406-0410-9b95-82705330c041 --- src/lib/Client/Tools/SMF.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/lib/Client/Tools/SMF.py b/src/lib/Client/Tools/SMF.py index 598fbe6cf..ce4d8261d 100644 --- a/src/lib/Client/Tools/SMF.py +++ b/src/lib/Client/Tools/SMF.py @@ -27,6 +27,7 @@ class SMF(Bcfg2.Client.Tools.Tool): def VerifyService(self, entry, _): '''Verify SMF Service Entry''' if not self.GetFMRI(entry): + self.logger.error("smf service %s doesn't have FMRI set" % entry.get('name')) return False if entry.get('FMRI').startswith('lrc'): filename = entry.get('FMRI').split('/')[-1] @@ -108,9 +109,15 @@ class SMF(Bcfg2.Client.Tools.Tool): if not self.canInstall(entry): self.logger.error("Insufficient information to restart service %s" % (entry.get('name'))) else: - if entry.get('status') == 'on': - self.logger.info("Restarting smf service %s" % (entry.get("FMRI"))) - self.cmd.run("/usr/sbin/svcadm restart %s" % (entry.get("FMRI"))) + if entry.get("FMRI").startswith('lrc'): + if entry.get('status') == 'on': + self.logger.info("Restarting smf/lrc service %s"%(entry.get("name"))) + self.cmd.run("/etc/init.d/%s %s" % (entry.get('name'), + entry.get('reload', 'reload'))) else: - self.cmd.run("/usr/sbin/svcadm disable %s" % (entry.get("FMRI"))) + if entry.get('status') == 'on': + self.logger.info("Restarting smf service %s" % (entry.get("FMRI"))) + self.cmd.run("/usr/sbin/svcadm restart %s" % (entry.get("FMRI"))) + else: + self.cmd.run("/usr/sbin/svcadm disable %s" % (entry.get("FMRI"))) -- cgit v1.2.3-1-g7c22