changes for 3.0
[monitor.git] / monitor_policy.py
index f7c3edb..5db440f 100644 (file)
@@ -281,6 +281,8 @@ class Diagnose:
                        print "----------------"
                        import traceback
                        print traceback.print_exc()
+                       from nodecommon import email_exception
+                       email_exception()
                        print err
                        #if config.policysavedb:
                        sys.exit(1)
@@ -884,6 +886,8 @@ class Action:
                        print "----------------"
                        import traceback
                        print traceback.print_exc()
+                       from nodecommon import email_exception
+                       email_exception()
                        print err
                        if config.policysavedb:
                                print "Saving Databases... act_all"
@@ -937,18 +941,22 @@ class Action:
                if ADMIN & roles:
                        contacts += [config.email]
                if TECH & roles:
-                       contacts += [TECHEMAIL % loginbase]
+                       #contacts += [TECHEMAIL % loginbase]
+                       contacts += plc.getTechEmails(loginbase)
                if PI & roles:
-                       contacts += [PIEMAIL % loginbase]
+                       #contacts += [PIEMAIL % loginbase]
+                       contacts += plc.getPIEmails(loginbase)
                if USER & roles:
+                       contacts += plc.getSliceUserEmails(loginbase)
                        slices = plc.slices(loginbase)
                        if len(slices) >= 1:
-                               for slice in slices:
-                                       contacts += [SLICEMAIL % slice]
                                print "SLIC: %20s : %d slices" % (loginbase, len(slices))
                        else:
                                print "SLIC: %20s : 0 slices" % loginbase
 
+               unique_contacts = set(contacts)
+               contacts = [ c for c in unique_contacts ]       # convert back into list
+
                try:
                        subject = message[0] % args
                        body = message[1] % args
@@ -966,6 +974,8 @@ class Action:
                        print "exception on message:"
                        import traceback
                        print traceback.print_exc()
+                       from nodecommon import email_exception
+                       email_exception()
                        print message
 
                return ticket_id