From 021a697c91e9ab6d16ab3fc5919413a9b7b67fe7 Mon Sep 17 00:00:00 2001 From: Faiyaz Ahmed Date: Thu, 28 Feb 2008 15:25:59 +0000 Subject: [PATCH] moved to scripts/ --- renew_reminder.py | 100 ---------------------------------------------- 1 file changed, 100 deletions(-) delete mode 100755 renew_reminder.py diff --git a/renew_reminder.py b/renew_reminder.py deleted file mode 100755 index 499a7d3..0000000 --- a/renew_reminder.py +++ /dev/null @@ -1,100 +0,0 @@ -#!/usr/bin/python -# -# Notify users of slices that are about to expire -# -# Mark Huang -# Copyright (C) 2005 The Trustees of Princeton University -# -# $Id$ -# - -import sys -import time -from optparse import OptionParser - -# Load shell with default configuration -sys.path.append('/usr/share/plc_api') -from PLC.Shell import Shell -plc = Shell(globals()) - -PLC_WWW_HOST = plc.config.PLC_WWW_HOST -PLC_NAME = plc.config.PLC_NAME - -# Debug -verbose = False; - -# E-mail parameteres -slice_url = """https://%(PLC_WWW_HOST)s/db/slices/index.php?id=""" % locals() - -parser = OptionParser() -parser.add_option("-s", "--slice", action = "append", dest = "slices", default = None, - help = "Slice(s) to check (default: all)") -parser.add_option("-x", "--expires", type = "int", default = 5, - help = "Warn if slice expires this many days from now (default: %default)") -parser.add_option("-n", "--dryrun", action = "store_true", default = False, - help = "Dry run, do not actually e-mail users (default: %default)") -parser.add_option("-f", "--force", action = "store_true", default = False, - help = "Force, send e-mail even if slice is not close to expiring (default: %default)") -parser.add_option("-v", "--verbose", action = "store_true", default = False, - help = "Be verbose (default: %default)") -(options, args) = parser.parse_args() - -now = int(time.time()) -expires = now + (options.expires * 24 * 60 * 60) - -if options.verbose: - print "Checking for slices that expire before " + time.ctime(expires) - -slice_filter = {'peer_id': None} -if options.slices: - slice_filter['name'] = options.slices - -for slice in GetSlices(slice_filter, ['slice_id', 'name', 'expires', 'description', 'url', 'person_ids']): - # See if slice expires before the specified warning date - if not options.force and slice['expires'] > expires: - continue - - # Calculate number of whole days left - delta = slice['expires'] - now - days = delta / 24 / 60 / 60 - if days == 0: - days = "less than a day" - else: - if days > 1: - suffix = "s" - else: - suffix = "" - days = "%d day%s" % (days, suffix) - - name = slice['name'] - slice_id = slice['slice_id'] - - message = """ -The %(PLC_NAME)s slice %(name)s will expire in %(days)s. -""" - - # Explain that slices must have descriptions and URLs - if not slice['description'] or not slice['description'].strip() or \ - not slice['url'] or not slice['url'].strip(): - message += """ -Before you may renew this slice, you must provide a short description -of the slice and a link to a project website. -""" - - # Provide links to renew or delete the slice - message += """ -To update, renew, or delete this slice, visit the URL: - - %(slice_url)s%(slice_id)d -""" - - # Send it - if slice['person_ids']: - if options.dryrun: - print message % locals() - else: - NotifyPersons(slice['person_ids'], - "%(PLC_NAME)s slice %(name)s expires in %(days)s" % locals(), - message % locals()) - elif options.verbose: - print slice['name'], "has no users, skipping" -- 2.47.0