annotate setup.py @ 673:22bbda64c9f5

0.6dev: Follow-up to [746] - forgot the `svn:mimetype` property.
author osimons
date Sat, 05 Sep 2009 00:50:25 +0000
parents fe344dac8385
children c30ff14dcbd0 a9157ac17ff9
rev   line source
4
196009657e5e Simplify the recipe commands interface:
cmlenz
parents: 3
diff changeset
1 #!/usr/bin/env python
379
0df178e07fdb Use UTF-8 as encoding of source files.
cmlenz
parents: 365
diff changeset
2 # -*- coding: utf-8 -*-
5
738a0ae251f6 Added GPL boilerplate.
cmlenz
parents: 4
diff changeset
3 #
408
933105ab516b Update file headers and other stuff pointing to the old home.
cmlenz
parents: 393
diff changeset
4 # Copyright (C) 2007 Edgewall Software
933105ab516b Update file headers and other stuff pointing to the old home.
cmlenz
parents: 393
diff changeset
5 # Copyright (C) 2005-2007 Christopher Lenz <cmlenz@gmx.de>
163
634be6cbb808 Flip the switch: Bitten is now BSD-licensed.
cmlenz
parents: 160
diff changeset
6 # All rights reserved.
5
738a0ae251f6 Added GPL boilerplate.
cmlenz
parents: 4
diff changeset
7 #
163
634be6cbb808 Flip the switch: Bitten is now BSD-licensed.
cmlenz
parents: 160
diff changeset
8 # This software is licensed as described in the file COPYING, which
634be6cbb808 Flip the switch: Bitten is now BSD-licensed.
cmlenz
parents: 160
diff changeset
9 # you should have received as part of this distribution. The terms
408
933105ab516b Update file headers and other stuff pointing to the old home.
cmlenz
parents: 393
diff changeset
10 # are also available at http://bitten.edgewall.org/wiki/License.
4
196009657e5e Simplify the recipe commands interface:
cmlenz
parents: 3
diff changeset
11
412
84b8cde2dfd4 Start with documentation.
cmlenz
parents: 410
diff changeset
12 import os
99
efc1eed69ba8 Make Bitten deployable in Trac as a [http://peak.telecommunity.com/DevCenter/PythonEggs Python egg].
cmlenz
parents: 78
diff changeset
13 from setuptools import setup, find_packages
412
84b8cde2dfd4 Start with documentation.
cmlenz
parents: 410
diff changeset
14 import sys
6
9b57159428b0 Fix package list in {{{setup.py}}}.
cmlenz
parents: 5
diff changeset
15
412
84b8cde2dfd4 Start with documentation.
cmlenz
parents: 410
diff changeset
16 sys.path.append(os.path.join('doc', 'common'))
84b8cde2dfd4 Start with documentation.
cmlenz
parents: 410
diff changeset
17 try:
84b8cde2dfd4 Start with documentation.
cmlenz
parents: 410
diff changeset
18 from doctools import build_doc, test_doc
84b8cde2dfd4 Start with documentation.
cmlenz
parents: 410
diff changeset
19 except ImportError:
84b8cde2dfd4 Start with documentation.
cmlenz
parents: 410
diff changeset
20 build_doc = test_doc = None
84b8cde2dfd4 Start with documentation.
cmlenz
parents: 410
diff changeset
21
646
fe344dac8385 0.6dev: Workaround for bug with setuptools and multiprocess logging with Python 2.6.2+. Thanks to Hodgestar (irc) for report and patch.
osimons
parents: 598
diff changeset
22 # Turn off multiprocessing logging
fe344dac8385 0.6dev: Workaround for bug with setuptools and multiprocess logging with Python 2.6.2+. Thanks to Hodgestar (irc) for report and patch.
osimons
parents: 598
diff changeset
23 # Bug in setuptools/distutils test runner using Python 2.6.2+?
fe344dac8385 0.6dev: Workaround for bug with setuptools and multiprocess logging with Python 2.6.2+. Thanks to Hodgestar (irc) for report and patch.
osimons
parents: 598
diff changeset
24 import logging
fe344dac8385 0.6dev: Workaround for bug with setuptools and multiprocess logging with Python 2.6.2+. Thanks to Hodgestar (irc) for report and patch.
osimons
parents: 598
diff changeset
25 if hasattr(logging, 'logMultiprocessing'):
fe344dac8385 0.6dev: Workaround for bug with setuptools and multiprocess logging with Python 2.6.2+. Thanks to Hodgestar (irc) for report and patch.
osimons
parents: 598
diff changeset
26 logging.logMultiprocessing = 0
fe344dac8385 0.6dev: Workaround for bug with setuptools and multiprocess logging with Python 2.6.2+. Thanks to Hodgestar (irc) for report and patch.
osimons
parents: 598
diff changeset
27
213
25f84dd9f159 * Refactoring of build recipes, the file format has changed slightly:
cmlenz
parents: 205
diff changeset
28 NS = 'http://bitten.cmlenz.net/tools/'
598
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
29 recipe_commands = [
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
30 NS + 'sh#exec = bitten.build.shtools:exec_',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
31 NS + 'sh#pipe = bitten.build.shtools:pipe',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
32 NS + 'c#configure = bitten.build.ctools:configure',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
33 NS + 'c#autoreconf = bitten.build.ctools:autoreconf',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
34 NS + 'c#cppunit = bitten.build.ctools:cppunit',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
35 NS + 'c#cunit = bitten.build.ctools:cunit',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
36 NS + 'c#gcov = bitten.build.ctools:gcov',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
37 NS + 'c#make = bitten.build.ctools:make',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
38 NS + 'mono#nunit = bitten.build.monotools:nunit',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
39 NS + 'java#ant = bitten.build.javatools:ant',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
40 NS + 'java#junit = bitten.build.javatools:junit',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
41 NS + 'java#cobertura = bitten.build.javatools:cobertura',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
42 NS + 'php#phing = bitten.build.phptools:phing',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
43 NS + 'php#phpunit = bitten.build.phptools:phpunit',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
44 NS + 'php#coverage = bitten.build.phptools:coverage',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
45 NS + 'python#coverage = bitten.build.pythontools:coverage',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
46 NS + 'python#distutils = bitten.build.pythontools:distutils',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
47 NS + 'python#exec = bitten.build.pythontools:exec_',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
48 NS + 'python#figleaf = bitten.build.pythontools:figleaf',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
49 NS + 'python#pylint = bitten.build.pythontools:pylint',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
50 NS + 'python#trace = bitten.build.pythontools:trace',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
51 NS + 'python#unittest = bitten.build.pythontools:unittest',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
52 NS + 'svn#checkout = bitten.build.svntools:checkout',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
53 NS + 'svn#export = bitten.build.svntools:export',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
54 NS + 'svn#update = bitten.build.svntools:update',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
55 NS + 'hg#pull = bitten.build.hgtools:pull',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
56 NS + 'xml#transform = bitten.build.xmltools:transform'
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
57 ]
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
58 shared_args = {
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
59 'version': '0.6',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
60 'author': 'Edgewall Software',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
61 'author_email': 'info@edgewall.org',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
62 'license': 'BSD',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
63 'url':'http://bitten.edgewall.org/',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
64 'download_url': 'http://bitten.edgewall.org/wiki/Download',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
65 'zip_safe': False
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
66 }
408
933105ab516b Update file headers and other stuff pointing to the old home.
cmlenz
parents: 393
diff changeset
67
598
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
68 if __name__ == '__main__':
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
69 setup(
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
70 name = 'Bitten',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
71 description = 'Continuous integration for Trac',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
72 long_description = \
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
73 """A Trac plugin for collecting software metrics via continuous integration.""",
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
74
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
75 packages = find_packages(exclude=['*.tests*']),
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
76 package_data = {
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
77 'bitten': ['htdocs/*.*',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
78 'htdocs/charts_library/*.swf',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
79 'templates/*.html',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
80 'templates/*.txt']
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
81 },
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
82 test_suite = 'bitten.tests.suite',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
83 tests_require = [
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
84 'figleaf',
213
25f84dd9f159 * Refactoring of build recipes, the file format has changed slightly:
cmlenz
parents: 205
diff changeset
85 ],
598
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
86 entry_points = {
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
87 'console_scripts': [
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
88 'bitten-slave = bitten.slave:main'
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
89 ],
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
90 'distutils.commands': [
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
91 'unittest = bitten.util.testrunner:unittest'
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
92 ],
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
93 'trac.plugins': [
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
94 'bitten.admin = bitten.admin',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
95 'bitten.main = bitten.main',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
96 'bitten.master = bitten.master',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
97 'bitten.web_ui = bitten.web_ui',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
98 'bitten.testing = bitten.report.testing',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
99 'bitten.coverage = bitten.report.coverage',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
100 'bitten.lint = bitten.report.lint',
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
101 'bitten.notify = bitten.notify'
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
102 ],
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
103 'bitten.recipe_commands': recipe_commands
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
104 },
408
933105ab516b Update file headers and other stuff pointing to the old home.
cmlenz
parents: 393
diff changeset
105
598
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
106 cmdclass = {'build_doc': build_doc, 'test_doc': test_doc},
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
107
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
108 **shared_args
5f3e66e5b451 0.6dev: Running `python setup-slave.py install` now works for installing only the parts of Bitten needed by slave to run builds. Closes #383.
osimons
parents: 556
diff changeset
109 )
Copyright (C) 2012-2017 Edgewall Software