"""
try:
- return int(utils.ReadFile(file_name))
+ contents = utils.ReadFile(file_name)
except EnvironmentError, err:
if err.errno in (errno.ENOENT, ):
return None
raise
+ try:
+ return int(contents)
+ except (ValueError, TypeError), err:
+ # Couldn't convert to int
+ raise errors.JobQueueError("Content of file '%s' is not numeric: %s" %
+ (file_name, err))
+
def ReadSerial():
"""Read the serial file.
if version is None:
# Write new version file
utils.WriteFile(pathutils.JOB_QUEUE_VERSION_FILE,
- uid=getents.masterd_uid, gid=getents.masterd_gid,
+ uid=getents.masterd_uid, gid=getents.daemons_gid,
+ mode=constants.JOB_QUEUE_FILES_PERMS,
data="%s\n" % constants.JOB_QUEUE_VERSION)
# Read again
if serial is None:
# Write new serial file
utils.WriteFile(pathutils.JOB_QUEUE_SERIAL_FILE,
- uid=getents.masterd_uid, gid=getents.masterd_gid,
+ uid=getents.masterd_uid, gid=getents.daemons_gid,
+ mode=constants.JOB_QUEUE_FILES_PERMS,
data="%s\n" % 0)
# Read again
if drain_flag:
utils.WriteFile(pathutils.JOB_QUEUE_DRAIN_FILE, data="",
- uid=getents.masterd_uid, gid=getents.masterd_gid)
+ uid=getents.masterd_uid, gid=getents.daemons_gid,
+ mode=constants.JOB_QUEUE_FILES_PERMS)
else:
utils.RemoveFile(pathutils.JOB_QUEUE_DRAIN_FILE)