summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge "Switch to non-namespaced module imports"1.8.0Jenkins2015-03-121-1/+1
|\
| * Switch to non-namespaced module importsDavanum Srinivas2015-03-121-1/+1
| | | | | | | | Change-Id: Ib690450269c281409a095ed44bf5791d6c2a7cc5
* | Remove py33 env from default tox listDoug Hellmann2015-03-111-1/+1
| | | | | | | | | | | | | | We no longer need to test on Python 3.3, so remove that environment from the default list in the tox configuration. Change-Id: Icb3f22224678f9dad5de610a40d43fbef47be7ef
* | Add lockutils.get_lock_path() functionDoug Hellmann2015-03-112-1/+32
|/ | | | | | | | | Provide an API to discover the path being used to store external lock files. Tempest will use this to set up some additional locking and to test its own behavior. Other projects might use it for error reporting or other purposes. Change-Id: Iad40c67072333cc25a6d3e39d7535ff14b573504
* Imported Translations from Transifex1.7.0OpenStack Proposal Bot2015-03-093-0/+187
| | | | | | | For more information about this automatic import see: https://wiki.openstack.org/wiki/Translations/Infrastructure Change-Id: Iff47b4aff3a244b4cee6563630710a1bf41e16b9
* Updated from global requirementsOpenStack Proposal Bot2015-03-051-1/+1
| | | | Change-Id: I804cae52f65840682be2cbe9c51dfa8819692027
* Updated from global requirements1.6.0OpenStack Proposal Bot2015-02-201-1/+1
| | | | Change-Id: I68bde7dfa215ecf2abc390bae824f8f06f431738
* Merge "processutils: execute(): fix option incompatibility"Jenkins2015-02-172-1/+18
|\
| * processutils: execute(): fix option incompatibilityCsaba Henk2015-02-142-1/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Issue: simultaneous usage of 'shell' and 'run_as_root' options led to error. Cause: it's actually a concealed TypeError: in 'shell' mode the command argument is assumed to be a string, elsewhere a list/tuple. Fix: the command editing implied by 'run_as_root' is performed with care taken of above tacit type assumption. Change-Id: Iaba33e6fda67793ae2874ba278c990271ee5e47f Closes-Bug: #1382873
* | Merge "Drop use of namespaced oslo.i18n"Jenkins2015-02-171-2/+2
|\ \
| * | Drop use of namespaced oslo.i18nIan Cordasco2015-01-301-2/+2
| | | | | | | | | | | | | | | | | | Related-blueprint: drop-namespace-packages Change-Id: Ic8247cb896ba6337932d7a74618debd698584fa0
* | | Ability to set working directory1.5.0Davanum Srinivas2015-02-132-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently folks end up using os.chdir() (see bug listed below) as we are not exposing the subprocess.Popen's cwd parameter. It's better to add a cwd parameter in processutils.execute so folks do not have to issue chdir() before and after the processutils. execute and there's less scope for problem as documented in the bug. Closes-Bug: #1414530 Change-Id: Ia4c77593c0f8301e059b349290e8663614a7ccfd
* | | Add eventlet test check to new tests __init__.pyBen Nemec2015-02-061-0/+19
|/ / | | | | | | | | | | | | | | | | | | | | This is used to allow us to test both with and without eventlet. It wasn't copied to the new tests directory in the namespace move, which means that once the old tests go away eventlet won't be monkey patching even when we try to make it. Also, there's a race depending on whether the top-level tests are run first, or the new package ones. Change-Id: Ie2705c3d21625e594471f27eefc3ac3147390cb7
* | Updated from global requirementsOpenStack Proposal Bot2015-01-271-1/+1
| | | | | | | | Change-Id: Ic1d80de9e94f73fe01f942f2230a1f25a92f5f46
* | Updated from global requirementsOpenStack Proposal Bot2015-01-231-1/+1
| | | | | | | | Change-Id: I466ddfebafde7b6a249543efa6fa79e1891fc916
* | Update Oslo imports to remove namespace packageDoug Hellmann2015-01-214-6/+6
| | | | | | | | | | Change-Id: I4ec9b2a310471e4e07867073e9577731ac34027d Blueprint: drop-namespace-packages
* | Merge "Revert "Port processutils to Python 3""1.4.1Jenkins2015-01-143-36/+17
|\ \
| * | Revert "Port processutils to Python 3"Doug Hellmann2015-01-133-36/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 7c7493feb53429577efca2c4b0380af03ddc149b. This change breaks the API of execute() and breaks nova's tests. Closes-Bug: #1410348 Change-Id: I33fa9b4e6099f521e0de3cb4585016fd694c4548
* | | Merge "Bump to hacking 0.10"0.4.0Jenkins2015-01-133-3/+3
|\ \ \
| * | | Bump to hacking 0.10Ben Nemec2015-01-123-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | Only had to add a couple of newlines to the end of files. Change-Id: Ie7c31b3c9fc4ac00e8e3281888ab9faf84bc19c5
* | | | Merge "Updated from global requirements"Jenkins2015-01-121-1/+1
|\ \ \ \
| * | | | Updated from global requirementsOpenStack Proposal Bot2015-01-101-1/+1
| | |_|/ | |/| | | | | | | | | | Change-Id: I54a4ed67549c28f70e66b37f5915edfcbc7dd0f3
* | | | Merge "make time format for processutils match lockutils"Jenkins2015-01-111-1/+1
|\ \ \ \ | |/ / / |/| | |
| * | | make time format for processutils match lockutilsSean Dague2015-01-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Lockutils uses %0.3fs for time format, which gives us a convenient time in milliseconds. Process utils was an unbounded string which gives us times like: CMD "cat /proc/31599/cmdline" returned: 0 in 0.00526595115662s execute The super long time strings are mostly confusing, and millisecond accuracy should be sufficient for processutils. Change-Id: I57f21b18ab060a36c3d88b0c5a94430eafeb02a2
* | | | add watchdog moduleSean Dague2015-01-094-0/+150
| |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This provides the watchdog.watch function which is a contextmanager that can be used before doing operations that have a high risk of deadlocking or aberrantly taking huge amounts of time to complete (which could be the root cause for other issues). Unit tests require the use of sleep to make the timers pop either before or after the event in question. There is 1 second buffer that's encoded into each scenario which should be sufficient for unit tests (even in busy systems). If that turns into an issue later, the buffer can be increased (I was only seeing real skew of 1-2 ms locally). Change-Id: I79e39f8a4aa702627ca39bea3e6fc672134b8a72
* | | Updated from global requirementsOpenStack Proposal Bot2015-01-081-1/+1
| | | | | | | | | | | | Change-Id: I0140f1748b0113f77e0e3dbcf7caf1508299f0ca
* | | Merge "Add a reader/writer lock"Jenkins2015-01-063-0/+497
|\ \ \ | |/ / |/| |
| * | Add a reader/writer lockJoshua Harlow2014-12-193-0/+497
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Taskflow has a reader/writer lock that is likely useful to other projects; and it seems better at home in this module. The class provides a way to create reader/writer locks where there may be many readers at the same time (but only one writer). It does not allow (currently) for privilege escalation (but this could be added with limited support in the future). Change-Id: Ie763ef92f31c34869d83a533bc8761b0fbd77217
* | | Merge "test compatibility for old imports"Jenkins2014-12-261-0/+31
|\ \ \
| * | | test compatibility for old importsSean Dague2014-12-021-0/+31
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following test is for compatibility for the namespace move. Having this test in the oslo.concurrency tree will ensure that not only do the imports functionally work, but that hacking can pass on this test, which ensures that hacking is compatible after the namespace change. The previous patches to oslo.concurrency extensively used # noqa, which masked out the issue for oslo.concurrency, thus allowing the release to break other parts of OpenStack. Change-Id: Icd118a00a8ec0d9fb0bd9d60826676eec2a08f47 Related-Bug: #1398472
* | | Correct the translation domain for loading messagesDoug Hellmann2014-12-221-1/+1
| | | | | | | | | | | | Change-Id: If7fa8fd1915378bda3fc6e361049c2d90cdec8af
* | | Merge "Report import warnings where the import occurs"Jenkins2014-12-212-1/+33
|\ \ \
| * | | Report import warnings where the import occursDoug Hellmann2014-12-122-1/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Raise the number of levels we look up the stack to report where the import is happening. Change-Id: Ic7c2a0111c311e7feeddd7baff0ad7ec636542a4
* | | | Merge "Clean up API documentation"Jenkins2014-12-1610-35/+69
|\ \ \ \
| * | | | Clean up API documentationDoug Hellmann2014-12-1010-35/+69
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use explicit files instead of auto-generating them. Fail the build on a warning. Tweak titles and other headings. Add instructions for using lockutils-wrapper. Change-Id: Ie92ce14b33180d35d84bbd0998e61b659487481d
* | | | Don't use ConfigFilter for lockutilsIhar Hrachyshka2014-12-151-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In Neutron, we usually specify lock_path as: lock_path = $state_path/lock It turned out that ConfigFilter does not work correctly with substitution feature, so its usage blocks Neutron adoption of the library. The issue is also not specific to Neutron: any deployer should be able to use substitutions ($smth) in their configuration files without determining whether those configuration options he's interested in are defined as ConfigOpts or ConfigFilter. So the best short term approach to push forward the adoption of the library is to refrain from using ConfigFilter at least until there is consensus on how to support substitution feature with the class. Once oslo.config sorts the issue out, we may get back to using ConfigFilter for lockutils. Change-Id: I7b0b5c840381b2d9afc00ff116fee1d970743183 Closes-Bug: #1399897
* | | | Merge "Activate pep8 check that _ is imported"Jenkins2014-12-121-1/+0
|\ \ \ \
| * | | | Activate pep8 check that _ is importedJames Carey2014-12-111-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove the specification in tox.ini that _ is a builtin so that it will no longer assume that _ does not need to be imported. This helps ensure that the _ from i18n is used. Activating this check did not flag any violations. Change-Id: I34cf8b6358f59583cc178c029ebdd024f583dafe
* | | | | Merge "Drop requirements-py3.txt"Jenkins2014-12-122-18/+0
|\ \ \ \ \ | |_|_|_|/ |/| | | |
| * | | | Drop requirements-py3.txtVictor Stinner2014-12-112-18/+0
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The file was identical to requirements.txt, just reuse this one. Keep py33 and py34 sections in tox.ini, because eventlet is not tested yet on Python 3. Change-Id: I9e49b796692b71bf518e5fbd96b663329cc505b3
* | | | Port processutils to Python 3Victor Stinner2014-12-123-17/+36
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add encoding and errors parameters to execute() and ssh_execute(). By default, use the locale encoding in strict mode on Python 2, or the locale encoding with the 'surrogateescape' error handler on Python 3. Fix also unit tests to use bytes strings for stdin, stdout and stderr. Without this change, tests are failing with Python 3 when run with: PYTHON="python -bb" testr run Using -bb, Python 3 raises a TypeError when a bytes string is casted to a text string, which occurred in many places. Change-Id: I655d5abf932c9a104e3ab487e23c372377f7096a
* | | Updated from global requirementsOpenStack Proposal Bot2014-12-112-4/+4
|/ / | | | | | | Change-Id: I3abea460f228517807b0462e683ca56d9f971d6e
* | Workflow documentation is now in infra-manualJeremy Stanley2014-12-051-4/+3
| | | | | | | | | | | | | | Replace URLs for workflow documentation to appropriate parts of the OpenStack Project Infrastructure Manual. Change-Id: Iae073e56006cc04fb852cef0425cbade533e8cae
* | Merge "Remove noqa from test files"Jenkins2014-12-042-3/+3
|\ \
| * | Remove noqa from test filesDoug Hellmann2014-12-022-3/+3
| |/ | | | | | | Change-Id: I05e08726b014d307a7deb9b01cb5471009be7be4
* | Fix bug link in README.rstBen Nemec2014-12-021-1/+1
|/ | | | Change-Id: I606ba583ba845ac72299bdab7ccc58e6ed34cebc
* Add external lock fixture0.3.0Ben Nemec2014-11-262-0/+49
| | | | | | | | | | | | This was requested by consumers of the library so they don't have to enable external locks globally with the OSLO_LOCK_PATH env var, which can mask bugs in unit tests that have interdependencies because it makes every lock in any unit test shared. The new fixture allows a separate lock directory to be created for each test, and allows external locking to only be enabled for tests that need it. Change-Id: Iae7ce302e1a3a5ad90ca5310f5ac7a6164867637
* Add a TODO for retrying pull request #20Joshua Harlow2014-11-251-0/+3
| | | | | | | | | | Sometime in a future retrying version there will likely/hopefully exist a ability to more easily filter on specific exceptions; this commit adds a note to the upstream pull request that may add this feature. Change-Id: I44f1c9fe4fbbd5f77032ca7bfff4e2e6b7ff7622
* Allow the lock delay to be providedJoshua Harlow2014-11-203-31/+109
| | | | | | | | | | | | | | | | When a lock can't be acquired there is currently a hard coded delay (0.01) that is used before trying again, instead of having a hard coded delay we should allow this delay to be configured since having it set at a hard coded value can limit concurrency (if the delay is actually way to high) or cause to much contention (if the delay is actually way to low). This review adds on that logic and also uses the retrying library to perform the acquisition attempts (and associated failures when/if they occur); as well as shows logs after a given amount of time has elapsed with the logs being output at a given periodicity. Change-Id: Ideeefba1439ddd677c608d01becb4f6a0d4bc83d
* Allow for providing a customized semaphore containerJoshua Harlow2014-11-192-17/+78
| | | | | | | | | | | | | | | It can be undesirable to have a globally shared sempahore container, especially since oslo.concurrency can now be shared among many disjoint applications and libraries. When a single container is used it is now possible to have those disjoint applications/libraries collide on the same sempahore names. This is not a good pattern to continue with, so in order to move away from it allow a custom container to be provided (which defaults to the existing global one) so that users of oslo.concurrency may provide there own container if they so desire. Change-Id: I9aab42e21ba0f52997de3e7c9b0fea51db5c7289