Mercurial > hg > buttercup
annotate buttercup/buttercup.py @ 37:8d67dbd068cd
add wsgintegrate to required software
author | Jeff Hammel <jhammel@mozilla.com> |
---|---|
date | Mon, 13 Jun 2011 07:23:26 -0700 |
parents | 2aa78e65d882 |
children | 1744fe69a129 |
rev | line source |
---|---|
18
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
1 """ |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
2 the flower blooming to k0s.org |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
3 """ |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
4 |
30
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
5 import os |
33 | 6 import source |
30
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
7 try: |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
8 from subprocess import check_call as call |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
9 except ImportError: |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
10 from subprocess import call |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
11 |
18
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
12 class Buttercup(object): |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
13 |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
14 # k0sware software |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
15 HG='http://k0s.org/hg' |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
16 PACKAGES=['bitsyapps', |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
17 'bitsyauth', |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
18 'bitsyblog', |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
19 'bitsytweet', |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
20 'buttercup', |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
21 'clwapp', |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
22 'commentator', |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
23 'contenttransformer', |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
24 'cropresize', |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
25 'decoupage', |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
26 'emaildispatcher', |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
27 'genshi_view', |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
28 'hgpaste', |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
29 'lxmlmiddleware', |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
30 'martINI', |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
31 'montage', |
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
32 'pyloader', |
36 | 33 'svgsitemap', |
18
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
34 'webob_view', |
37
8d67dbd068cd
add wsgintegrate to required software
Jeff Hammel <jhammel@mozilla.com>
parents:
36
diff
changeset
|
35 'wordstream', |
8d67dbd068cd
add wsgintegrate to required software
Jeff Hammel <jhammel@mozilla.com>
parents:
36
diff
changeset
|
36 'wsgintegrate'] |
18
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
37 |
30
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
38 def __init__(self, srcdir): |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
39 self.srcdir = srcdir |
31 | 40 self.sources = {'hg': ['%s/%s' % (self.HG, package) |
18
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
41 for package in self.PACKAGES ]} |
31 | 42 self.sources['git'] = ['git://github.com/mozilla/toolbox.git'] |
18
151862a0a711
begin restructuring to something more modular and extensible
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
43 |
30
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
44 def install(self): |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
45 """install all software needed for this flower""" |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
46 source_objs = source.sources(self.sources, srcdir=self.srcdir) |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
47 for source_obj in source_objs: |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
48 source_obj() # clone/update the software |
25
a54543838686
add test for source demunging
Jeff Hammel <jhammel@mozilla.com>
parents:
18
diff
changeset
|
49 |
30
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
50 def setup(self, source_objs=None): |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
51 """setup python packages for development""" |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
52 if source_objs is None: |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
53 source_objs = source.sources(self.sources, srcdir=self.srcdir) |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
54 for source_obj in source_objs: |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
55 if os.path.exists(os.path.join(source_obj.directory(), 'setup.py')): |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
56 call(['python', 'setup.py', 'develop'], cwd=source_obj.directory()) |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
57 |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
58 def deploy(self): |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
59 self.install() |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
60 self.setup() |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
61 |
6089d6ec745a
should now have a working flower; will test when i get internets again
Jeff Hammel <jhammel@mozilla.com>
parents:
25
diff
changeset
|
62 __call__ = deploy |