All the evidence from [1] suggests that on opensuse swift-init is not
detaching the daemon process correctly. It's possible there's a pipe
still in play that somehow holds our ansible-streamer open.
This is a minimal fix to avoid swift-init. Although it's possible in
non-default paths to still use swift-init (and hence possibly hit
another variant of this issue), after discussions with swift
developers it was decided the intersection of tests running under our
current ansible, on suse, that would enable these services is
sufficiently small that this is the best course for now.
[1] https://storyboard.openstack.org/#!/story/2001528
Change-Id: I1b68c08c07cf6653ea58506f738cbe0054b38f3a
... | ... |
@@ -827,7 +827,8 @@ function start_swift { |
827 | 827 |
else |
828 | 828 |
# The container-sync daemon is strictly needed to pass the container |
829 | 829 |
# sync Tempest tests. |
830 |
- swift-init --run-dir=${SWIFT_DATA_DIR}/run container-sync start |
|
830 |
+ enable_service s-container-sync |
|
831 |
+ run_process s-container-sync "$SWIFT_BIN_DIR/swift-container-sync ${SWIFT_CONF_DIR}/container-server/1.conf" |
|
831 | 832 |
fi |
832 | 833 |
else |
833 | 834 |
swift-init --run-dir=${SWIFT_DATA_DIR}/run all restart || true |