| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |
| |
| |
| | |
Change-Id: Ib690450269c281409a095ed44bf5791d6c2a7cc5
|
| |
| |
| |
| |
| |
| |
| | |
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
|
|/
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
For more information about this automatic import see:
https://wiki.openstack.org/wiki/Translations/Infrastructure
Change-Id: Iff47b4aff3a244b4cee6563630710a1bf41e16b9
|
|
|
|
| |
Change-Id: I804cae52f65840682be2cbe9c51dfa8819692027
|
|
|
|
| |
Change-Id: I68bde7dfa215ecf2abc390bae824f8f06f431738
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Related-blueprint: drop-namespace-packages
Change-Id: Ic8247cb896ba6337932d7a74618debd698584fa0
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| | |
Change-Id: Ic1d80de9e94f73fe01f942f2230a1f25a92f5f46
|
| |
| |
| |
| | |
Change-Id: I466ddfebafde7b6a249543efa6fa79e1891fc916
|
| |
| |
| |
| |
| | |
Change-Id: I4ec9b2a310471e4e07867073e9577731ac34027d
Blueprint: drop-namespace-packages
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This reverts commit 7c7493feb53429577efca2c4b0380af03ddc149b.
This change breaks the API of execute() and breaks nova's tests.
Closes-Bug: #1410348
Change-Id: I33fa9b4e6099f521e0de3cb4585016fd694c4548
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Only had to add a couple of newlines to the end of files.
Change-Id: Ie7c31b3c9fc4ac00e8e3281888ab9faf84bc19c5
|
|\ \ \ \ |
|
| | |_|/
| |/| |
| | | |
| | | | |
Change-Id: I54a4ed67549c28f70e66b37f5915edfcbc7dd0f3
|
|\ \ \ \
| |/ / /
|/| | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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
|
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | | |
Change-Id: I0140f1748b0113f77e0e3dbcf7caf1508299f0ca
|
|\ \ \
| |/ /
|/| | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
|\ \ \ |
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | | |
Change-Id: If7fa8fd1915378bda3fc6e361049c2d90cdec8af
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Raise the number of levels we look up the stack to report where the
import is happening.
Change-Id: Ic7c2a0111c311e7feeddd7baff0ad7ec636542a4
|
|\ \ \ \ |
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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
|
|\ \ \ \ |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
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
|
|\ \ \ \ \
| |_|_|_|/
|/| | | | |
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
|/ /
| |
| |
| | |
Change-Id: I3abea460f228517807b0462e683ca56d9f971d6e
|
| |
| |
| |
| |
| |
| |
| | |
Replace URLs for workflow documentation to appropriate parts of the
OpenStack Project Infrastructure Manual.
Change-Id: Iae073e56006cc04fb852cef0425cbade533e8cae
|
|\ \ |
|
| |/
| |
| |
| | |
Change-Id: I05e08726b014d307a7deb9b01cb5471009be7be4
|
|/
|
|
| |
Change-Id: I606ba583ba845ac72299bdab7ccc58e6ed34cebc
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|