summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Merge "Code cleanup"Jenkins2012-08-311-9/+7
|\
| * Code cleanupRay Chen2012-08-311-9/+7
| | | | | | | | | | | | Move the 'project' variable to the appropriate position. Change-Id: Ifc2f8fdd2d3887e68b4d537d30d17b8c61cfba20
* | Merge "Update zmq context cleanup to use term."Jenkins2012-08-311-1/+1
|\ \ | |/ |/|
| * Update zmq context cleanup to use term.Dan Prince2012-08-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Updates the RPC cleanup function for the zmq RPC driver to use Context.term() instead of Context.destroy(). This allows the Nova code to work with older versions (pre 2.1.10) of pyzmq. The Context term() function seems to do the job just as well as destroy() (and is also thread safe) so lets just use it instead. Fixes LP Bug #1044004. Change-Id: Ifadd2c19914abfe5dbb58310d21eb6c78563fb82
* | Merge "Allow non-string items in the creds dict."Jenkins2012-08-312-1/+8
|\ \
| * | Allow non-string items in the creds dict.Vishvananda Ishaya2012-08-202-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The generic checking in policy allows us to match against data from the creds_dict using a very simple syntax. For example, in policy.json if you had something like: "some_action": [["project_id:foo"]] it would only allow project foo to perform that action, but something like: "some_action": [["is_admin:True"]] where is_admin is a boolean fails. This modifies the check to convert the value to unicode before attempting to compare it. It includes a test. Fixes bug 1039132 Change-Id: I0e53a6ea2709212d4a1536f901bcf1e717a232ca
* | | Merge "Add nosehtmloutput as a test dependency."Jenkins2012-08-311-0/+1
|\ \ \
| * | | Add nosehtmloutput as a test dependency.Clark Boylan2012-08-211-0/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | Adding nosehtmloutput as a test dependency allows nose to output its results to an html file. This will be used by Jenkins to save logs on a different server. Change-Id: I7fcce74b358e27901b74922af35d4ea529366c81
* | / Fix PEP8 issues.lrqrun2012-08-291-8/+10
| |/ |/| | | | | | | | | Fix some pep8 issues in doc/source/conf.py make the code looks pretty. Change-Id: I2727a55ba2e1c0a8a517fd1e0a51b5005d2c535f
* | Regarding the mispelling of the Noble Narwhal.Matt Joyce2012-08-221-1/+1
|/ | | | | | | | | | | | | | | | | | | | The narwhal, or narwhale, Monodon monoceros, is a medium-sized toothed whale that lives year-round in the Arctic. One of two living species of whale in the Monodontidae family, along with the beluga whale, narwhal males are distinguished by a long, straight, helical tusk, actually an elongated upper left canine. Found primarily in Canadian Arctic and Greenlandic waters, rarely south of 65°N latitude, the narwhal is a uniquely specialized Arctic predator. In the winter, it feeds on benthic prey, mostly flatfish, at depths of up to 1500 m under dense pack ice. Narwhals have been harvested for over a thousand years by Inuit people in northern Canada and Greenland for meat and ivory, and a regulated subsistence hunt continues to this day. While populations appear stable, the narwhal has been deemed particularly vulnerable to climate change due to a narrow geographical range and specialized diet. Via Wikipedia Change-Id: I0aa6fb9a29f6e851eb2621d70d400e1505ae2d32
* Merge "Remove amqp import from rpc/test_common"Jenkins2012-08-201-1/+0
|\
| * Remove amqp import from rpc/test_commonEric Windisch2012-08-141-1/+0
| | | | | | | | | | | | This import is no longer used. Change-Id: I4683a5b173fecc345b27c43b6cace39b4b491e8b
* | Add threadgroup to manage timers and greenthreads.Angus Salkeld2012-08-203-8/+152
| | | | | | | | | | | | | | Part of blueprint service-infrastructure Change-Id: I40593b6ad13d99d9e63c8c04154a0dac5aced02e Signed-off-by: Angus Salkeld <asalkeld@redhat.com>
* | Add basic periodic task infrastructure.Angus Salkeld2012-08-203-1/+186
| | | | | | | | | | | | | | | | | | | | So the idea is Manager will inherit from PeriodTasks and create a timer to call run_periodic_tasks(). Part of blueprint service-infrastructure Signed-off-by: Angus Salkeld <asalkeld@redhat.com> Change-Id: I822b8501ad184d0e5885cada1a3d7a847e2ca12c
* | Add multiprocess service launcherAngus Salkeld2012-08-202-8/+319
| | | | | | | | | | | | | | Part of blueprint service-infrastructure Signed-off-by: Angus Salkeld <asalkeld@redhat.com> Change-Id: I848e8c91d2c331e5c78a176258318457a9041131
* | Add signal handling to service launcherAngus Salkeld2012-08-201-0/+41
| | | | | | | | | | | | | | Part of blueprint service-infrastructure Change-Id: Iff072199ebd3c1abcb4218c9b647f8bef75f934a Signed-off-by: Angus Salkeld <asalkeld@redhat.com>
* | Merge "Basic service launching infrastructure"Jenkins2012-08-202-0/+113
|\ \
| * | Basic service launching infrastructureAngus Salkeld2012-08-152-0/+113
| | | | | | | | | | | | | | | | | | | | | Part of blueprint service-infrastructure Change-Id: I4e97db2877be976b0c681da9ff0d331fbfb306b0 Signed-off-by: Angus Salkeld <asalkeld@redhat.com>
* | | Merge "Move manager.py and service.py into common."Jenkins2012-08-202-0/+96
|\| |
| * | Move manager.py and service.py into common.Angus Salkeld2012-08-152-0/+96
| |/ | | | | | | | | | | | | | | | | - Just start with the skeleton classes. Part of blueprint service-infrastructure Change-Id: I90fbff3805455d9d82aacf43257d74e4cb443042 Signed-off-by: Angus Salkeld <asalkeld@redhat.com>
* | Merge "Fix spelling typos"Jenkins2012-08-202-4/+4
|\ \
| * | Fix spelling typosRongzeZhu2012-08-172-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | Fixes for: * openstack/common/excutils.py * openstack/common/timeutils.py Change-Id: Ic747de783e64fae00edf5af64d1a79a4edcf8412
* | | Don't trap then re-raise ImportError.Monty Taylor2012-08-171-1/+1
|/ / | | | | | | | | | | | | | | | | When we catch ImportError, print a message, and then raise a new ImportError, we lose sane ability to read the traceback, and we gain nothing. Raising a new ImportError on Attribute or Value error is helpful, given the context in which we are working. Change-Id: I52f61405e63535bcc745c9d350aa0dfbae36a8ac
* | Remove unused importsRongzeZhu2012-08-163-5/+0
| | | | | | | | | | | | Fixes bug #1037578 Change-Id: I87dbd0bc5fe16a4416a676dc26f2446a54509bc1
* | Remove register_opts from client methodsEric Windisch2012-08-151-5/+0
|/ | | | | | | | | During the nova->common migration, it was required to call register_opts on every client RPC api call. This is no longer required with cfg.CONF. Change-Id: Ia46c5d54e68c4d86a87570b2caff0da9755ca931
* Merge "Rename FLAGS to CONF; Remove self.conf"Jenkins2012-08-141-16/+14
|\
| * Rename FLAGS to CONF; Remove self.confEric Windisch2012-08-061-16/+14
| | | | | | | | | | | | Remove all uses of self.conf and rename FLAGS to CONF. Change-Id: If7b3a3e69fe3c3d2c83033d2b44eb106794ef087
* | Merge "cfg: clean up None value handling"Jenkins2012-08-131-23/+13
|\ \
| * | cfg: clean up None value handlingMark McLoughlin2012-08-131-23/+13
| | | | | | | | | | | | | | | | | | | | | | | | Remove the need for an internal NoneValue class by making the existence of the 'default' or 'override' keys signify whether a default or override is set. Change-Id: Iacf49553df5ba8414307904a3ee334c7b8c55758
* | | Merge "Allow set_default and set_override to use None"Jenkins2012-08-132-4/+68
|\| |
| * | Allow set_default and set_override to use NoneVishvananda Ishaya2012-08-112-4/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current implementation interprets set_default('foo', None) and set_override('foo', None) as 'clear the existing default or override', which makes it impossible to override a value with None. This patch adds support for overriding with a None value by adding a special internal class. set_override('foo', None) will now override the existing value with None. This is a slight change to the existing behavior, so this patch adds two calls for the old functionality of clearing defaults and overrides. Example syntax for the new calls are shown below: conf.clear_default('foo') conf.clear_override('foo') The patch also updates the tests to reflect the change in functionality and adds new tests to verify the new functionality. Fixes bug 1035478 Change-Id: Iee5e20e44da9bef6b86e0483ab0b48b625fe503c
* | | Tilde expansion for --config-file and --config-dirMark McLoughlin2012-08-112-6/+51
|/ / | | | | | | | | | | | | | | | | Fixes bug #1012671 Allow a filename starting with ~ or ~user to be passed for --config-file or --config-dir. Change-Id: I67705401ed1c35c0cc2161095e36616552740aba
* | Merge "Make receiver spawning in impl_zmq more robust/clean."Jenkins2012-08-101-19/+26
|\ \
| * | Make receiver spawning in impl_zmq more robust/clean.Eric Windisch2012-08-011-19/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The receiver spawning had some faulty and complex logic which this patch improves. The old logic was logging detection of a zmq-receiver socket, although the code was also launching a receiver daemon. It was also doing dirty things such as intentionally doing a return to trigger a finally block. Change-Id: Ic044710679c43753240a2b9d909088af5317cbf4
* | | Support for marshalling datetime while preserving microseconds.SandyWalsh2012-08-102-0/+24
| | | | | | | | | | | | | | | | | | Needed for performance measurement via "inflight" service. Change-Id: I5c1a8395b4cbc5fc0f8649b3af8130f45dd401bb
* | | Merge "Add import_opt() method to ConfigOpts"Jenkins2012-08-105-0/+102
|\ \ \ | |_|/ |/| |
| * | Add import_opt() method to ConfigOptsMark McLoughlin2012-07-315-0/+102
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Related to blueprint cfg-global-object When using the global config object pattern, you often have modules which define options that are referenced in other options. So, for example if module A defined option 'foo' and module be needed to reference that option, you might do: import A print CONF.foo However, this makes it entirely unclear to the casual reader why module A was imported. Nova has a flags.DECLARE() function that helps with this problem by allowing you to do: flags.DECLARE('foo', 'A') The function simply imports module A and checks that the 'foo' option is now defined in the global config object. This is fine, but it is also implicit that this function applies to the global config object. Instead, let's do the following: CONF.import_opt('foo', 'A') Change-Id: I7b98f5be71068bbde70cc0eab991eaebb577de52
* | | Merge "Fix meaningless test case"Jenkins2012-08-061-1/+1
|\ \ \
| * | | Fix meaningless test caseMate Lakat2012-08-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Related to fixing bug 1031351 The testcase was meaningless. Change-Id: I7b88b86a600fac0c30bcac354262ac00593b495c
* | | | Add multiple-driver support to the notifier api.Andrew Bogott2012-08-0210-341/+159
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move all of the functionality previously provided by the list_notifier into the basic notifier api. Move and restructure tests accordingly. Remove the list_notifier file and test file. For bug 1025820 Change-Id: Idf7cb975dd78e9951188781622a4d10ca466b154
* | | Merge "Install a qualified except hook."Jenkins2012-08-022-6/+35
|\ \ \
| * | | Install a qualified except hook.Mate Lakat2012-08-012-6/+35
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | Fixes bug 1031351. As an Exception is raised, it was not visible in the log, because it wasn't qualified. The fix sets up the exception hook to be qualified as the product_name. Change-Id: Ie8061d003b05ea8b00db5d8ed8fa445ccc822942
* | | Merge "Copy eventlet_backdoor into common from nova."Jenkins2012-08-021-0/+78
|\ \ \
| * | | Copy eventlet_backdoor into common from nova.Angus Salkeld2012-08-021-0/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is debugging utility only used by service.py in nova. (needed in openstack-common to move service.py to common) Change-Id: I9a7a84a5f34517abf91d87e9d817d7e763e22829 Signed-off-by: Angus Salkeld <asalkeld@redhat.com>
* | | | Merge "Fix errors reported by pyflakes."Jenkins2012-08-021-3/+2
|\ \ \ \ | |/ / / |/| | |
| * | | Fix errors reported by pyflakes.Bhuvan Arumugam2012-08-011-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * openstack/common/setup.py get_reqs_from_files(): Remove unused variable. get_reqs_from_files(): Use local variables in a conventional way, to prevent errors like: local variable 'datestamp' is assigned to but never used. Change-Id: I44e137d383b96e1601b7bded1e36e84ff14a8f68
* | | | Merge "Remove bogus conf argument from create_consumer()"Jenkins2012-08-011-4/+2
|\ \ \ \
| * | | | Remove bogus conf argument from create_consumer()Mark McLoughlin2012-08-011-4/+2
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes bug #1031713 Commit 0b11668 in nova added a conf parameter to the create_consumer() method in the base class, but not to the implementations. Looks to be a random thinko. Change-Id: I92b87eed2f7708af696e02e229bf6daa0d305fdd
* | | | Merge "Use function registration for policy checks"Jenkins2012-08-012-102/+219
|\ \ \ \ | |_|/ / |/| | |
| * | | Use function registration for policy checksKevin L. Mitchell2012-07-302-102/+219
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The original policy framework allowed new policy checks to be created through inheritance. This is somewhat clunky and unnecessary in Python. This change refactors policy.py to allow new policy checks to be registered using an @register() decorator. One consequence is that HttpBrain is deprecated. Care has been taken to ensure backwards compatibility; deprecation warnings will be emitted for uses of HttpBrain or the inheritance- based checks. Change-Id: I3ccef5868906ef64a3c24d6c92533471e89682ba