[Checkins] SVN: zope.kgs/trunk/ Upload skeleton, so that I can svn cp the existing files into it.

Stephan Richter srichter at cosmos.phy.tufts.edu
Thu Nov 15 17:01:15 EST 2007


Log message for revision 81863:
  Upload skeleton, so that I can svn cp the existing files into it.
  

Changed:
  A   zope.kgs/trunk/
  A   zope.kgs/trunk/CHANGES.txt
  A   zope.kgs/trunk/README.txt
  A   zope.kgs/trunk/bootstrap.py
  A   zope.kgs/trunk/buildout.cfg
  A   zope.kgs/trunk/setup.py
  A   zope.kgs/trunk/src/
  A   zope.kgs/trunk/src/zope/
  A   zope.kgs/trunk/src/zope/__init__.py
  A   zope.kgs/trunk/src/zope/kgs/
  A   zope.kgs/trunk/src/zope/kgs/__init__.py

-=-
Added: zope.kgs/trunk/CHANGES.txt
===================================================================
--- zope.kgs/trunk/CHANGES.txt	                        (rev 0)
+++ zope.kgs/trunk/CHANGES.txt	2007-11-15 22:01:15 UTC (rev 81863)
@@ -0,0 +1,14 @@
+=======
+CHANGES
+=======
+
+0.2.0 (2007-11-??)
+------------------
+
+- Initial version as ``zope.kgs``.
+
+  * Features copied from ``zope.release``:
+
+    + Parser for KGS configuration files.
+
+    + Generate `versions.cfg` and `buildout.cfg` script.


Property changes on: zope.kgs/trunk/CHANGES.txt
___________________________________________________________________
Name: svn:eol-style
   + native

Added: zope.kgs/trunk/README.txt
===================================================================
--- zope.kgs/trunk/README.txt	                        (rev 0)
+++ zope.kgs/trunk/README.txt	2007-11-15 22:01:15 UTC (rev 81863)
@@ -0,0 +1,82 @@
+===============================
+Zope 3 Controlled Package Index
+===============================
+
+This package has been developed to support the maintenance of a stable set of
+Zope project distributions. It manages the controlled packages configuration
+file and supports the generation of buildout configuration files that can be
+used by developers.
+
+Another use of this package is to use it for testing new distributions against
+the index. Here is the workflow for testing a new package against stable set:
+
+1. Install the correct version of this package.
+
+   (a) Download the version of this package that manages the stable set that
+       you are interested in. Currently only the trunk exists, which manages
+       the Zope 3.4 release::
+
+         $ svn co svn://svn.zope.org/repos/main/zope.release/trunk zope3.4
+         $ cd zope3.4
+
+   (b) Bootstrap the checkout::
+
+         $ python ./bootstrap.py
+
+   (c) Run buildout to create the scripts::
+
+         $ ./bin/buildout
+
+   (d) Run the ``buildout.cfg`` generation script to build a configuration
+       file that can be used for testing:
+
+         $ ./bin/generate-buildout
+
+2. From the generated configuration file, you can now build a testing
+   environment.
+
+   (a) Enter the test directory and create a buildout:
+
+         $ cd test
+         $ python ../bootstrap.py
+         $ ./bin/buildout
+
+   (b) Run all the tests to verify that all tests are initially passing:
+
+         $ ./bin/test -vpc1
+
+3. Modify the ``buildout.cfg`` to look for your the new distribution to be
+   tested:
+
+   (a) Comment out the "index" option. This needs to be done, so that the new
+       package is going to be picked up.
+
+   (b) Change the version number of the package of interest in the "versions"
+       section.
+
+   Alternative:
+
+   (a) Check out the new distribution from SVN.
+
+   (b) Add a "develop path/to/my/package" line in the "buildout" section of
+       ``buildout.cfg``.
+
+4. Run the tests, making sure that they all pass.
+
+5. Modify ``controlled-packages.cfg`` by adding the new version of the package
+   to the package's version list.
+
+6. Generate all files again and upload them:
+
+     $ cd ..
+     $ ./bin/generate-buildout
+     $ ./bin/generate-versions
+     $ ./bin//upload
+
+   Once the files are uploaded, a crontab-job, running every minute, will
+   detect the changes in ``controlled-pages.cfg`` and will generate the new
+   controlled package pages.
+
+Note: I think the process is still a tiny bit too long. I probably write a
+script that makes testing a new version of a package easier, but let's see
+whether this process is workable first.


Property changes on: zope.kgs/trunk/README.txt
___________________________________________________________________
Name: svn:eol-style
   + native

