ó
è?F[c           @   s`   d  d l  Z  d  d l Z d  d l m Z m Z d  d l Z d  d l Z d e f d „  ƒ  YZ d S(   iÿÿÿÿN(   t   ShellCommandt   get_tst
   ScriptBasec           B   sM   e  Z d d  „ Z d d „ Z d „  Z d „  Z e e d d „ Z	 d „  Z
 RS(   c         C   sS   t  j j d d d ƒ |  _ |  j j |  _ t ƒ  |  _ | rO t  j j	 | ƒ n  d  S(   Nt   Instances   instance-idt   default(
   t   botot   configt   gett   instance_idt	   __class__t   __name__t   nameR   t   tst   read(   t   selft   config_file(    (    s4   lib/python2.7/site-packages/boto/pyami/scriptbase.pyt   __init__	   s
    t    c         C   s   t  j j | | ƒ d  S(   N(   R   t   utilst   notify(   R   t   subjectt   body(    (    s4   lib/python2.7/site-packages/boto/pyami/scriptbase.pyR      s    c         C   sH   t  j j | ƒ sD y t  j | ƒ WqD t j j d | ƒ qD Xn  d  S(   Ns   Error creating directory: %s(   t   ost   patht   isdirt   mkdirR   t   logt   error(   R   R   (    (    s4   lib/python2.7/site-packages/boto/pyami/scriptbase.pyR      s
    c         C   s*   t  j j | ƒ r& |  j d | ƒ n  d  S(   Ns	   umount %s(   R   R   t   ismountt   run(   R   R   (    (    s4   lib/python2.7/site-packages/boto/pyami/scriptbase.pyt   umount   s    c         C   s“   t  | d | ƒ|  _ |  j j d k r‰ t j j d | |  j j f ƒ | rp |  j d d | |  j j f ƒ n  | r‰ t j	 d ƒ q‰ n  |  j j S(   Nt   cwdi    s)   Error running command: "%s". Output: "%s"s   Error encountereds=   Error running the following command:
	%s

Command output:
	%siÿÿÿÿ(
   R    t   last_commandt   statusR   R   R   t   outputR   t   syst   exit(   R   t   commandR   t   exit_on_errorR   (    (    s4   lib/python2.7/site-packages/boto/pyami/scriptbase.pyR      s     	c         C   s   d  S(   N(    (   R   (    (    s4   lib/python2.7/site-packages/boto/pyami/scriptbase.pyt   main*   s    N(   R
   t
   __module__t   NoneR   R   R   R   t   Truet   FalseR   R'   (    (    (    s4   lib/python2.7/site-packages/boto/pyami/scriptbase.pyR      s   		(   R   R#   t
   boto.utilsR    R   R   t   objectR   (    (    (    s4   lib/python2.7/site-packages/boto/pyami/scriptbase.pyt   <module>   s
   