Repository URL to install this package:
Version:
3.3.42 ▾
|
ó ±EYc @ s@ d Z d d l Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l Z d d l m Z d d l m Z d d l m Z d d l m Z e j e Z e j j Z e j Z e j d d d d e j Z d d Z e d Z e d Z d Z! d Z" d Z# d Z$ d S( s Handling of VM disk images. iÿÿÿÿN( t processutils( t log( t fileutils( t imageutils( t units( t exception( t _( t image( t utilst cpu_timei t address_spacei c C s t j j | r: t j j d k r: t j d | n y¡ t j j | r t j j t j j | d r t j j | d } n d d d d d | f } | d k r¿ | d | f } n t j d t | \ } } Wnv t j k rS} | j d k r t d i | d 6| d 6} n t d i | d 6| d 6} t j d | n X| st d i | d 6| d 6} t j d | n t j | S( sA Return an object containing the parsed output from qemu-img info.t rbdt locations DiskDescriptor.xmls root.hdst envs LC_ALL=Cs LANG=Cs qemu-imgt infos -ft prlimiti÷ÿÿÿs? qemu-img aborted by prlimits when inspecting %(path)s : %(exp)st patht exps0 qemu-img failed to execute on %(path)s : %(exp)st reasons3 Failed to run qemu-img info on %(path)s : %(error)st errorN( t osR t existst CONFt libvirtt images_typeR t DiskNotFoundt isdirt joint NoneR t executet QEMU_IMG_LIMITSR t ProcessExecutionErrort exit_codeR t InvalidDiskInfoR t QemuImgInfo( R t formatt cmdt outt errR t msg( ( sE /home/tvault/.virtenv/lib/python2.7/site-packages/nova/virt/images.pyt qemu_img_info. s, %! c C s5 | d k r t d n t | | | | | d S( s Convert image to other format.s5 convert_image without input format is a security riskN( R t RuntimeErrort _convert_image( t sourcet destt in_formatt out_formatt run_as_root( ( sE /home/tvault/.virtenv/lib/python2.7/site-packages/nova/virt/images.pyt convert_imageR s c C s t | | d | | d S( sq Convert image to other format, doing unsafe automatic input format detection. Do not call this function. N( R* R ( R+ R, R. R/ ( ( sE /home/tvault/.virtenv/lib/python2.7/site-packages/nova/virt/images.pyt convert_image_unsafeZ s c C s¡ d d d | | | f } | d k r7 | d | f } n y t j d | | WnL t j k r } t d i | d 6| d 6} t j d | d | n Xd S( Ns qemu-imgt converts -Os -fR/ s. Unable to convert image to %(format)s: %(exp)sR# R t image_idR ( R R R R R R R t ImageUnacceptable( R+ R, R- R. R/ R$ R R' ( ( sE /home/tvault/.virtenv/lib/python2.7/site-packages/nova/virt/images.pyR* g s c C s0 t j | t j | | d | Wd QXd S( Nt dest_path( R t remove_path_on_errort IMAGE_APIt download( t contextt image_hrefR ( ( sE /home/tvault/.virtenv/lib/python2.7/site-packages/nova/virt/images.pyt fetchs s c C s t j | | S( N( R7 t get( R9 R: ( ( sE /home/tvault/.virtenv/lib/python2.7/site-packages/nova/virt/images.pyt get_infox s c C sÒ d | } t | | | t j | £t | } | j } | d k rl t j d t d d | n | j } | d k r´ t j d | d t d i | d 6| d 6 n | d k r¸t j r¸d | } t j d | | t j | ¾ y t | | | d Wn? t j k rN} t j d | d t d i | d 6 n Xt j | t | } | j d k rt j d | d t d | j n t j | | Wd QXn t j | | Wd QXd S( Ns %s.partR s 'qemu-img info' parsing failed.R3 s' fmt=%(fmt)s backed by: %(backing_file)st fmtt backing_filet raws %s.converteds %s was %s, converting to raws' Unable to convert image to raw: %(exp)sR s&