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
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
Move the public API out of oslo.concurrency to oslo_concurrency. Retain
the ability to import from the old namespace package for backwards
compatibility for this release cycle.
bp/drop-namespace-packages
Change-Id: I20d1647b1c3ef8cab3b69eccfe168eeb01703b72