From de514fd41b5f86c400a031e87a72ad148954642a Mon Sep 17 00:00:00 2001 From: "Martin A. Brown" Date: Fri, 26 Feb 2016 19:07:05 -0800 Subject: [PATCH] user can now specify file, stem or nothing for build --- tldp/driver.py | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/tldp/driver.py b/tldp/driver.py index 6e78753..d38d9da 100644 --- a/tldp/driver.py +++ b/tldp/driver.py @@ -65,16 +65,24 @@ def status(config, args): def build(config, args): targets = list() - if not args: - i = tldp.inventory.Inventory(config.pubdir, config.sourcedir) - targets.extend(i.new.values()) - targets.extend(i.stale.values()) - targets.extend(i.broken.values()) - else: + stems = list() + if args: for arg in args: if os.path.isfile(arg) or os.path.isdir(arg): source = tldp.sources.SourceDocument(arg) targets.append(source) + else: + stems.append(arg) + if stems or not args: + i = tldp.inventory.Inventory(config.pubdir, config.sourcedir) + if stems: + for source in i.source.values(): + if source.stem in stems: + targets.append(source) + else: + targets.extend(i.new.values()) + targets.extend(i.stale.values()) + targets.extend(i.broken.values()) for source in targets: if source.stem in config.skip: logger.info("%s skipping build per request", source.stem)