summaryrefslogtreecommitdiffstats
path: root/bin/nova-api-os-compute
Commit message (Collapse)AuthorAgeFilesLines
* Delete unused bin directoryJoe Gordon2013-06-031-22/+0
| | | | | | | | | | | | Delete last bits of bin/. With the move to entrypoints these aren't needed anymore. Update CONF.bindir to default to os.path.join(sys.prefix, 'local', 'bin') Part of blueprint entrypoints-plugins Change-Id: I95250d3779433e7b85aaa889a873b16c86a7d2be
* Move console scripts to entrypoints.Monty Taylor2013-04-041-40/+14
| | | | | | | | | | | | As part of the move of plugins to entrypoints, take advantage of the entrypoints based console scripts, which will make our command line scripts available for unittesting. Part of blueprint entrypoints-plugins Co-authored-by: Michael Still <mikal@stillhq.com> Change-Id: I5f17348b7b3cc896c92263dd518abb128757d81f
* Remove gettext.install() from nova/__init__.pyMark McLoughlin2013-04-011-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The gettext.install() function installs a builtin _() function which translates a string in the translation domain supplied to the install() function. If gettext.install() is called multiple times, it's the last call to the function which wins and the last supplied translation domain which is used e.g. >>> import os >>> os.environ['LANG'] = 'ja.UTF-8' >>> import gettext >>> gettext.install('keystone', unicode=1, localedir='/opt/stack/keystone/keystone/locale') >>> print _('Invalid syslog facility') 無効な syslog ファシリティ >>> gettext.install('nova', unicode=1, localedir='/opt/stack/nova/nova/locale') >>> print _('Invalid syslog facility') Invalid syslog facility Usually this function is called early on in a toplevel script and we assume that no other code will call it and override the installed _(). However, in Nova, we have taken a shortcut to avoid having to call it explicitly from each script and instead call it from nova/__init__.py. This shortcut would be perfectly fine if we were absolutely sure that nova modules would never be imported from another program. It's probably quite incorrect for a program to use nova code (indeed, if we wanted to support this, Nova code shouldn't use the default _() function) but nevertheless there are some corner cases where it happens. For example, the keystoneclient auth_token middleware tries to import cfg from nova.openstack.common and this in turn causes gettext.install('nova') in other projects like glance or quantum. To avoid any doubt here, let's just rip out the shortcut and always call gettext.install() from the top-level script. Change-Id: If4125d6bcbde63df95de129ac5c83b4a6d6f130a
* Remove nova.flags imports from bin/*Chris Behrens2012-11-151-1/+0
| | | | | | | | | | nova.flags is no longer needed except to load nova config options shared across multiple daemons. This removes nova.flags from the bin programs and makes sure that nova.flags is imported in nova.config for now. Change-Id: If066ac0070387bee4b41e6a78ad972f7a0955c75
* Move parse_args to nova.configMark McLoughlin2012-11-041-1/+2
| | | | | | | The flags module will eventually be removed and this is a first step towards that. Change-Id: I729b08900e53e2ae6db10633dcff3be59720fa6f
* Switch to common logging.Andrew Bogott2012-07-021-2/+2
| | | | | | I only just moved logging from nova to common, so behavior should remain the same. Change-Id: I1d7304ca200f9d024bb7244d25be2f9a670318fb
* Add multi-process support for API servicesJohannes Erdfelt2012-06-281-2/+2
| | | | | | | | | | | | | | | | | Implements blueprint multi-process-api-service This is based on Huang Zhiteng's patch. This patch adds support for running services as multiple processes. This is primarily intended to be used with the API service as a way to provide more concurrency than eventlet can sometimes provide. A SIGTERM or SIGINT signal will cause the parent process to gracefully terminate the child processes, allowing them to finish processing the requests currently being processed. The parent will wait for the children to finish before exiting. Change-Id: Ie6d6802626eb42d5e64c4167be363fbf6cea2a1b
* Revert "blueprint <multi-process-api-service>"James E. Blair2012-06-041-1/+1
| | | | | | | | This reverts commit e599636d09755f635604f64f17e9f56cac14575e The nova test runner is leaking processes after this change. Change-Id: Id74463d53f3b7cd749cba293619abef01499b90d
* blueprint <multi-process-api-service>Zhiteng Huang2012-06-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add multiprocess support for API serivces (EC2/OSAPI_Compute/OSAPI_Volume/Metadata). 2012-06-1 v7: * Add unittest to cover worker recovery, service termination functionality in wsgi.py, fix python 2.6 compatibility issue. * Modify generate_uid() to introduce per-process seeds in utils.py to avoid collisions. * Add worker session to nova.conf.sample. 2012-05-21 v6: * Fix 'test_wsgi' unittest error. 2012-04-28 v5: * Add SIGINT handler and fix child-parent race condition when Ctrl+C is pressed. 2012-03-31 v4: * Fixed typo, removed debug code. 2012-03-30 v3: * Fixed localization/pep8 error in unittest, add metadata test. * nova/wsgi.py:Server: use the greenthread pool created for each process. * nova/service.py: remove debug code 2012-03-27 v2: * Fixed unittest error. * nova/wsgi.py:Server: Use self._logger to do logging in multiprocess mode. * nova/wsgi.py:Server: Move self._pool creation into proper place. * code style fix. 2012-03-25 v1: * Modification to nova/service.py and nova/wsgi.py in order to support multiprocess (a.k.a. workers) for various API services. If multiprocess mode is enabled, (i.e. flags 'APINAME_workers' set to positive numbers), corresponding API service will run in target number of process(es). There is also a master_worker process spawned for managing all workers (handling signal/termination). * Add unittest for multiprocess API service, also alter testing/runner.py to adopt new unittest. Change-Id: Ia045e595543ddfd192894b2a05801cc4b7ca90cb
* Use cfg's new global CONF objectMark McLoughlin2012-05-301-2/+1
| | | | | | | | | | Implements blueprint cfg-global-object Replace nova.flags.FLAGS with openstack.common.cfg.CONF. In future, we can do a s/FLAGS/CONF/ across the codebase. Change-Id: Ib293873089a5399febd7a3b0410f66e9bef115f1
* Remove old flagfile support.Ghe Rivero2012-05-101-1/+1
| | | | | | | | | | | | | | | | | | | Implements blueprint remove-old-flagfile nova-manage can still be used to convert old flagfiles style files to new .ini files: $ ./bin/nova-manage config convert --help Usage: nova-manage config convert <args> [options] Options: -h, --help show this help message and exit --infile=<path> old-style flagfile to convert to config --outfile=<path> path for output file. Writes configto stdout if not specified. Change-Id: Ib8fbbd858b1db7faef70d7d97955e5042bf378f2 Signed-off-by: Ghe Rivero <ghe@debian.org>
* Implements blueprint separate-nova-volumeapiAnthony Young2012-01-131-0/+47
* Moves openstack/v2 directory to compute and fixes tests accordingly * Moves some code from api/openstack/compute to shared location, for use by volume api * Implements basic volume functionality for types, volumes, and snapshots * Changes service name from osapi to osapi_compute (and adds osapi_volume) * Renames nova-api-os to nova-api-os-compute, adds nove-api-os-volume * Separate extension mechanism for compute and volume ** Removes flag osapi_extension and replaces with osapi_compute_extension and osapi_volume_extension * Updates the paste config * Fixes setup.py to include nova-os-api-compute and nova-os-api-volume * Fix bug in volume version code that occurred as result of trunk merge * Update integrated/test_volumes.py to use new endpoint Change-Id: I4c2e57c3cafd4e1a9e2ff3ce201c8cf28326afcd