From 5d698eda71e9d5a370ac7a95b92dbab9ef31d418 Mon Sep 17 00:00:00 2001 From: Csaba Henk Date: Thu, 7 Apr 2016 01:47:20 +0200 Subject: [PATCH] Work around log file upload EPERM issue The log files created during the Tempest run get scp-d to their final location via Ansible. Some root-owned log files are not readable for the Ansible process and that results in getting an EPERM and thus the gateway job is qualified as UNSTABLE. We don't have a hook in between the gluster invocations creating those log files and the call to the Ansible upload job, so we are not able to chmod the logs as needed. Instead we apply the following hack: we create and mount a VFAT file system onto the log directory where the trouble strikes; and VFAT does not implement POSIX file permissions therefore all files within it qualify as world readable. Change-Id: I9a85888166b5b9c28a049e7c17335e2082a61f92 --- manila/post_test_hook.sh | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/manila/post_test_hook.sh b/manila/post_test_hook.sh index 1bfa76b..9bf3a06 100755 --- a/manila/post_test_hook.sh +++ b/manila/post_test_hook.sh @@ -124,3 +124,18 @@ iniset $TEMPEST_CONFIG validation network_for_ssh ${PRIVATE_NETWORK_NAME:-"priva echo "Running tempest manila test suites" sudo -H -u jenkins tox -eall-plugin $MANILA_TESTS -- --concurrency=$MANILA_TEMPEST_CONCURRENCY + +_retval=$? + +# This is a hack to work around EPERM issue upon +# uploading log files: we ensure that the logs +# shall land in a VFAT mount, whereby POSIX file +# permissions are not implemented (everything is +# world readable). +install_package dosfstools +truncate -s 3g /tmp/fat.img +mkdosfs /tmp/fat.img +sudo mkdir "$WORKSPACE/logs/glusterfs" +sudo mount /tmp/fat.img "$WORKSPACE/logs/glusterfs" + +(exit $_retval)