def updateseeds(self, args): '''Performs a search for all active developers and generates a new seeds file''' l = LdapSearch(logger=self.logger) self.logger.debug("MAIN: _action_updateseeds; args = %s" % str(args)) self.output('', "Search... Establishing connection") if not l.status: self.output('', "Aborting update... Connection failed") return False results = l.search('*', UID) info = l.result2dict(results, 'uid') self.logger.debug( "MAIN: _action_updateseeds; got results :) converted to info") if args.category: filename = self.config.get_key('seeds', args.category) + '.new' if not self.create_seedfile(info, filename): self.logger.error("Developer seed file update failure: " "Original seed file is intact & untouched.") self.output('', "Backing up existing file...") status = updatefiles(self.config, self.logger, args.category) if not status: self.output('', "Develope seed failed to update!") return False self.output('', "Developer seed file updated!") return (True, ['Completed'])
def ldapsearch(self, args): l = LdapSearch() self.logger.debug("MAIN: _action_ldapsearch; args = %s" % str(args)) self.output("Search... Establishing connection\n") if not l.status: self.output("Aborting Search... Connection failed") return False attr, target, search_field = self.get_args(args) results = l.search(target, search_field) devs = l.result2dict(results, gkey2ldap[attr]) for dev in sorted(devs): self.output(dev, devs[dev]) self.output("============================================") self.output("Total number of developers in results:", len(devs)) self.logger.info("============================================") self.logger.info("Total number of developers in results: %d" % len(devs)) return True
def ldapsearch(self, args): '''Performs a search in LDAP for the input arguments''' l = LdapSearch(logger=self.logger) self.logger.debug("MAIN: _action_ldapsearch; args = %s" % str(args)) self.output('', "Search... Establishing connection\n") if not l.status: self.output('', "Aborting Search... Connection failed") return False attr, target, search_field = self.get_args(args) results = l.search(target, search_field) devs = l.result2dict(results, gkey2ldap[attr]) for dev in sorted(devs): self.output('', dev, devs[dev]) self.output('', "============================================") self.output('', "Total number of developers in results:", len(devs)) self.logger.info("============================================") self.logger.info("Total number of developers in results: %d" % len(devs)) return (True, ['Completed'])
def updateseeds(self, args): l = LdapSearch() self.logger.debug("MAIN: _action_updateseeds; args = %s" % str(args)) self.output("Search... Establishing connection") if not l.status: self.output("Aborting update... Connection failed") return False results = l.search('*', UID) info = l.result2dict(results, 'uid') self.logger.debug( "MAIN: _action_updateseeds; got results :) converted to info") filename = self.config['dev-seedfile'] + '.new' if not self.create_seedfile(info, filename): self.logger.error("Developer seed file update failure: " "Original seed file is intact & untouched.") self.output("Backing up existing file...") status = updatefiles(self.config, self.logger) if not status: self.output("Develope seed failed to update!") return False self.output("Developer seed file updated!") return True
def updateseeds(self, args): self.logger.info("Beginning LDAP search...") self.output("Beginning LDAP search...") l = LdapSearch() if not l.connect(): self.output("Aborting update... Connection failed") self.logger.info("Aborting update... Connection failed") return False results = l.search('*', UID) info = l.result2dict(results, 'uid') self.logger.debug( "MAIN: _action_updateseeds; got results :) converted to info") if not self.create_seedfile(info): self.logger.error("Developer seed file update failure: " "Original seed file is intact & untouched.") filename = self.config['dev-seedfile'] old = filename + '.old' try: self.output("Backing up existing file...") self.logger.info("Backing up existing file...") if os.path.exists(old): self.logger.debug( "MAIN: _action_updateseeds; Removing 'old' seed file: %s" % old) os.unlink(old) if os.path.exists(filename): self.logger.debug( "MAIN: _action_updateseeds; Renaming current seed file to: " "%s" % old) os.rename(filename, old) self.logger.debug( "MAIN: _action_updateseeds; Renaming '.new' seed file to: %s" % filename) os.rename(filename + '.new', filename) except IOError: raise self.output("Developer seed file updated!") return True