policies: Extend publication script to handle any Conservancy policy.
This commit is contained in:
parent
967ee95282
commit
637ca012b7
1 changed files with 15 additions and 5 deletions
|
@ -24,7 +24,7 @@ except ImportError:
|
|||
markdown_import_success = False
|
||||
|
||||
TEMPLATE_HEADER = """{% extends "base_projects.html" %}
|
||||
{% block subtitle %}Travel and Reimburseable Expense Policy - {% endblock %}
|
||||
{% block subtitle %}{% endblock %}
|
||||
{% block submenuselection %}Policies{% endblock %}
|
||||
{% block content %}
|
||||
|
||||
|
@ -181,7 +181,7 @@ Setting any flag will always override the default behavior.
|
|||
)
|
||||
add_parser_flag(
|
||||
parser, 'commit',
|
||||
help="Commit changes to the travel policy",
|
||||
help="Commit changes to the website repository",
|
||||
)
|
||||
parser.add_argument(
|
||||
'-m', dest='commit_message',
|
||||
|
@ -194,7 +194,7 @@ Setting any flag will always override the default behavior.
|
|||
)
|
||||
parser.add_argument(
|
||||
'input_path', type=pathlib.Path,
|
||||
help="Path to the Conservancy travel policy Markdown source",
|
||||
help="Path to the Conservancy policy Markdown source",
|
||||
)
|
||||
parser.add_argument(
|
||||
'output_path', type=pathlib.Path,
|
||||
|
@ -221,7 +221,7 @@ Try `apt install python3-markdown` or `python3 -m pip install --user Markdown`."
|
|||
pass
|
||||
if args.revision is None:
|
||||
parser.error("no --revision specified and not found from input path")
|
||||
args.output_link_path = args.git_output.dir_path / 'conservancy-travel-policy.html'
|
||||
args.output_link_path = args.git_output.dir_path / args.input_path.with_suffix('.html').name
|
||||
args.output_file_path = args.output_link_path.with_suffix('.{}.html'.format(args.revision))
|
||||
return args
|
||||
|
||||
|
@ -299,7 +299,17 @@ def write_output(args):
|
|||
],
|
||||
output_format='html5',
|
||||
)
|
||||
header = TEMPLATE_HEADER
|
||||
with args.input_path.open(encoding=args.encoding) as src_file:
|
||||
for line in src_file:
|
||||
if line.startswith('# '):
|
||||
subtitle = line[2:].replace('Software Freedom Conservancy', '').strip()
|
||||
header = header.replace(
|
||||
'{% block subtitle %}',
|
||||
'{{% block subtitle %}}{} - '.format(subtitle),
|
||||
)
|
||||
break
|
||||
src_file.seek(0)
|
||||
body = converter.convert(src_file.read())
|
||||
with tempfile.NamedTemporaryFile(
|
||||
'w',
|
||||
|
@ -309,7 +319,7 @@ def write_output(args):
|
|||
delete=False,
|
||||
) as tmp_out:
|
||||
try:
|
||||
tmp_out.write(TEMPLATE_HEADER)
|
||||
tmp_out.write(header)
|
||||
tmp_out.write(body)
|
||||
tmp_out.write(TEMPLATE_FOOTER)
|
||||
tmp_out.flush()
|
Loading…
Reference in a new issue