mirror of
https://git.launchpad.net/~ubuntu-release/britney/+git/britney2-ubuntu
synced 2025-02-23 11:21:13 +00:00
Make sure that containing directories exist before writing output files
This commit is contained in:
parent
c582733989
commit
3b8daa98ec
@ -797,6 +797,7 @@ class Britney(object):
|
||||
# write excuses to the output file
|
||||
if not self.options.dry_run:
|
||||
self.logger.info("> Writing Excuses to %s", self.options.excuses_output)
|
||||
os.makedirs(os.path.dirname(self.options.excuses_output), exist_ok=True)
|
||||
write_excuses(excuses, self.options.excuses_output,
|
||||
output_format="legacy-html")
|
||||
if hasattr(self.options, 'excuses_yaml_output'):
|
||||
@ -1545,6 +1546,7 @@ class Britney(object):
|
||||
" as this is a dry-run.")
|
||||
elif hasattr(self.options, 'upgrade_output'):
|
||||
upgrade_output = getattr(self.options, 'upgrade_output')
|
||||
os.makedirs(os.path.dirname(self.options.upgrade_output), exist_ok=True)
|
||||
file_handler = logging.FileHandler(upgrade_output, mode='w', encoding='utf-8')
|
||||
output_formatter = logging.Formatter('%(message)s')
|
||||
file_handler.setFormatter(output_formatter)
|
||||
|
@ -516,6 +516,7 @@ class AgePolicy(BasePolicy):
|
||||
basename = 'Dates'
|
||||
old_file = None
|
||||
filename = os.path.join(directory, basename)
|
||||
os.makedirs(directory, exist_ok=True)
|
||||
filename_tmp = os.path.join(directory, '%s_new' % basename)
|
||||
with open(filename_tmp, 'w', encoding='utf-8') as fd:
|
||||
for pkg in sorted(dates):
|
||||
|
@ -299,7 +299,6 @@ def write_heidi_delta(filename, all_selected):
|
||||
fd.write('%s%s %s %s\n' % (prefix, item.package,
|
||||
item.version, item.architecture))
|
||||
|
||||
|
||||
def write_excuses(excuses, dest_file, output_format="yaml"):
|
||||
"""Write the excuses to dest_file
|
||||
|
||||
@ -309,6 +308,7 @@ def write_excuses(excuses, dest_file, output_format="yaml"):
|
||||
"""
|
||||
excuselist = sorted(excuses.values(), key=lambda x: x.sortkey())
|
||||
if output_format == "yaml":
|
||||
os.makedirs(os.path.dirname(dest_file), exist_ok=True)
|
||||
with open(dest_file, 'w', encoding='utf-8') as f:
|
||||
edatalist = [e.excusedata(excuses) for e in excuselist]
|
||||
excusesdata = {
|
||||
@ -317,6 +317,7 @@ def write_excuses(excuses, dest_file, output_format="yaml"):
|
||||
}
|
||||
f.write(yaml.dump(excusesdata, default_flow_style=False, allow_unicode=True))
|
||||
elif output_format == "legacy-html":
|
||||
os.makedirs(os.path.dirname(dest_file), exist_ok=True)
|
||||
with open(dest_file, 'w', encoding='utf-8') as f:
|
||||
f.write("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n")
|
||||
f.write("<html><head><title>excuses...</title>")
|
||||
|
Loading…
x
Reference in New Issue
Block a user