Skip to content
Newer
Older
100644 99 lines (77 sloc) 2.84 KB
ab3d9bb base service and process, service startup
mmeisinger authored
1 ==================================================
2 LCAARCH - OOI Release 1 LCA architecture prototype
3 ==================================================
db03ff6 Bootstrap class and core service structure
mmeisinger authored
4
ab3d9bb base service and process, service startup
mmeisinger authored
5 April 2010
6
7 This project defines the services of the OOI release 1 system with their
8 architectural dependencies.
9
10 This project and relies on selected external packages, such as Magnet, etc.
db03ff6 Bootstrap class and core service structure
mmeisinger authored
11
4715758 removed test from boostrap, changed datastore for new msg format
mmeisinger authored
12 Get it with
ab3d9bb base service and process, service startup
mmeisinger authored
13 ::
14 git clone git@amoeba.ucsd.edu:lcaarch.git
4715758 removed test from boostrap, changed datastore for new msg format
mmeisinger authored
15
ab3d9bb base service and process, service startup
mmeisinger authored
16 Usage
17 =====
4715758 removed test from boostrap, changed datastore for new msg format
mmeisinger authored
18
d9eb8b7 package init, ts test
Michael Meisinger authored
19 (all subsequent steps assume start from lcaarch/ dir)
20
5b3b132 git asked me to update things, so commit again
mmeisinger authored
21 Start CC ("Magnet" Python Capability Container) shell with:
ab3d9bb base service and process, service startup
mmeisinger authored
22 ::
d9eb8b7 package init, ts test
Michael Meisinger authored
23 twistd -n magnet -h amoeba.ucsd.edu
3a84fde Bootstrap improvements, procutils, datastore test
mmeisinger authored
24
25 Start system by executing within the CC shell:
ab3d9bb base service and process, service startup
mmeisinger authored
26 ><>
27 from ion.core import bootstrap
28 bootstrap.start()
29
d9eb8b7 package init, ts test
Michael Meisinger authored
30 Alternatively from shell executing a script:
31 ::
32 twistd -n magnet -h amoeba.ucsd.edu res/scripts/bootstrap.py
33
b78736b changed readme; make sure to update and install latest magnet
Michael Meisinger authored
34 Run trial test cases (recursively)
d9eb8b7 package init, ts test
Michael Meisinger authored
35 ::
b78736b changed readme; make sure to update and install latest magnet
Michael Meisinger authored
36 trial ion.core
37 trial ion.services.coi.test.test_resource_registry
d9eb8b7 package init, ts test
Michael Meisinger authored
38 trial ion
39
ab3d9bb base service and process, service startup
mmeisinger authored
40
41 Install the dependencies: Magnet (see Magnet's Readme)
42 ======================================================
43 Recommendation:
44 Create a virtualenv for installing Magnet and its dependencies.
45
46 Twisted Python
47 --------------
48 ::
49 easy_install twisted
50
51 txAMQP
52 ------
53 ::
54 easy_install txamqp
55
56 carrot (use txamqp branch)
57 ----------------------
58 ::
59 git clone git://amoeba.ucsd.edu/carrot.git
60 (cd carrot; git checkout -b txamqp origin/txamqp)
61 (cd carrot; python setup.py install)
62
a3ec737 magnet version in readme
Michael Meisinger authored
63 Install the Magnet package [NEED Magent 0.3.3]:
64 -----------------------------------------------
ab3d9bb base service and process, service startup
mmeisinger authored
65 Get the latest version of the repository, if you haven't already.
66 ::
67 git clone git://amoeba.ucsd.edu/magnet.git # no ooi credential
68 # OR
69 git clone git@amoeba.ucsd.edu:magnet.git # need ooi credential
70 (cd magnet; git checkout -b space origin/space)
71 (cd magnet; python setup.py install)
b78736b changed readme; make sure to update and install latest magnet
Michael Meisinger authored
72
73
74 Note:
75 =====
76 This project dependes closely on magnet. Whenever you do a "git pull" on
77 this project, there is a chance that you need to update and install magnet
78 again (see above). Please review the branch logs for any cues.
c43dc6c Readme appended with last changes, OTP functions in base_process
Michael Meisinger authored
79
80
81 ---------------------------------------------------------------------------
82 Change log:
83 ===========
84
7a9f54a python 2.5 compatibility: changed .format to % and json import
Michael Meisinger authored
85 2010-05-10:
86 - Based on entries in config files, service process modules are sought and
87 loaded in order to collect the service process declarations. This enables
88 a registration of services with versions and dependencies on startup
c43dc6c Readme appended with last changes, OTP functions in base_process
Michael Meisinger authored
89 2010-05-06:
90 - Refactored the BaseProcess class.
91 - You can now do RPC directly from the process, via self.rpc_send without
5ea10a7 made IonTestCase and all tests PEP8 compliant
Michael Meisinger authored
92 the need for an RpcClient. Works even with other messages coming in at the
93 same time (using the conv-id)
c43dc6c Readme appended with last changes, OTP functions in base_process
Michael Meisinger authored
94 - Added aliases: self.send, self.reply (use these now)
95 - Process instance can be spawned via self.spawn()
96 - Provided an easier to use BaseServiceClient, which uses a default service
97 name lookup. Accepts BaseProcess instance as argument to use for sending/
98 receiving service calls.
Something went wrong with that request. Please try again.