Beispiel #1
0
    def resize_image_by_local(path=None, size=None):
        cmd = ' '.join(['/usr/bin/qemu-img', 'resize', '-f', 'qcow2', path, size.__str__() + 'G'])
        exit_status, output = Utils.shell_cmd(cmd)

        if exit_status != 0:
            err = u' '.join([u'路径', path, u'磁盘扩容时,命令执行退出异常:', str(output)])
            raise CommandExecFailed(err)
Beispiel #2
0
    def resize_image_by_glusterfs(cls, path=None, size=None):
        path = '/'.join(['gluster://127.0.0.1', cls.dfs_volume, path])

        cmd = ' '.join(['/usr/bin/qemu-img', 'resize', '-f', 'qcow2', path, size.__str__() + 'G'])
        exit_status, output = Utils.shell_cmd(cmd)

        if exit_status != 0:
            err = u' '.join([u'路径', path, u'磁盘扩容时,命令执行退出异常:', str(output)])
            raise CommandExecFailed(err)
Beispiel #3
0
    def image_info_by_local(path=None):
        cmd = ' '.join(['/usr/bin/qemu-img', 'info', '--output=json', '-f', 'qcow2', path, '2>/dev/null'])
        exit_status, output = Utils.shell_cmd(cmd)

        if exit_status != 0:
            err = u' '.join([u'路径', path, u'磁盘扩容时,命令执行退出异常:', str(output)])
            raise CommandExecFailed(err)

        return json.loads(output)
Beispiel #4
0
    def image_info_by_glusterfs(cls, path=None):
        path = '/'.join(['gluster://127.0.0.1', cls.dfs_volume, path])
        cmd = ' '.join(['/usr/bin/qemu-img', 'info', '--output=json', '-f', 'qcow2', path, '2>/dev/null'])
        exit_status, output = Utils.shell_cmd(cmd)

        if exit_status != 0:
            err = u' '.join([u'路径', path, u'磁盘扩容时,命令执行退出异常:', str(output)])
            raise CommandExecFailed(err)

        return json.loads(output)
Beispiel #5
0
    def make_image_by_local(path=None, size=None):

        if not os.path.isdir(os.path.dirname(path)):
            os.makedirs(os.path.dirname(path), 0755)

        cmd = ' '.join(['/usr/bin/qemu-img', 'create', '-f', 'qcow2', path, size.__str__() + 'G'])
        exit_status, output = Utils.shell_cmd(cmd)

        if exit_status != 0:
            err = u' '.join([u'路径', path, u'创建磁盘时,命令执行退出异常:', str(output)])
            raise CommandExecFailed(err)
Beispiel #6
0
    def resize_qemu_image_by_local(image_path, size):
        cmd = ' '.join(['/usr/bin/qemu-img', 'resize', '-f', 'qcow2', image_path, size.__str__() + 'G'])
        exit_status, output = Utils.shell_cmd(cmd)

        if exit_status != 0:
            log = u' '.join([u'路径', image_path, u'磁盘扩容时,命令执行退出异常:', str(output)])
            logger.error(msg=log)
            log_emit.error(msg=log)
            raise CommandExecFailed(log)

        return True
Beispiel #7
0
    def disk_info_by_local(image_path):
        cmd = ' '.join(['/usr/bin/qemu-img', 'info', '--output=json', '-f', 'qcow2', image_path, '2>/dev/null'])
        exit_status, output = Utils.shell_cmd(cmd)

        if exit_status != 0:
            log = u' '.join([u'路径', image_path, u'磁盘扩容时,命令执行退出异常:', str(output)])
            logger.error(msg=log)
            log_emit.error(msg=log)
            raise CommandExecFailed(log)

        return json.loads(output)
Beispiel #8
0
    def make_image_by_glusterfs(cls, path=None, size=None):

        if not cls.gf.isdir(os.path.dirname(path)):
            cls.gf.makedirs(os.path.dirname(path), 0755)

        path = '/'.join(['gluster://127.0.0.1', cls.dfs_volume, path])

        cmd = ' '.join(['/usr/bin/qemu-img', 'create', '-f', 'qcow2', path, size.__str__() + 'G'])
        exit_status, output = Utils.shell_cmd(cmd)

        if exit_status != 0:
            err = u' '.join([u'路径', path, u'创建磁盘时,命令执行退出异常:', str(output)])
            raise CommandExecFailed(err)
Beispiel #9
0
    def resize_qemu_image_by_glusterfs(dfs_volume, image_path, size):
        image_path = '/'.join(['gluster://127.0.0.1', dfs_volume, image_path])

        cmd = ' '.join(['/usr/bin/qemu-img', 'resize', '-f', 'qcow2', image_path, size.__str__() + 'G'])
        exit_status, output = Utils.shell_cmd(cmd)

        if exit_status != 0:
            log = u' '.join([u'路径', image_path, u'磁盘扩容时,命令执行退出异常:', str(output)])
            logger.error(msg=log)
            log_emit.error(msg=log)
            raise CommandExecFailed(log)

        return True
Beispiel #10
0
    def make_qemu_image_by_local(image_path, size):

        if not os.path.isdir(os.path.dirname(image_path)):
            os.makedirs(os.path.dirname(image_path), 0755)

        cmd = ' '.join(['/usr/bin/qemu-img', 'create', '-f', 'qcow2', image_path, size.__str__() + 'G'])
        exit_status, output = Utils.shell_cmd(cmd)

        if exit_status != 0:
            log = u' '.join([u'路径', image_path, u'创建磁盘时,命令执行退出异常:', str(output)])
            logger.error(msg=log)
            log_emit.error(msg=log)
            raise CommandExecFailed(log)

        return True
Beispiel #11
0
    def make_qemu_image_by_glusterfs(gf, dfs_volume, image_path, size):

        if not gf.isdir(os.path.dirname(image_path)):
            gf.makedirs(os.path.dirname(image_path), 0755)

        image_path = '/'.join(['gluster://127.0.0.1', dfs_volume, image_path])

        cmd = ' '.join(['/usr/bin/qemu-img', 'create', '-f', 'qcow2', image_path, size.__str__() + 'G'])
        exit_status, output = Utils.shell_cmd(cmd)

        if exit_status != 0:
            log = u' '.join([u'路径', image_path, u'创建磁盘时,命令执行退出异常:', str(output)])
            logger.error(msg=log)
            log_emit.error(msg=log)
            raise CommandExecFailed(log)

        return True