From a9ec31367187bc0159100688e13400ca86b2709a Mon Sep 17 00:00:00 2001 From: Kévin Le Gouguec Date: Sun, 29 Mar 2020 23:24:35 +0200 Subject: Unify recipe for regular and automated indices Also don't run pandoc in a pipeline within a Makefile recipe: pipefail is not set, so generate-index.py failures will not be bubbled up. --- repo/www/generate-index.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'repo/www/generate-index.py') diff --git a/repo/www/generate-index.py b/repo/www/generate-index.py index d4b087c..3f777b9 100755 --- a/repo/www/generate-index.py +++ b/repo/www/generate-index.py @@ -2,6 +2,7 @@ from argparse import ArgumentParser from os import path +from subprocess import run from git import Repo @@ -17,6 +18,9 @@ def parse_arguments(): parser.add_argument( 'target', help='Folder to generate an index for.' ) + parser.add_argument( + 'output', help='Path to the output file.' + ) return parser.parse_args() @@ -48,6 +52,11 @@ def generate_index_page(title, directories, files, intro_file): {file_list} ''' +def convert_page(content, output): + run( + ('pandoc', '-s', '-o', output), input=content, check=True, text=True + ) + def main(arguments): repo = Repo(search_parent_directories=True) @@ -73,7 +82,10 @@ def main(arguments): title = path.basename(target) if target else 'index' - print(generate_index_page(title, folders, names, intro)) + convert_page( + generate_index_page(title, folders, names, intro), + arguments.output + ) if __name__ == '__main__': -- cgit v1.2.3