summaryrefslogtreecommitdiff
path: root/repo/www/generate-index.py
diff options
context:
space:
mode:
Diffstat (limited to 'repo/www/generate-index.py')
-rwxr-xr-xrepo/www/generate-index.py18
1 files changed, 9 insertions, 9 deletions
diff --git a/repo/www/generate-index.py b/repo/www/generate-index.py
index 96c5dc6..d28c6a6 100755
--- a/repo/www/generate-index.py
+++ b/repo/www/generate-index.py
@@ -1,19 +1,19 @@
#!/usr/bin/env python3
from argparse import ArgumentParser
+import json
from os import path
from subprocess import run
from git import Repo
-from helpers import compute_directories
+from helpers import deserialize_directories
def parse_arguments():
parser = ArgumentParser()
parser.add_argument(
- 'extensions', type=str.split,
- help='File extensions to consider when recording pages.'
+ 'site_tree', help='JSON file describing the page tree.'
)
parser.add_argument(
'target', help='Pathspec to generate an index for.'
@@ -24,8 +24,9 @@ def parse_arguments():
return parser.parse_args()
-def list_files(extensions, folder, repo):
- directories = compute_directories(extensions, repo)
+def list_files(tree_file, folder):
+ with open(tree_file) as tree:
+ directories = deserialize_directories(json.load(tree))
return directories[folder].subfolders, directories[folder].files
@@ -59,16 +60,15 @@ def convert_page(content, output):
def main(arguments):
- repo = Repo(search_parent_directories=True)
-
target = arguments.target
- extensions = arguments.extensions
- folders, files = list_files(extensions, target, repo)
+ folders, files = list_files(arguments.site_tree, target)
names = []
intro = None
+ repo = Repo(search_parent_directories=True)
+
for f in files:
name, _ = path.splitext(f)
if name == 'README':