def task_fail_start(self, exception, conn): results = to_str(exception) self.curr_instance = datetime.utcnow() res = TaskResult(self.task_id, \ self.curr_instance, \ self.FAILED, \ results) u = User.by_user_name(self.user_name) if u is None: u = User.by_user_name(u'admin') email = u.email_address notification=Notification(to_unicode(self.task_id), \ self.name, \ self.curr_instance, \ results, \ self.user_name, \ email) conn.merge(res) conn.add(notification) if not self.repeating and self.entity_id != None: UIUpdateManager().set_updated_tasks(self.task_id,\ self.user_name)
def task_fail_start(self, exception, conn): results = to_str(exception) self.curr_instance = datetime.utcnow() res = TaskResult(self.task_id, \ self.curr_instance, \ self.FAILED, \ results) u = User.by_user_name(self.user_name) if u is None: u = User.by_user_name(u'admin') email=u.email_address notification=Notification(to_unicode(self.task_id), \ self.name, \ self.curr_instance, \ results, \ self.user_name, \ email) conn.merge(res) conn.add(notification) if not self.repeating and self.entity_id!=None: UIUpdateManager().set_updated_tasks(self.task_id,\ self.user_name)
def save_user_det(self, login,userid, username, fname, lname, displayname, password, email, phone, status): user1=DBSession.query(User).filter(User.user_name==username).first() if user1 is None: if not self.check_email(email): return 'Email_exist' result = [] user=User() user.password=(password) user.firstname=(fname) user.lastname=(lname) user.display_name=(displayname) user.user_name=(username) user.phone_number=(phone) user.email_address=(email) user.created_by=(login) user.modified_by=(login) user.created_date=datetime.now() if status=="InActive": user.status=False # L=(groupids).split(',') # if groupids !="": # for i in L: # group=DBSession.query(Group).filter(Group.group_id==int(i)).first() # user.groups.append(group); DBHelper().add(user) return result else: result='False' return result
def do_work(self, runtime_context, args=None, kw=None): self.task_manager = runtime_context.pop() self.curr_instance = datetime.utcnow() args = self.params recover = resume = False visible = False if kw: resume = kw.get('resume', False) recover = kw.get('recover', False) kw = self.kw_params self.quiet = (self.get_context_param('quiet') == True) if not self.quiet and resume == False and recover == False: self.task_started() try: try: task_result_running_instance = True if not args: args = [] if not kw: kw = {} #build auth object auth = AuthorizationService() auth.email_address = "" user = User.by_user_name(self.user_name) auth.user = user if user is None: u = User.by_user_name(u'admin') auth.email_address = u.email_address logger.info("User: "******" does not exist in CMS.") raise Exception("User: "******" does not exist in CMS.") else: auth.user = user auth.user_name = user.user_name auth.email_address = user.email_address TaskUtil.set_task_context(self.task_id) if recover != True and resume != True: raw_result = self.exec_task(auth, self.context, *args, **kw) else: runn = self.get_running_instance() if runn: self.curr_instance = runn.timestamp else: task_result = self.get_task_result_instance() if isinstance(task_result.results, str): task_result.results += "can not resume task. No running instance" elif not task_result.results: task_result.results = "can not resume task. No running instance" task_result_running_instance = False if task_result_running_instance: if recover == True: raw_result = self.recover_task( auth, self.context, *args, **kw) elif resume == True: raw_result = self.resume_task( auth, self.context, *args, **kw) if task_result_running_instance: cancelled = False results = raw_result if isinstance(raw_result, dict): if raw_result.get('status') == constants.TASK_CANCELED: e = raw_result.get('msg') + "\n" + raw_result.get( 'results') transaction.abort() cancelled = True if not self.quiet: self.task_fail(e, auth, cancelled=True) elif raw_result.get('status') == Task.SUCCEEDED: results = raw_result.get('results') visible = raw_result.get('visible', False) else: #get processed results if raw_result is not None and self.processors is not None: results = [ raw_result, ] for p in self.processors: if issubclass(p, Processor): p().process_output(results) else: results = raw_result if results is None: desc_tuple = self.get_short_desc() if desc_tuple is None: results = 'Task Completed Successfully.' else: (short_desc, short_desc_params) = desc_tuple desc = (short_desc) % short_desc_params results = desc + ' Completed Successfully.' #commit changes done by exec_task transaction.commit() except Exception, e: #rollback any changes made in thread session logger.exception(to_str(e)) transaction.abort() if not self.quiet: self.task_fail(e, auth) else:
def save_user_det(self, login, userid, username, fname, lname, displayname, password, email, vm_licenses, status): user1 = DBSession.query(User).filter( User.user_name == username).first() if user1 is None: if not self.check_email(email): return 'Email_exist' result = [] user = User() user.password = (password) user.firstname = (fname) user.lastname = (lname) user.display_name = (displayname) user.user_name = (username) user.vm_license_number = (vm_licenses) user.email_address = (email) user.created_by = (login) user.modified_by = (login) user.created_date = datetime.now() if status == "InActive": user.status = False # L=(groupids).split(',') # if groupids !="": # for i in L: # group=DBSession.query(Group).filter(Group.group_id==int(i)).first() # user.groups.append(group); DBHelper().add(user) return result else: result = 'False' return result
def do_work(self, runtime_context, args = None, kw = None): self.task_manager = runtime_context.pop() self.curr_instance = datetime.utcnow() args = self.params recover = resume = False visible = False if kw: resume = kw.get('resume',False) recover= kw.get('recover',False) kw = self.kw_params self.quiet = (self.get_context_param('quiet') == True) if not self.quiet and resume==False and recover==False : self.task_started() try: try: task_result_running_instance = True if not args: args = [] if not kw: kw = {} #build auth object auth = AuthorizationService() auth.email_address = "" user = User.by_user_name(self.user_name) auth.user = user if user is None: u = User.by_user_name(u'admin') auth.email_address = u.email_address logger.info("User: "******" does not exist in CMS.") raise Exception("User: "******" does not exist in CMS.") else: auth.user = user auth.user_name = user.user_name auth.email_address = user.email_address TaskUtil.set_task_context(self.task_id) if recover != True and resume != True: raw_result = self.exec_task(auth, self.context, *args, **kw) else: runn = self.get_running_instance() if runn: self.curr_instance = runn.timestamp else: task_result = self.get_task_result_instance() if isinstance(task_result.results, str): task_result.results += "can not resume task. No running instance" elif not task_result.results: task_result.results = "can not resume task. No running instance" task_result_running_instance = False if task_result_running_instance: if recover == True : raw_result = self.recover_task(auth, self.context, *args, **kw) elif resume == True: raw_result = self.resume_task(auth, self.context, *args, **kw) if task_result_running_instance: cancelled=False results = raw_result if isinstance(raw_result,dict): if raw_result.get('status')==constants.TASK_CANCELED: e=raw_result.get('msg')+"\n"+raw_result.get('results') transaction.abort() cancelled=True if not self.quiet: self.task_fail(e, auth, cancelled=True) elif raw_result.get('status')==Task.SUCCEEDED: results = raw_result.get('results') visible = raw_result.get('visible',False) else: #get processed results if raw_result is not None and self.processors is not None: results = [raw_result,] for p in self.processors: if issubclass(p, Processor): p().process_output(results) else: results = raw_result if results is None: desc_tuple = self.get_short_desc() if desc_tuple is None: results = 'Task Completed Successfully.' else: (short_desc, short_desc_params) = desc_tuple desc = (short_desc)%short_desc_params results = desc+' Completed Successfully.' #commit changes done by exec_task transaction.commit() except Exception, e: #rollback any changes made in thread session logger.exception(to_str(e)) transaction.abort() if not self.quiet: self.task_fail(e, auth) else: