Repository URL to install this package:
|
Version:
2.5 ▾
|
ó
±EYc @ s¶ d d l m Z d d l m Z d d l Z d d l Z d d l m Z 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 d e j f d YZ d S( iÿÿÿÿ( t processutils( t logN( t _LEt _LW( t utils( t fst LibvirtNFSVolumeDriverc B sJ e Z d Z d Z d Z d Z d Z d Z d e d Z
RS( s7 Class implements libvirt part of volume driver for NFS.c C s
t j j S( N( t CONFt libvirtt nfs_mount_point_base( t self( ( sQ /home/tvault/.virtenv/lib/python2.7/site-packages/nova/virt/libvirt/volume/nfs.pyt _get_mount_point_base s c C s[ t t | j | | } d | _ | d d | _ | d j d d | _ d | _ | S( s Returns xml for libvirt.t filet datat device_patht formatt rawt native( t superR t
get_configt source_typet source_patht gett
driver_formatt driver_io( R
t connection_infot disk_infot conf( ( sQ /home/tvault/.virtenv/lib/python2.7/site-packages/nova/virt/libvirt/volume/nfs.pyR # s c C s( | j | | j | | d d <d S( s Connect the volume.R
R N( t _ensure_mountedt _get_device_path( R
R R ( ( sQ /home/tvault/.virtenv/lib/python2.7/site-packages/nova/virt/libvirt/volume/nfs.pyt connect_volume. s
c C sÏ | j | } y t j d | d t Wn t j k
rÊ } | d d } d t j | k sv d t j | k r t j d | qË d t j | k r± t j d | qË t j
t d
| n Xd S( s Disconnect the volume.t umountt run_as_rootR
t exports device is busys target is busys! The NFS share %s is still in use.s not mounteds, The NFS share %s has already been unmounted.s! Couldn't unmount the NFS share %sN( t _get_mount_pathR t executet TrueR t ProcessExecutionErrort sixt text_typet LOGt debugt exceptionR ( R
R t disk_devt
mount_patht excR! ( ( sQ /home/tvault/.virtenv/lib/python2.7/site-packages/nova/virt/libvirt/volume/nfs.pyt disconnect_volume5 s
c C sb | d d } | j | } t j | | s^ | d j d } | j | | | d t n | S( s$ @type connection_info: dict
R
R! t optionst ensure( R" t
libvirt_utilst
is_mountedR t
_mount_nfsR$ ( R
R t
nfs_exportR, R/ ( ( sQ /home/tvault/.virtenv/lib/python2.7/site-packages/nova/virt/libvirt/volume/nfs.pyR G s c C sí t j d d | d d d g } t j j d k rP | j d t j j g n | ro | j | j d n | j | | g y t j d t | WnM t j
k
rè } | râ d t j | k râ t
j t d
| qé n Xd S( s Mount nfs export to mount path.t mkdirs -pt mounts -tt nfss -ot R s already mounteds %s is already mountedN( R R# R R t nfs_mount_optionst Nonet extendt splitR$ R R% R&