Ejemplo n.º 1
0
    def test_make_logdirs__root_log_dir_and_host_log_dir_allow_full_write_access(
            self):
        try:
            if os.path.exists('.elasticbeanstalk'):
                shutil.rmtree('.elasticbeanstalk')

            enclosign_dir = '.elasticbeanstalk/logs'
            root_log_dir = '.elasticbeanstalk/logs/local'
            new_local_dir = '.elasticbeanstalk/logs/local/1234456'

            log.make_logdirs(root_log_dir, new_local_dir)

            if sys.version_info < (3, 0):
                local_dir_permissions = '040777'
                enclosing_dir_permissions = '040744'
            else:
                local_dir_permissions = '0o40777'
                enclosing_dir_permissions = '0o40744'

            self.assertEqual(enclosing_dir_permissions,
                             oct(os.stat(enclosign_dir).st_mode))
            self.assertEqual(local_dir_permissions,
                             oct(os.stat(root_log_dir).st_mode))
            self.assertEqual(local_dir_permissions,
                             oct(os.stat(new_local_dir).st_mode))

        finally:
            shutil.rmtree('.elasticbeanstalk')
Ejemplo n.º 2
0
    def test_make_logdirs(self, os, set_all_unrestricted_permissions,
                          remove_execute_access_mock):
        os.path.join.return_value = LATEST_SYMLINK

        log.make_logdirs(ROOT_LOG_DIR, HOST_LOG)

        os.path.join.assert_called_once_with(ROOT_LOG_DIR,
                                             log.LATEST_LOGS_DIRNAME)
        os.makedirs.assert_called_once_with(HOST_LOG)
        os.unlink.assert_called_with(LATEST_SYMLINK)
        os.symlink.assert_called_with(HOST_LOG, LATEST_SYMLINK)
Ejemplo n.º 3
0
    def _run(self, img_id):
        log_volume_map = self._get_log_volume_map()
        if log_volume_map:
            log.make_logdirs(self.pathconfig.logdir_path(), utils.anykey(log_volume_map))

        return commands.run_container(full_docker_path=self._get_full_docker_path(),
                                      image_id=img_id,
                                      envvars_map=self.final_envvars(),
                                      host_port=self.host_port,
                                      volume_map=log_volume_map,
                                      name=self.get_name())
Ejemplo n.º 4
0
 def _make_and_get_new_host_log(self):
     root_log_dir = self.pathconfig.logdir_path()
     hostlog_path = log.new_host_log_path(root_log_dir)
     log.make_logdirs(root_log_dir, hostlog_path)
     return hostlog_path