update md5sum
[slapos.git] / setup.py
1 ##############################################################################
2 #
3 # Copyright (c) 2010-2013 Vifib SARL and Contributors. All Rights Reserved.
4 #
5 # WARNING: This program as such is intended to be used by professional
6 # programmers who take the whole responsibility of assessing all potential
7 # consequences resulting from its eventual inadequacies and bugs
8 # End users who are looking for a ready-to-use solution with commercial
9 # guarantees and support are strongly adviced to contract a Free Software
10 # Service Company
11 #
12 # This program is Free Software; you can redistribute it and/or
13 # modify it under the terms of the GNU General Public License
14 # as published by the Free Software Foundation; either version 3
15 # of the License, or (at your option) any later version.
16 #
17 # This program is distributed in the hope that it will be useful,
18 # but WITHOUT ANY WARRANTY; without even the implied warranty of
19 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 # GNU General Public License for more details.
21 #
22 # You should have received a copy of the GNU General Public License
23 # along with this program; if not, write to the Free Software
24 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
25 #
26 ##############################################################################
27 from setuptools import setup, find_packages
28 import glob
29 import os
30
31 version = '0.71.2-dev'
32 name = 'slapos.cookbook'
33 long_description = open("README.txt").read() + "\n" + \
34 open("CHANGES.txt").read() + "\n"
35
36 for f in sorted(glob.glob(os.path.join('slapos', 'recipe', 'README.*.txt'))):
37 long_description += '\n' + open(f).read() + '\n'
38
39 # extras_requires are not used because of
40 # https://bugs.launchpad.net/zc.buildout/+bug/85604
41 setup(name=name,
42 version=version,
43 description="SlapOS recipes.",
44 long_description=long_description,
45 classifiers=[
46 "Framework :: Buildout :: Recipe",
47 "Programming Language :: Python",
48 ],
49 keywords='slapos recipe',
50 license='GPLv3',
51 namespace_packages=['slapos', 'slapos.recipe'],
52 packages=find_packages(),
53 include_package_data=True,
54 install_requires=[
55 'lxml', # for full blown python interpreter
56 'netaddr', # to manipulate on IP addresses
57 'setuptools', # namespaces
58 'inotifyx', # to watch filesystem changes (used in lockfile)
59 'slapos.core', # uses internally
60 # 'slapos.toolbox', # needed for libcloud, cloudmgr, disabled for now
61 'xml_marshaller', # need to communication with slapgrid
62 'zc.buildout', # plays with buildout
63 'zc.recipe.egg', # for scripts generation
64 'pytz', # for timezone database
65 ],
66 zip_safe=True,
67 entry_points={
68 'zc.buildout': [
69 'addresiliency = slapos.recipe.addresiliency:Recipe',
70 'agent = slapos.recipe.agent:Recipe',
71 'apache.frontend = slapos.recipe.apache_frontend:Recipe',
72 'apache.zope.backend = slapos.recipe.apache_zope_backend:Recipe',
73 'apachephp = slapos.recipe.apachephp:Recipe',
74 'apacheproxy = slapos.recipe.apacheproxy:Recipe',
75 'certificate_authority = slapos.recipe.certificate_authority:Recipe',
76 'certificate_authority.request = slapos.recipe.certificate_authority:Request',
77 'check_page_content = slapos.recipe.check_page_content:Recipe',
78 'check_port_listening = slapos.recipe.check_port_listening:Recipe',
79 'check_url_available = slapos.recipe.check_url_available:Recipe',
80 'cloud9 = slapos.recipe.cloud9:Recipe',
81 'cloudooo.test = slapos.recipe.erp5_test:CloudoooRecipe',
82 'cron = slapos.recipe.dcron:Recipe',
83 'cron.d = slapos.recipe.dcron:Part',
84 'davstorage = slapos.recipe.davstorage:Recipe',
85 'downloader = slapos.recipe.downloader:Recipe',
86 'dropbear = slapos.recipe.dropbear:Recipe',
87 'dropbear.add_authorized_key = slapos.recipe.dropbear:AddAuthorizedKey',
88 'dropbear.client = slapos.recipe.dropbear:Client',
89 'dumpmdb = slapos.recipe.dumpmdb:Recipe',
90 'duplicity = slapos.recipe.duplicity:Recipe',
91 'egg_test = slapos.recipe.erp5_test:EggTestRecipe',
92 'equeue = slapos.recipe.equeue:Recipe',
93 'erp5.bootstrap = slapos.recipe.erp5_bootstrap:Recipe',
94 'erp5.promise = slapos.recipe.erp5_promise:Recipe',
95 'erp5.test = slapos.recipe.erp5_test:Recipe',
96 'erp5.update = slapos.recipe.erp5_update:Recipe',
97 'erp5scalabilitytestbed = slapos.recipe.erp5scalabilitytestbed:Recipe',
98 'erp5testnode = slapos.recipe.erp5testnode:Recipe',
99 'firefox = slapos.recipe.firefox:Recipe',
100 'fontconfig = slapos.recipe.fontconfig:Recipe',
101 'generate.mac = slapos.recipe.generatemac:Recipe',
102 'generate.password = slapos.recipe.generatepassword:Recipe',
103 'generic.cloudooo = slapos.recipe.generic_cloudooo:Recipe',
104 'generic.kumofs = slapos.recipe.generic_kumofs:Recipe',
105 'generic.memcached = slapos.recipe.generic_memcached:Recipe',
106 'generic.mysql = slapos.recipe.generic_mysql:Recipe',
107 'generic.mysql.wrap_update_mysql = slapos.recipe.generic_mysql:WrapUpdateMySQL',
108 'generic.mysql.wrap_mysqld = slapos.recipe.generic_mysql:WrapMySQLd',
109 'generic.varnish = slapos.recipe.generic_varnish:Recipe',
110 'generic.zope = slapos.recipe.generic_zope:Recipe',
111 'generic.zope.zeo.client = slapos.recipe.generic_zope_zeo_client:Recipe',
112 'gitinit = slapos.recipe.gitinit:Recipe',
113 'haproxy = slapos.recipe.haproxy:Recipe',
114 'helloworld = slapos.recipe.helloworld:Recipe',
115 'importmdb = slapos.recipe.importmdb:Recipe',
116 'ipv4toipv6 = slapos.recipe.6tunnel:FourToSix',
117 'ipv6toipv4 = slapos.recipe.6tunnel:SixToFour',
118 'java = slapos.recipe.java:Recipe',
119 'kumofs = slapos.recipe.kumofs:Recipe',
120 'kvm = slapos.recipe.kvm:Recipe',
121 'kvm.frontend = slapos.recipe.kvm_frontend:Recipe',
122 'lamp = slapos.recipe.lamp:Request',
123 'lamp.request = slapos.recipe.lamp:Request',
124 'lamp.simple = slapos.recipe.lamp:Simple',
125 'lamp.static = slapos.recipe.lamp:Static',
126 'libcloud = slapos.recipe.libcloud:Recipe',
127 'libcloudrequest = slapos.recipe.libcloudrequest:Recipe',
128 'lockfile = slapos.recipe.lockfile:Recipe',
129 'logrotate = slapos.recipe.logrotate:Recipe',
130 'logrotate.d = slapos.recipe.logrotate:Part',
131 'memcached = slapos.recipe.memcached:Recipe',
132 'mkdirectory = slapos.recipe.mkdirectory:Recipe',
133 'mydumper = slapos.recipe.mydumper:Recipe',
134 'mysql = slapos.recipe.mysql:Recipe',
135 'nbdserver = slapos.recipe.nbdserver:Recipe',
136 'neoppod.admin = slapos.recipe.neoppod:Admin',
137 'neoppod.master = slapos.recipe.neoppod:Master',
138 'neoppod.storage = slapos.recipe.neoppod:Storage',
139 'nosqltestbed = slapos.recipe.nosqltestbed:NoSQLTestBed',
140 'notifier = slapos.recipe.notifier:Recipe',
141 'notifier.callback = slapos.recipe.notifier:Callback',
142 'notifier.notify = slapos.recipe.notifier:Notify',
143 'novnc = slapos.recipe.novnc:Recipe',
144 'onetimeupload = slapos.recipe.onetimeupload:Recipe',
145 'pbs = slapos.recipe.pbs:Recipe',
146 'postgres = slapos.recipe.postgres:Recipe',
147 'postgres.export = slapos.recipe.postgres.backup:ExportRecipe',
148 'postgres.import = slapos.recipe.postgres.backup:ImportRecipe',
149 'proactive = slapos.recipe.proactive:Recipe',
150 'publish = slapos.recipe.publish:Recipe',
151 'publish.serialised = slapos.recipe.publish:Serialised',
152 'publishurl = slapos.recipe.publishurl:Recipe',
153 'pwgen = slapos.recipe.pwgen:Recipe',
154 'pwgen.stable = slapos.recipe.pwgen:StablePasswordGeneratorRecipe',
155 'request = slapos.recipe.request:Recipe',
156 'request.serialised = slapos.recipe.request:Serialised',
157 'requestoptional = slapos.recipe.request:RequestOptional',
158 'seleniumrunner = slapos.recipe.seleniumrunner:Recipe',
159 'sheepdogtestbed = slapos.recipe.sheepdogtestbed:SheepDogTestBed',
160 'shell = slapos.recipe.shell:Recipe',
161 'shellinabox = slapos.recipe.shellinabox:Recipe',
162 'signalwrapper= slapos.recipe.signal_wrapper:Recipe',
163 'simplelogger = slapos.recipe.simplelogger:Recipe',
164 'siptester = slapos.recipe.siptester:SipTesterRecipe',
165 'slapconfiguration = slapos.recipe.slapconfiguration:Recipe',
166 'slapconfiguration.serialised = slapos.recipe.slapconfiguration:Serialised',
167 'slapcontainer = slapos.recipe.container:Recipe',
168 'slapmonitor = slapos.recipe.slapmonitor:MonitorRecipe',
169 'slapmonitor-xml = slapos.recipe.slapmonitor:MonitorXMLRecipe',
170 'slapreport = slapos.recipe.slapreport:Recipe',
171 'slaprunner = slapos.recipe.slaprunner:Recipe',
172 'slaprunner.test = slapos.recipe.slaprunner:Test',
173 'softwaretype = slapos.recipe.softwaretype:Recipe',
174 'sphinx= slapos.recipe.sphinx:Recipe',
175 'sshkeys_authority = slapos.recipe.sshkeys_authority:Recipe',
176 'sshkeys_authority.request = slapos.recipe.sshkeys_authority:Request',
177 'stunnel = slapos.recipe.stunnel:Recipe',
178 'symbolic.link = slapos.recipe.symbolic_link:Recipe',
179 'tidstorage = slapos.recipe.tidstorage:Recipe',
180 'urlparse = slapos.recipe._urlparse:Recipe',
181 'uuid = slapos.recipe._uuid:Recipe',
182 'vifib = slapos.recipe.vifib:Recipe',
183 'waitfor = slapos.recipe.waitfor:Recipe',
184 'webchecker = slapos.recipe.web_checker:Recipe',
185 'wrapper = slapos.recipe.wrapper:Recipe',
186 'xvfb = slapos.recipe.xvfb:Recipe',
187 'xwiki = slapos.recipe.xwiki:Recipe',
188 'zabbixagent = slapos.recipe.zabbixagent:Recipe',
189 'zeo = slapos.recipe.zeo:Recipe',
190
191 ],
192 'slapos.recipe.nosqltestbed.plugin': [
193 'kumo = slapos.recipe.nosqltestbed.kumo:KumoTestBed',
194 ],
195 },
196 )