Example #1
0
 def process_ha_events(self, conn):
     try:
         tc = TaskCreator()
         auth = AuthorizationService()
         auth.user = User.by_user_name(u'admin')
         grps = conn.query(ServerGroup).all()
         for grp in grps:
             running_ha_evts = conn.query(HAEvent).filter(HAEvent.status == HAEvent.STARTED).filter(HAEvent.sp_id == grp.id).all()
             if running_ha_evts:
                 continue
             ha_events = conn.query(HAEvent).filter(HAEvent.status == HAEvent.IDLE).filter(HAEvent.sp_id == grp.id).order_by(HAEvent.event_id.asc()).all()
             if len(ha_events) > 0:
                 tc.ha_action(auth, grp.id, grp.name)
     finally:
         conn.commit()