-try:
- fd = open(os.path.join(GenerateDir, "last_update.trace"), "r")
- cache_last_mod=fd.read().split()
- fd.close()
-except IOError, e:
- if e.errno == errno.ENOENT:
- pass
- else:
- raise e
+ try:
+ fd = open(os.path.join(GenerateDir, "last_update.trace"), "r")
+ cache_last_mod=fd.read().split()
+ try:
+ cache_last_mod = cache_last_mod[0]
+ except IndexError:
+ pass
+ fd.close()
+ except IOError, e:
+ if e.errno == errno.ENOENT:
+ pass
+ else:
+ raise e
+
+ return cache_last_mod
+
+
+
+
+parser = optparse.OptionParser()
+parser.add_option("-g", "--generatedir", dest="generatedir", metavar="DIR",
+ help="Output directory.")
+parser.add_option("-f", "--force", dest="force", action="store_true",
+ help="Force generation, even if not update to LDAP has happened.")
+
+(options, args) = parser.parse_args()
+if len(args) > 0:
+ parser.print_help()
+ sys.exit(1)
+
+
+l = make_ldap_conn()
+
+if options.generatedir is not None:
+ GenerateDir = os.environ['UD_GENERATEDIR']
+elif 'UD_GENERATEDIR' in os.environ:
+ GenerateDir = os.environ['UD_GENERATEDIR']
+
+ldap_last_mod = getLastLDAPChangeTime(l)
+cache_last_mod = getLastBuildTime()
+need_update = ldap_last_mod > cache_last_mod