view makeitso/python.py @ 79:8c326f764cfe

add a CLI template
author Jeff Hammel <jhammel@mozilla.com>
date Sat, 08 Jan 2011 20:46:10 -0800
parents d4184945f8a8
children e74baa8e6df4
line wrap: on
line source

#!/usr/bin/env python

"""
python package templates for makeitso

Several components are included.
[TODO] You may use these subtemplates in any combination.

* README.txt : a README in restructured text
* examples : examples for your package
* setup.py : setup utility for the full package
* ./main.py : CLI handler for your webapp
* ./model.py : model of a persisted object
* ./template.py : a MakeItSo template for project creation
* ./tests : doctest suite for the package
* ./web.py : a webob web handler
"""

import sys
from cli import MakeItSoCLI
from optparse import OptionParser
from template import MakeItSoTemplate

class PythonPackage(MakeItSoTemplate):
  """
  python package template
  """
  name = 'python-package'
  templates = ['python_package']
  look = True

  # things that go in setup.py
  dependencies = {'web.py': ['webob'],
                  'template.py': ['MakeItSo']}
  console_scripts = {'main.py': '{{project}}.main:main',
                     'template.py': '{{project}}.template:main'
                     }
  
  def __init__(self, **kw):
    MakeItSoTemplate.__init__(self, **kw)

def main(args=sys.argv[:]):
  usage = '%prog [options]'
  

if __name__ == '__main__':
  main()