# HG changeset patch # User Jeff Hammel # Date 1294430656 28800 # Node ID 59cc21718ceda7e516d8d4fb753acd6ade9f269f # Parent 848569b7f91a9c57c3aadab5bd82b084c53eaa72 select factory diff -r 848569b7f91a -r 59cc21718ced autobot/template.py --- a/autobot/template.py Fri Jan 07 11:49:53 2011 -0800 +++ b/autobot/template.py Fri Jan 07 12:04:16 2011 -0800 @@ -7,6 +7,7 @@ import os import sys from makeitso.cli import MakeItSoCLI +from makeitso.projects import factories from makeitso.template import MakeItSoTemplate from makeitso.template import Variable @@ -20,7 +21,19 @@ Variable('htmlport', 'port for waterfall display', default=8010)] def pre(self, variables): - variables['factory'] = 'foo' + factory = variables.get['factory'] + if factory: + assert factory in factories, 'Factory must be one of: ' % ', '.join(factories.keys()) + elif self.interactive: + print 'Please select a Factory:\n' + for key in sorted(factories.keys()): + print '%s:' % key + print getattr(factories[key], '__doc__', '').strip() + print + factory = raw_input() + assert factory in factories, 'Factory must be one of: ' % ', '.join(factories.keys()) + else: + raise AssertionError("No factory provided") class AutobotSlaveTemplate(MakeItSoTemplate): name = 'autobot-slave' @@ -28,6 +41,10 @@ templates = [os.path.join('template', 'slave')] look = True +class MasterTemplateCLI(MakeItSoCLI): + def __init__(self): + + def main(args=sys.argv[1:]): cli = MakeItSoCLI(AutobotMasterTemplate) template = cli.parse()