On Wed, Sep 19, 2012 at 2:06 PM, Cleber Rosa <[email protected]> wrote: > On 09/19/2012 01:43 PM, Lucas Meneghel Rodrigues wrote: >> >> This patch is a solution for bug #502 - drone_utility does not respect >> results directory. Drone manager will always use the base autotest >> install directory to write results to, making it write in an out of >> bounds area for the scheduler: >> >> OSError: [Errno 13] Permission denied: >> '/usr/lib/python2.7/site-packages/autotest/results' >> >> I first thought only choosing a different >> >> drone_installation_directory: /usr/lib/python2.7/site-packages/autotest >> >> In /etc/autotest/global_config.ini would help, but I just realized >> AUTOTEST_INSTALL_DIR is used for other purposes, such as locating >> autoserv, so this change would only cause the code to break further >> in the execution path. So if we have a common dir to write results >> to in global_config.ini, let's use it instead of >> drones.AUTOTEST_INSTALL_DIR. >> >> Signed-off-by: Lucas Meneghel Rodrigues <[email protected]> >> --- >> scheduler/drone_manager.py | 12 ++++++++++-- >> 1 file changed, 10 insertions(+), 2 deletions(-) >> >> diff --git a/scheduler/drone_manager.py b/scheduler/drone_manager.py >> index db57a09..d08980b 100644 >> --- a/scheduler/drone_manager.py >> +++ b/scheduler/drone_manager.py >> @@ -621,8 +621,16 @@ class DroneManager(object): >> if on_results_repository: >> base_dir = self._results_dir >> else: >> - base_dir = os.path.join(drones.AUTOTEST_INSTALL_DIR, >> - _DRONE_RESULTS_DIR_SUFFIX) >> + output_dir = >> global_config.global_config.get_config_value('COMMON', >> + >> 'test_output_dir', >> + >> default="") >> + if output_dir: >> + base_dir = os.path.join(output_dir, 'results') > > > ^ Nitpick: any reason for mixing _DRONE_RESULTS_DIR_SUFFIX and literal > 'results' string ?
No, just keeping what it was before. >> + else: >> + base_dir = drones.AUTOTEST_INSTALL_DIR >> + >> + base_dir = os.path.join(base_dir, _DRONE_RESULTS_DIR_SUFFIX) > > > ^ Wouldn't this result in something like "$test_output_dir/results/results" > ? Not sure if that's what you intended, but maybe changing > _DRONE_RESULTS_DIR_SUFFIX to something other than 'results' or dropping the > extra level seems to make sense. Yes, you're right. I have to drop the 'results' sufix. >> + >> return os.path.join(base_dir, path) >> > > > _______________________________________________ > Autotest-kernel mailing list > [email protected] > https://www.redhat.com/mailman/listinfo/autotest-kernel -- Lucas _______________________________________________ Autotest-kernel mailing list [email protected] https://www.redhat.com/mailman/listinfo/autotest-kernel
