From 2e16fc762e014236105d51640f276b89d5d65be9 Mon Sep 17 00:00:00 2001 From: Narayan Desai Date: Sun, 27 Jan 2008 14:49:46 +0000 Subject: Sync glob pattern with regex pattern (Resolves Ticket #520) git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@4293 ce84e21b-d406-0410-9b95-82705330c041 --- src/lib/Client/Tools/DebInit.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'src/lib/Client/Tools/DebInit.py') diff --git a/src/lib/Client/Tools/DebInit.py b/src/lib/Client/Tools/DebInit.py index 9f52861a4..912009280 100644 --- a/src/lib/Client/Tools/DebInit.py +++ b/src/lib/Client/Tools/DebInit.py @@ -11,14 +11,20 @@ class DebInit(Bcfg2.Client.Tools.SvcTool): __handles__ = [('Service', 'deb')] __req__ = {'Service': ['name', 'status']} __svcrestart__ = 'restart' - svcre = re.compile("/etc/.*/[SK]\d\d(?P\S+)") + svcre = re.compile("/etc/.*/[SK]\d+(?P\S+)") # implement entry (Verify|Install) ops def VerifyService(self, entry, _): '''Verify Service status for entry''' - rawfiles = glob.glob("/etc/rc*.d/*%s" % (entry.get('name'))) - files = [filename for filename in rawfiles if \ - self.svcre.match(filename).group('name') == entry.get('name')] + rawfiles = glob.glob("/etc/rc*.d/[SK]*%s" % (entry.get('name'))) + files = [] + for filename in rawfiles: + match = self.svcre.match(filename) + if not match: + self.logger.error("Failed to match file: %s" % filename) + continue + if match.group('name') == entry.get('name'): + files.append(filename) if entry.get('status') == 'off': if files: entry.set('current_status', 'on') -- cgit v1.2.3-1-g7c22