summaryrefslogtreecommitdiffstats
path: root/meta-openstack/recipes-devtools/python
diff options
context:
space:
mode:
authorVu Tran <vu.tran@windriver.com>2014-07-10 10:23:42 -0400
committerBruce Ashfield <bruce.ashfield@windriver.com>2014-07-17 00:14:05 -0400
commit526542c36d53d24c786a1d2e481176899f20bdff (patch)
tree51bd94562e634c777b8409d953e91ff9866c6ebb /meta-openstack/recipes-devtools/python
parent101462906de023d9a55800979986a509fa7a9347 (diff)
downloadmeta-cloud-services-526542c36d53d24c786a1d2e481176899f20bdff.tar.gz
introduce openstack Rally component
* Add Rally bb file * Add Rally deployment json config for existing deployment * Add task example * To use custom Rally config file Signed-off-by: Vu Tran <vu.tran@windriver.com>
Diffstat (limited to 'meta-openstack/recipes-devtools/python')
-rw-r--r--meta-openstack/recipes-devtools/python/python-rally/deployment-existing.json9
-rw-r--r--meta-openstack/recipes-devtools/python/python-rally/rally.conf446
-rw-r--r--meta-openstack/recipes-devtools/python/python-rally/rally.init95
-rw-r--r--meta-openstack/recipes-devtools/python/python-rally/task-example.json17
-rw-r--r--meta-openstack/recipes-devtools/python/python-rally_git.bb145
5 files changed, 712 insertions, 0 deletions
diff --git a/meta-openstack/recipes-devtools/python/python-rally/deployment-existing.json b/meta-openstack/recipes-devtools/python/python-rally/deployment-existing.json
new file mode 100644
index 0000000..8249860
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-rally/deployment-existing.json
@@ -0,0 +1,9 @@
1{
2 "type": "ExistingCloud",
3 "endpoint": {
4 "auth_url": "http://%CONTROLLER_IP%:5000/v2.0/",
5 "username": "%ADMIN_USER%",
6 "password": "%ADMIN_PASSWORD%",
7 "tenant_name": "%ADMIN_TENANT_NAME%"
8 }
9}
diff --git a/meta-openstack/recipes-devtools/python/python-rally/rally.conf b/meta-openstack/recipes-devtools/python/python-rally/rally.conf
new file mode 100644
index 0000000..1c1f864
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-rally/rally.conf
@@ -0,0 +1,446 @@
1[DEFAULT]
2
3#
4# Options defined in rally.exceptions
5#
6
7# make exception message format errors fatal (boolean value)
8#fatal_exception_format_errors=false
9
10
11#
12# Options defined in rally.openstack.common.lockutils
13#
14
15# Whether to disable inter-process locks (boolean value)
16#disable_process_locking=false
17
18# Directory to use for lock files. (string value)
19#lock_path=<None>
20
21
22#
23# Options defined in rally.openstack.common.log
24#
25
26# Print debugging output (set logging level to DEBUG instead
27# of default WARNING level). (boolean value)
28#debug=false
29
30# Print more verbose output (set logging level to INFO instead
31# of default WARNING level). (boolean value)
32#verbose=false
33
34# Log output to standard error (boolean value)
35#use_stderr=true
36
37# Format string to use for log messages with context (string
38# value)
39#logging_context_format_string=%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
40
41# Format string to use for log messages without context
42# (string value)
43#logging_default_format_string=%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
44
45# Data to append to log format when level is DEBUG (string
46# value)
47#logging_debug_format_suffix=%(funcName)s %(pathname)s:%(lineno)d
48
49# Prefix each line of exception output with this format
50# (string value)
51#logging_exception_prefix=%(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s
52
53# List of logger=LEVEL pairs (list value)
54#default_log_levels=amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN
55
56# Publish error events (boolean value)
57#publish_errors=false
58
59# Make deprecations fatal (boolean value)
60#fatal_deprecations=false
61
62# If an instance is passed with the log message, format it
63# like this (string value)
64#instance_format="[instance: %(uuid)s] "
65
66# If an instance UUID is passed with the log message, format
67# it like this (string value)
68#instance_uuid_format="[instance: %(uuid)s] "
69
70# The name of logging configuration file. It does not disable
71# existing loggers, but just appends specified logging
72# configuration to any other existing logging options. Please
73# see the Python logging module documentation for details on
74# logging configuration files. (string value)
75# Deprecated group/name - [DEFAULT]/log_config
76#log_config_append=<None>
77
78# DEPRECATED. A logging.Formatter log message format string
79# which may use any of the available logging.LogRecord
80# attributes. This option is deprecated. Please use
81# logging_context_format_string and
82# logging_default_format_string instead. (string value)
83#log_format=<None>
84
85# Format string for %%(asctime)s in log records. Default:
86# %(default)s (string value)
87#log_date_format=%Y-%m-%d %H:%M:%S
88
89# (Optional) Name of log file to output to. If no default is
90# set, logging will go to stdout. (string value)
91# Deprecated group/name - [DEFAULT]/logfile
92#log_file=<None>
93
94# (Optional) The base directory used for relative --log-file
95# paths (string value)
96# Deprecated group/name - [DEFAULT]/logdir
97log_dir=/var/log/rally
98
99# Use syslog for logging. Existing syslog format is DEPRECATED
100# during I, and then will be changed in J to honor RFC5424
101# (boolean value)
102#use_syslog=false
103
104# (Optional) Use syslog rfc5424 format for logging. If
105# enabled, will add APP-NAME (RFC5424) before the MSG part of
106# the syslog message. The old format without APP-NAME is
107# deprecated in I, and will be removed in J. (boolean value)
108#use_syslog_rfc_format=false
109
110# Syslog facility to receive log lines (string value)
111#syslog_log_facility=LOG_USER
112
113#
114# Options defined in rally.osclients
115#
116
117# HTTP timeout for any of OpenStack service in seconds
118#openstack_client_http_timeout=180.0
119
120# Use SSL for all OpenStack API interfaces
121#https_insecure=False
122
123# Path to CA server cetrificate for SSL
124#https_cacert=<None>
125
126[benchmark]
127
128#
129# Options defined in rally.benchmark.scenarios.cinder.utils
130#
131
132# Time to sleep after creating a resource before polling for
133# it status (floating point value)
134#cinder_volume_create_prepoll_delay=2.0
135
136# Time to wait for cinder volume to be created. (floating
137# point value)
138#cinder_volume_create_timeout=600.0
139
140# Interval between checks when waiting for volume creation.
141# (floating point value)
142#cinder_volume_create_poll_interval=2.0
143
144# Time to wait for cinder volume to be deleted. (floating
145# point value)
146#cinder_volume_delete_timeout=600.0
147
148# Interval between checks when waiting for volume deletion.
149# (floating point value)
150#cinder_volume_delete_poll_interval=2.0
151
152
153#
154# Options defined in rally.benchmark.scenarios.glance.utils
155#
156
157# Time to sleep after creating a resource before polling for
158# it status (floating point value)
159#glance_image_create_prepoll_delay=2.0
160
161# Time to wait for glance image to be created. (floating point
162# value)
163#glance_image_create_timeout=120.0
164
165# Interval between checks when waiting for image creation.
166# (floating point value)
167#glance_image_create_poll_interval=1.0
168
169# Time to wait for glance image to be deleted. (floating point
170# value)
171#glance_image_delete_timeout=120.0
172
173# Interval between checks when waiting for image deletion.
174# (floating point value)
175#glance_image_delete_poll_interval=1.0
176
177
178#
179# Options defined in rally.benchmark.scenarios.heat.utils
180#
181
182# Time to sleep after creating a resource before polling for
183# it status (floating point value)
184#heat_stack_create_prepoll_delay=2.0
185
186# Time to wait for heat stack to be created. (floating point
187# value)
188#heat_stack_create_timeout=3600.0
189
190# Interval between checks when waiting for stack creation.
191# (floating point value)
192#heat_stack_create_poll_interval=1.0
193
194# Time to wait for heat stack to be deleted. (floating point
195# value)
196#heat_stack_delete_timeout=3600.0
197
198# Interval between checks when waiting for stack deletion.
199# (floating point value)
200#heat_stack_delete_poll_interval=1.0
201
202
203#
204# Options defined in rally.benchmark.scenarios.nova.utils
205#
206
207# Time to sleep after start before polling for status
208# (floating point value)
209#nova_server_start_prepoll_delay=0.0
210
211# Server start timeout (floating point value)
212#nova_server_start_timeout=300.0
213
214# Server start poll interval (floating point value)
215#nova_server_start_poll_interval=1.0
216
217# Time to sleep after stop before polling for status (floating
218# point value)
219#nova_server_stop_prepoll_delay=0.0
220
221# Server stop timeout (floating point value)
222#nova_server_stop_timeout=300.0
223
224# Server stop poll interval (floating point value)
225#nova_server_stop_poll_interval=2.0
226
227# Time to sleep after boot before polling for status (floating
228# point value)
229#nova_server_boot_prepoll_delay=1.0
230
231# Server boot timeout (floating point value)
232#nova_server_boot_timeout=300.0
233
234# Server boot poll interval (floating point value)
235#nova_server_boot_poll_interval=1.0
236
237# Time to sleep after delete before polling for status
238# (floating point value)
239#nova_server_delete_prepoll_delay=2.0
240
241# Server delete timeout (floating point value)
242#nova_server_delete_timeout=300.0
243
244# Server delete poll interval (floating point value)
245#nova_server_delete_poll_interval=2.0
246
247# Time to sleep after reboot before polling for status
248# (floating point value)
249#nova_server_reboot_prepoll_delay=2.0
250
251# Server reboot timeout (floating point value)
252#nova_server_reboot_timeout=300.0
253
254# Server reboot poll interval (floating point value)
255#nova_server_reboot_poll_interval=2.0
256
257# Time to sleep after rescue before polling for status
258# (floating point value)
259#nova_server_rescue_prepoll_delay=2.0
260
261# Server rescue timeout (floating point value)
262#nova_server_rescue_timeout=300.0
263
264# Server rescue poll interval (floating point value)
265#nova_server_rescue_poll_interval=2.0
266
267# Time to sleep after unrescue before polling for status
268# (floating point value)
269#nova_server_unrescue_prepoll_delay=2.0
270
271# Server unrescue timeout (floating point value)
272#nova_server_unrescue_timeout=300.0
273
274# Server unrescue poll interval (floating point value)
275#nova_server_unrescue_poll_interval=2.0
276
277# Time to sleep after suspend before polling for status
278# (floating point value)
279#nova_server_suspend_prepoll_delay=2.0
280
281# Server suspend timeout (floating point value)
282#nova_server_suspend_timeout=300.0
283
284# Server suspend poll interval (floating point value)
285#nova_server_suspend_poll_interval=2.0
286
287# Time to sleep after image_create before polling for status
288# (floating point value)
289#nova_server_image_create_prepoll_delay=0.0
290
291# Server image_create timeout (floating point value)
292#nova_server_image_create_timeout=300.0
293
294# Server image_create poll interval (floating point value)
295#nova_server_image_create_poll_interval=2.0
296
297# Time to sleep after image_delete before polling for status
298# (floating point value)
299#nova_server_image_delete_prepoll_delay=0.0
300
301# Server image_delete timeout (floating point value)
302#nova_server_image_delete_timeout=300.0
303
304# Server image_delete poll interval (floating point value)
305#nova_server_image_delete_poll_interval=2.0
306
307
308[database]
309
310#
311# Options defined in rally.openstack.common.db.options
312#
313
314# The file name to use with SQLite (string value)
315#sqlite_db=rally.sqlite
316
317# If True, SQLite uses synchronous mode (boolean value)
318#sqlite_synchronous=true
319
320# The backend to use for db (string value)
321# Deprecated group/name - [DEFAULT]/db_backend
322#backend=sqlalchemy
323
324# The SQLAlchemy connection string used to connect to the
325# database (string value)
326# Deprecated group/name - [DEFAULT]/sql_connection
327# Deprecated group/name - [DATABASE]/sql_connection
328# Deprecated group/name - [sql]/connection
329connection=postgresql://%DB_USER%:%DB_PASSWORD%@localhost/rally
330
331# The SQL mode to be used for MySQL sessions. This option,
332# including the default, overrides any server-set SQL mode. To
333# use whatever SQL mode is set by the server configuration,
334# set this to no value. Example: mysql_sql_mode= (string
335# value)
336#mysql_sql_mode=TRADITIONAL
337
338# Timeout before idle sql connections are reaped (integer
339# value)
340# Deprecated group/name - [DEFAULT]/sql_idle_timeout
341# Deprecated group/name - [DATABASE]/sql_idle_timeout
342# Deprecated group/name - [sql]/idle_timeout
343#idle_timeout=3600
344
345# Minimum number of SQL connections to keep open in a pool
346# (integer value)
347# Deprecated group/name - [DEFAULT]/sql_min_pool_size
348# Deprecated group/name - [DATABASE]/sql_min_pool_size
349#min_pool_size=1
350
351# Maximum number of SQL connections to keep open in a pool
352# (integer value)
353# Deprecated group/name - [DEFAULT]/sql_max_pool_size
354# Deprecated group/name - [DATABASE]/sql_max_pool_size
355#max_pool_size=<None>
356
357# Maximum db connection retries during startup. (setting -1
358# implies an infinite retry count) (integer value)
359# Deprecated group/name - [DEFAULT]/sql_max_retries
360# Deprecated group/name - [DATABASE]/sql_max_retries
361#max_retries=10
362
363# Interval between retries of opening a sql connection
364# (integer value)
365# Deprecated group/name - [DEFAULT]/sql_retry_interval
366# Deprecated group/name - [DATABASE]/reconnect_interval
367#retry_interval=10
368
369# If set, use this value for max_overflow with sqlalchemy
370# (integer value)
371# Deprecated group/name - [DEFAULT]/sql_max_overflow
372# Deprecated group/name - [DATABASE]/sqlalchemy_max_overflow
373#max_overflow=<None>
374
375# Verbosity of SQL debugging information. 0=None,
376# 100=Everything (integer value)
377# Deprecated group/name - [DEFAULT]/sql_connection_debug
378#connection_debug=0
379
380# Add python stack traces to SQL as comment strings (boolean
381# value)
382# Deprecated group/name - [DEFAULT]/sql_connection_trace
383#connection_trace=false
384
385# If set, use this value for pool_timeout with sqlalchemy
386# (integer value)
387# Deprecated group/name - [DATABASE]/sqlalchemy_pool_timeout
388#pool_timeout=<None>
389
390# Enable the experimental use of database reconnect on
391# connection lost (boolean value)
392#use_db_reconnect=false
393
394# seconds between db connection retries (integer value)
395#db_retry_interval=1
396
397# Whether to increase interval between db connection retries,
398# up to db_max_retry_interval (boolean value)
399#db_inc_retry_interval=true
400
401# max seconds between db connection retries, if
402# db_inc_retry_interval is enabled (integer value)
403#db_max_retry_interval=10
404
405# maximum db connection retries before error is raised.
406# (setting -1 implies an infinite retry count) (integer value)
407#db_max_retries=20
408
409
410[image]
411
412#
413# Options defined in rally.verification.verifiers.tempest.config
414#
415
416# Version of cirros image (string value)
417#cirros_version=0.3.2
418
419# Cirros image name (string value)
420#cirros_image=cirros-0.3.2-x86_64-disk.img
421
422
423[rest]
424
425#
426# Options defined in rally.aas.rest
427#
428
429# The port for the Rally API server (integer value)
430#port=8877
431
432# The listen IP for the Rally API server (string value)
433#host=0.0.0.0
434
435
436[users_context]
437
438#
439# Options defined in rally.benchmark.context.users
440#
441
442# How many concurrent threads use for serving users context
443# (integer value)
444#concurrent=30
445
446
diff --git a/meta-openstack/recipes-devtools/python/python-rally/rally.init b/meta-openstack/recipes-devtools/python/python-rally/rally.init
new file mode 100644
index 0000000..e834547
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-rally/rally.init
@@ -0,0 +1,95 @@
1#!/bin/sh
2
3### BEGIN INIT INFO
4# Provides: rally
5# Required-Start: $remote_fs $syslog
6# Required-Stop: $remote_fs $syslog
7# Should-Start: postgresql rabbitmq-server
8# Should-Stop: postgresql rabbitmq-server
9# Default-Start: 3 5
10# Default-Stop: 0 1 2 6
11# Short-Description: OpenStack Block Storage (Rally) - API
12# Description: OpenStack Block Storage (Rally) - API
13### END INIT INFO
14
15SUFFIX=@suffix@
16DESC="rally-$SUFFIX"
17DAEMON="/usr/bin/rally-$SUFFIX"
18PIDFILE="/var/run/rally-$SUFFIX.pid"
19
20start()
21{
22 if [ -e $PIDFILE ]; then
23 PIDDIR=/proc/$(cat $PIDFILE)
24 if [ -d ${PIDDIR} ]; then
25 echo "$DESC already running."
26 exit 1
27 else
28 echo "Removing stale PID file $PIDFILE"
29 rm -f $PIDFILE
30 fi
31 fi
32
33 if [ ! -d /var/log/rally ]; then
34 mkdir /var/log/rally
35 fi
36
37 echo -n "Starting $DESC..."
38
39 start-stop-daemon --start --quiet --background \
40 --pidfile ${PIDFILE} --make-pidfile --exec ${DAEMON} \
41 -- --log-dir=/var/log/rally
42
43 if [ $? -eq 0 ]; then
44 echo "done."
45 else
46 echo "failed."
47 fi
48}
49
50stop()
51{
52 echo -n "Stopping $DESC..."
53 start-stop-daemon --stop --quiet --pidfile $PIDFILE
54 if [ $? -eq 0 ]; then
55 echo "done."
56 else
57 echo "failed."
58 fi
59 rm -f $PIDFILE
60}
61
62status()
63{
64 pid=`cat $PIDFILE 2>/dev/null`
65 if [ -n "$pid" ]; then
66 if ps -p $pid >&- ; then
67 echo "$DESC is running"
68 return
69 fi
70 fi
71 echo "$DESC is not running"
72}
73
74case "$1" in
75 start)
76 start
77 ;;
78 stop)
79 stop
80 ;;
81 restart|force-reload|reload)
82 stop
83 start
84 ;;
85 status)
86 status
87 ;;
88 *)
89 echo "Usage: $0 {start|stop|force-reload|restart|reload|status}"
90 exit 1
91 ;;
92esac
93
94exit 0
95
diff --git a/meta-openstack/recipes-devtools/python/python-rally/task-example.json b/meta-openstack/recipes-devtools/python/python-rally/task-example.json
new file mode 100644
index 0000000..381bb96
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-rally/task-example.json
@@ -0,0 +1,17 @@
1{
2 "Authenticate.keystone": [
3 {
4 "runner": {
5 "type": "constant",
6 "times": 100,
7 "concurrency": 5
8 },
9 "context": {
10 "users": {
11 "tenants": 3,
12 "users_per_tenant": 50
13 }
14 }
15 }
16 ]
17}
diff --git a/meta-openstack/recipes-devtools/python/python-rally_git.bb b/meta-openstack/recipes-devtools/python/python-rally_git.bb
new file mode 100644
index 0000000..811fd07
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-rally_git.bb
@@ -0,0 +1,145 @@
1DESCRIPTION = "Rally - OpenStack benchmarking at a scale - is intended to provide the \
2community with a benchmarking tool that is capable of performing specific, \
3complicated and reproducible test cases on real deployment scenarios."
4HOMEPAGE = "https://launchpad.net/rally"
5SECTION = "devel/python"
6LICENSE = "Apache-2.0"
7LIC_FILES_CHKSUM = "file://LICENSE;md5=19cbd64715b51267a47bf3750cc6a8a5"
8
9PR = "r0"
10SRCNAME = "rally"
11
12SRC_URI = "git://github.com/stackforge/${SRCNAME}.git;branch=master \
13 file://rally.init \
14 file://rally.conf \
15 file://task-example.json \
16 file://deployment-existing.json \
17"
18
19SRCREV="b297cf00750f263b8b5bdeb71f6952f672e87f5a"
20PV="git${SRCPV}"
21S = "${WORKDIR}/git"
22
23inherit setuptools update-rc.d hosts identity default_configs
24
25do_install_append() {
26 RALLY_CONF_DIR=${D}${sysconfdir}/${SRCNAME}
27 RALLY_PYTHON_SITEPACKAGES_DIR=${D}${PYTHON_SITEPACKAGES_DIR}/${SRCNAME}
28
29 install -d ${RALLY_CONF_DIR}
30 install -m 600 ${WORKDIR}/rally.conf ${RALLY_CONF_DIR}/rally.conf
31 sed -e "s:%DB_USER%:${DB_USER}:g" -i ${RALLY_CONF_DIR}/rally.conf
32 sed -e "s:%DB_PASSWORD%:${DB_PASSWORD}:g" -i ${RALLY_CONF_DIR}/rally.conf
33
34 if ${@base_contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
35 install -d ${D}${sysconfdir}/init.d
36 sed 's:@suffix@:api:' < ${WORKDIR}/rally.init > ${WORKDIR}/rally-api.init.sh
37 install -m 0755 ${WORKDIR}/rally-api.init.sh ${D}${sysconfdir}/init.d/rally-api
38 fi
39
40 install -d ${RALLY_PYTHON_SITEPACKAGES_DIR}
41 cp -r ${S}/tests* ${RALLY_PYTHON_SITEPACKAGES_DIR}
42 find ${RALLY_PYTHON_SITEPACKAGES_DIR}/tests* -name "*.py" | xargs \
43 sed -i 's:^from tests:from rally.tests:g'
44 install -d ${RALLY_PYTHON_SITEPACKAGES_DIR}/doc/samples
45 cp -r ${S}/doc/samples/* ${RALLY_PYTHON_SITEPACKAGES_DIR}/doc/samples
46
47 install -d ${RALLY_CONF_DIR}/tasks
48 install -m 600 ${WORKDIR}/task-example.json ${RALLY_CONF_DIR}/tasks/example.json
49
50 install -d ${RALLY_CONF_DIR}/deployments
51 install -m 600 ${WORKDIR}/deployment-existing.json ${RALLY_CONF_DIR}/deployments/existing.json
52 sed -e "s:%ADMIN_TENANT_NAME%:admin:g" -i ${RALLY_CONF_DIR}/deployments/existing.json
53 sed -e "s:%ADMIN_USER%:admin:g" -i ${RALLY_CONF_DIR}/deployments/existing.json
54 sed -e "s:%ADMIN_PASSWORD%:${ADMIN_PASSWORD}:g" -i ${RALLY_CONF_DIR}/deployments/existing.json
55 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${RALLY_CONF_DIR}/deployments/existing.json
56
57 cp ${S}/run_tests.sh ${RALLY_CONF_DIR}
58 cp -r ${S}/tools ${RALLY_CONF_DIR}
59}
60
61pkg_postinst_${SRCNAME}-setup () {
62 if [ "x$D" != "x" ]; then
63 exit 1
64 fi
65
66 # This is to make sure postgres is configured and running
67 if ! pidof postmaster > /dev/null; then
68 /etc/init.d/postgresql-init
69 /etc/init.d/postgresql start
70 fi
71
72 if [ ! -d /var/log/rally ]; then
73 mkdir /var/log/rally
74 fi
75
76 sudo -u postgres createdb rally
77 rally-manage db recreate
78}
79
80PACKAGES += "${SRCNAME}-tests ${SRCNAME}-api ${SRCNAME} ${SRCNAME}-setup"
81ALLOW_EMPTY_${SRCNAME}-setup = "1"
82
83FILES_${PN} = "${libdir}/*"
84
85FILES_${SRCNAME}-tests = "${sysconfdir}/${SRCNAME}/run_tests.sh \
86 "
87
88FILES_${SRCNAME} = "${bindir}/* \
89 ${sysconfdir}/${SRCNAME}/* \
90 "
91
92FILES_${SRCNAME}-api = "${bindir}/rally-api \
93 ${sysconfdir}/init.d/rally-api \
94 "
95
96DEPENDS += " \
97 python-pip \
98 python-pbr \
99 "
100
101RDEPENDS_${PN} += " python-babel \
102 python-decorator \
103 python-fixtures \
104 python-iso8601 \
105 python-jsonschema \
106 python-netaddr \
107 python-oslo.config \
108 python-paramiko \
109 python-pbr \
110 python-pecan \
111 python-prettytable \
112 python-pyyaml \
113 python-glanceclient \
114 python-keystoneclient \
115 python-novaclient \
116 python-neutronclient \
117 python-cinderclient \
118 python-heatclient \
119 python-ceilometerclient \
120 python-subunit \
121 python-requests \
122 python-sqlalchemy \
123 python-six \
124 python-wsme \
125 "
126
127RDEPENDS_${SRCNAME}-tests = "${PN} \
128 python-coverage \
129 python-mock \
130 python-testrepository \
131 python-testtools \
132 python-oslotest \
133 "
134
135RDEPENDS_${SRCNAME} = "${PN} \
136 postgresql \
137 postgresql-client \
138 "
139
140RDEPENDS_${SRCNAME}-setup = "postgresql sudo ${SRCNAME}"
141RDEPENDS_${SRCNAME}-api = "${SRCNAME}"
142
143INITSCRIPT_PACKAGES = "${SRCNAME}-api"
144INITSCRIPT_NAME_${SRCNAME}-api = "${SRCNAME}-api"
145INITSCRIPT_PARAMS_${SRCNAME}-api = "${OS_DEFAULT_INITSCRIPT_PARAMS}"