[Checkins] SVN: grokproject/branches/use-zopeproject/ Most of that
code lives in zopeproject now. Just define a GrokApp template
and depend
Philipp von Weitershausen
philikon at philikon.de
Sat Jul 14 14:04:34 EDT 2007
Log message for revision 77969:
Most of that code lives in zopeproject now. Just define a GrokApp template and depend
on zopeproject.
Changed:
U grokproject/branches/use-zopeproject/grokproject/__init__.py
U grokproject/branches/use-zopeproject/setup.py
-=-
Modified: grokproject/branches/use-zopeproject/grokproject/__init__.py
===================================================================
--- grokproject/branches/use-zopeproject/grokproject/__init__.py 2007-07-14 18:01:58 UTC (rev 77968)
+++ grokproject/branches/use-zopeproject/grokproject/__init__.py 2007-07-14 18:04:34 UTC (rev 77969)
@@ -1,29 +1,18 @@
-import sys
-import os.path
-import optparse
-import shutil
-import tempfile
-import pkg_resources
-from paste.script import templates, command
-from paste.script.templates import var, NoDefault
+from zopeproject.script import create_project
+from paste.script.templates import Template, var
-class GrokProject(templates.Template):
+class GrokApp(Template):
_template_dir = 'template'
- summary = "A grok project"
- required_templates = []
+ summary = 'Package that contains a Grok application'
+ required_templates = ['zope_deploy']
vars = [
var('module', 'Name of a demo Python module placed into the package',
- default='app.py'),
- var('user', 'Name of an initial administrator user', default=NoDefault),
- var('passwd', 'Password for the initial administrator user',
- default=NoDefault),
- var('eggs_dir', 'Location where zc.buildout will look for and place '
- 'packages', default=os.path.expanduser('~/buildout-eggs'))
+ default='app.py')
]
def check_vars(self, vars, cmd):
- vars = super(GrokProject, self).check_vars(vars, cmd)
+ vars = super(GrokApp, self).check_vars(vars, cmd)
module = vars['module']
if '.' in module:
if module.endswith('.py'):
@@ -36,83 +25,7 @@
"package name: %s." % vars['package']
print "Please choose a different project name."
sys.exit(1)
- vars['eggs_dir'] = os.path.expanduser(vars['eggs_dir'])
return vars
def main():
- usage = "usage: %prog [options] PROJECT"
- parser = optparse.OptionParser(usage=usage)
- parser.add_option('--no-buildout', action="store_true", dest="no_buildout",
- default=False, help="Only create project area, do not "
- "bootstrap the buildout.")
- parser.add_option('--svn-repository', dest="repos", default=None,
- help="Import project to given repository location (this "
- "will also create the standard trunk/ tags/ branches/ "
- "hierarchy).")
- parser.add_option('--newer', action="store_true", dest="newest",
- default=False, help="Check for newer versions of packages.")
- parser.add_option('-v', '--verbose', action="store_true", dest="verbose",
- default=False, help="Be verbose.")
- options, args = parser.parse_args()
- if len(args) != 1:
- parser.print_usage()
- return 1
-
- # create sandbox using paste.script
- project = args[0]
- commands = command.get_commands()
- cmd = commands['create'].load()
- runner = cmd('create')
-
- option_args = []
- if options.repos is not None:
- option_args.extend(['--svn-repository', options.repos])
- if not options.verbose:
- option_args.append('-q')
-
- extra_args = []
- if options.newest:
- extra_args.append('newest=true')
- else:
- extra_args.append('newest=false')
-
- exit_code = runner.run(option_args + ['-t', 'grokproject', project]
- + extra_args)
- # TODO exit_code
-
- if options.no_buildout:
- return
-
- os.chdir(project)
-
- extra_args = []
- if not options.verbose:
- extra_args.append('-q')
-
- try:
- import zc.buildout.buildout
- except ImportError:
- print "Downloading zc.buildout..."
-
- # Install buildout into a temporary location
- import setuptools.command.easy_install
- tmpdir = tempfile.mkdtemp()
- sys.path.append(tmpdir)
- setuptools.command.easy_install.main(extra_args +
- ['-mNxd', tmpdir, 'zc.buildout'])
-
- # Add downloaded buildout to PYTHONPATH by requiring it
- # through setuptools (this dance is necessary because the
- # temporary installation was done as multi-version).
- ws = pkg_resources.working_set
- ws.add_entry(tmpdir)
- ws.require('zc.buildout')
-
- import zc.buildout.buildout
- zc.buildout.buildout.main(extra_args + ['bootstrap'])
- shutil.rmtree(tmpdir)
- else:
- zc.buildout.buildout.main(extra_args + ['bootstrap'])
-
- print "Invoking zc.buildout..."
- zc.buildout.buildout.main(['-q', 'install'])
+ create_project('grok_app')
Modified: grokproject/branches/use-zopeproject/setup.py
===================================================================
--- grokproject/branches/use-zopeproject/setup.py 2007-07-14 18:01:58 UTC (rev 77968)
+++ grokproject/branches/use-zopeproject/setup.py 2007-07-14 18:04:34 UTC (rev 77969)
@@ -2,7 +2,7 @@
setup(
name='grokproject',
- version='0.5.2',
+ version='0.6',
author='Grok Team',
author_email='grok-dev at zope.org',
url='https://launchpad.net/grok',
@@ -14,11 +14,11 @@
packages=find_packages(),
include_package_data=True,
zip_safe=False,
- install_requires=['PasteScript>=1.3',],
+ install_requires=['zopeproject'],
entry_points="""
[console_scripts]
grokproject = grokproject:main
[paste.paster_create_template]
- grokproject = grokproject:GrokProject
+ grok_app = grokproject:GrokApp
""",
)
More information about the Checkins
mailing list