Added: zope.kgs/trunk/bootstrap.py
===================================================================
--- zope.kgs/trunk/bootstrap.py	                        (rev 0)
+++ zope.kgs/trunk/bootstrap.py	2007-11-15 22:01:15 UTC (rev 81863)
@@ -0,0 +1,52 @@
+##############################################################################
+#
+# Copyright (c) 2007 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()
+
+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)


Property changes on: zope.kgs/trunk/bootstrap.py
___________________________________________________________________
Name: svn:keywords
   + Id

Added: zope.kgs/trunk/buildout.cfg
===================================================================
--- zope.kgs/trunk/buildout.cfg	                        (rev 0)
+++ zope.kgs/trunk/buildout.cfg	2007-11-15 22:01:15 UTC (rev 81863)
@@ -0,0 +1,22 @@
+[buildout]
+develop = .
+index = http://download.zope.org/zope3.4
+parts = test generate-buildout generate-versions
+
+[test]
+recipe = zc.recipe.testrunner
+eggs = zope.kgs [test]
+
+[generate-buildout]
+recipe = zc.recipe.egg:scripts
+eggs = zope.kgs
+scripts = generate-buildout
+arguments = ('controlled-packages.cfg',
+             './test/buildout.cfg')
+
+[generate-versions]
+recipe = zc.recipe.egg:scripts
+eggs = zope.kgs
+scripts = generate-versions
+arguments = ('controlled-packages.cfg',
+             './test/versions.cfg')

Added: zope.kgs/trunk/setup.py
===================================================================
--- zope.kgs/trunk/setup.py	                        (rev 0)
+++ zope.kgs/trunk/setup.py	2007-11-15 22:01:15 UTC (rev 81863)
@@ -0,0 +1,60 @@
+##############################################################################
+#
+# Copyright (c) 2007 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.
+#
+##############################################################################
+"""Setup for ``zope.kgs`` project"""
+import os
+from setuptools import setup, find_packages
+
+def read(*rnames):
+    return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
+
+setup(name='zope.kgs',
+      version = '0.2.0',
+      author='Zope Corporation and Contributors',
+      author_email='zope3-dev at zope.org',
+      description='Known-Good-Set (KGS) Support',
+      long_description=(
+          read('README.txt')
+          + '\n\n' +
+          read('src', 'zope', 'kgs', 'README.txt')
+          + '\n\n' +
+          read('CHANGES.txt')
+          ),
+      keywords = "zope3 setuptools egg kgs",
+      classifiers = [
+          'Development Status :: 4 - Beta',
+          'Intended Audience :: Developers',
+          'License :: OSI Approved :: Zope Public License',
+          'Programming Language :: Python',
+          'Natural Language :: English',
+          'Operating System :: OS Independent',
+          'Topic :: Internet :: WWW/HTTP',
+          'Framework :: Zope3'],
+      url='http://cheeseshop.python.org/pypi/zope.kgs',
+      license='ZPL 2.1',
+      packages=find_packages('src'),
+      package_dir = {'': 'src'},
+      namespace_packages=['zope'],
+      extras_require = dict(
+          test=['zope.testing']),
+      install_requires=[
+          'setuptools',
+          'zc.buildout',
+          ],
+      entry_points = dict(console_scripts=[
+          'generate-buildout = zope.kgs.buildout:main',
+          'generate-versions = zope.kgs.version:main',
+          ]),
+      include_package_data = True,
+      zip_safe = False,
+      )


Property changes on: zope.kgs/trunk/setup.py
___________________________________________________________________
Name: svn:keywords
   + Id

Added: zope.kgs/trunk/src/zope/__init__.py
===================================================================
--- zope.kgs/trunk/src/zope/__init__.py	                        (rev 0)
+++ zope.kgs/trunk/src/zope/__init__.py	2007-11-15 22:01:15 UTC (rev 81863)
@@ -0,0 +1,7 @@
+# this is a namespace package
+try:
+    import pkg_resources
+    pkg_resources.declare_namespace(__name__)
+except ImportError:
+    import pkgutil
+    __path__ = pkgutil.extend_path(__path__, __name__)


Property changes on: zope.kgs/trunk/src/zope/__init__.py
___________________________________________________________________
Name: svn:keywords
   + Id

Added: zope.kgs/trunk/src/zope/kgs/__init__.py
===================================================================
--- zope.kgs/trunk/src/zope/kgs/__init__.py	                        (rev 0)
+++ zope.kgs/trunk/src/zope/kgs/__init__.py	2007-11-15 22:01:15 UTC (rev 81863)
@@ -0,0 +1 @@
+# Make a package.


Property changes on: zope.kgs/trunk/src/zope/kgs/__init__.py
___________________________________________________________________
Name: svn:keywords
   + Id



More information about the Checkins mailing list