[Checkins] SVN: grok/website/ Creating an initial development buildout for the Plone portion of the Grok web site.

Kevin Teague kevin at bud.ca
Fri Nov 2 02:22:46 EDT 2007


Log message for revision 81405:
  Creating an initial development buildout for the Plone portion of the Grok web site.

Changed:
  A   grok/website/
  A   grok/website/buildouts/
  A   grok/website/buildouts/development/
  A   grok/website/buildouts/development/README.txt
  A   grok/website/buildouts/development/bootstrap.py
  A   grok/website/buildouts/development/buildout.cfg
  A   grok/website/buildouts/development/src/
  A   grok/website/buildouts/production/

-=-
Added: grok/website/buildouts/development/README.txt
===================================================================
--- grok/website/buildouts/development/README.txt	                        (rev 0)
+++ grok/website/buildouts/development/README.txt	2007-11-02 06:22:46 UTC (rev 81405)
@@ -0,0 +1,49 @@
+Developing the Grok web site
+----------------------------
+
+To create a development environment to start working on the Plone portion
+of the Grok web site:
+
+ * Checkout the base buildout configuration from SVN:
+
+   svn co svn://svn.zope.org/repos/main/grok/website/buildouts/development \
+   grokplone
+
+ * Checkout the plonetheme.grok package in your src directory:
+
+    svn co https://svn.plone.org/svn/collective/plonetheme.grok/trunk \
+    src/plonetheme.grok
+
+ * Run the buildout:
+
+   cd grokplone
+   python bootstrap.py
+   ./bin/buildout
+
+ * Start up Zope:
+
+   ./bin/instance fg
+
+ * Create a new Plone instance using the ZMI and choose the "Grok theme for
+   Plone 3" extension profile. The username and password is grok:grok.
+
+   http://localhost:8080/manage
+
+ * Makes some changes in the src directory.
+   Restart some Zopes.
+   Do some tests.
+   Commit!
+
+
+To-Do
+-----
+
+ * Create a policy product that pulls in plonetheme.grok and installs
+   PloneHelpCenter. Adjust the buildout.
+
+ * The development buildout should install up some sample content to theme
+   against, etc.
+
+ * Create a production buildout.
+
+ * svn checkouts, should we use a buildout recipe to do this?

Added: grok/website/buildouts/development/bootstrap.py
===================================================================
--- grok/website/buildouts/development/bootstrap.py	                        (rev 0)
+++ grok/website/buildouts/development/bootstrap.py	2007-11-02 06:22:46 UTC (rev 81405)
@@ -0,0 +1,55 @@
+##############################################################################
+#
+# Copyright (c) 2006 Zope Corporation and Contributors.
+# All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (ZPL).  A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+##############################################################################
+"""Bootstrap a buildout-based project
+
+Simply run this script in a directory containing a buildout.cfg.
+The script accepts buildout command-line options, so you can
+use the -c option to specify an alternate configuration file.
+
+$Id$
+"""
+
+import os, shutil, sys, tempfile, urllib2
+
+tmpeggs = tempfile.mkdtemp()
+
+try:
+    import pkg_resources
+except ImportError:
+    ez = {}
+    exec urllib2.urlopen('http://peak.telecommunity.com/dist/ez_setup.py'
+                         ).read() in ez
+    ez['use_setuptools'](to_dir=tmpeggs, download_delay=0)
+
+    import pkg_resources
+
+cmd = 'from setuptools.command.easy_install import main; main()'
+if sys.platform == 'win32':
+    cmd = '"%s"' % cmd # work around spawn lamosity on windows
+
+ws = pkg_resources.working_set
+assert os.spawnle(
+    os.P_WAIT, sys.executable, sys.executable,
+    '-c', cmd, '-mqNxd', tmpeggs, 'zc.buildout',
+    dict(os.environ,
+         PYTHONPATH=
+         ws.find(pkg_resources.Requirement.parse('setuptools')).location
+         ),
+    ) == 0
+
+ws.add_entry(tmpeggs)
+ws.require('zc.buildout')
+import zc.buildout.buildout
+zc.buildout.buildout.main(sys.argv[1:] + ['bootstrap'])
+shutil.rmtree(tmpeggs)

Added: grok/website/buildouts/development/buildout.cfg
===================================================================
--- grok/website/buildouts/development/buildout.cfg	                        (rev 0)
+++ grok/website/buildouts/development/buildout.cfg	2007-11-02 06:22:46 UTC (rev 81405)
@@ -0,0 +1,54 @@
+[buildout]
+parts =
+    plone
+    zope2
+    productdistros
+    instance
+    zopepy
+find-links =
+    http://dist.plone.org
+    http://download.zope.org/ppix/
+    http://effbot.org/downloads
+eggs =
+    elementtree
+    plonetheme.grok
+develop =
+    src/plonetheme.grok
+
+[plone]
+recipe = plone.recipe.plone
+
+[zope2]
+recipe = plone.recipe.zope2install
+url = ${plone:zope2-url}
+
+[productdistros]
+recipe = plone.recipe.distros
+urls =
+    http://plone.org/products/plonehelpcenter/releases/1.5/plonehelpcenter-1-5-alpha1.tgz
+nested-packages =
+version-suffix-packages = 
+
+[instance]
+recipe = plone.recipe.zope2instance
+zope2-location = ${zope2:location}
+debug-mode = off
+verbose-security = off
+user = grok:grok
+eggs =
+    ${buildout:eggs}
+    ${plone:eggs}
+zcml =
+    plonetheme.grok
+products =
+    ${productdistros:location}
+    ${plone:products}
+
+[zopepy]
+recipe = zc.recipe.egg
+eggs = ${instance:eggs}
+interpreter = zopepy
+extra-paths = ${zope2:location}/lib/python
+scripts = zopepy
+
+



More information about the Checkins mailing list