B
    è?F[“  ã               @   sD   d dl Z d dlZd dlmZmZ d dlZd dlZG dd„ deƒZdS )é    N)ÚShellCommandÚget_tsc               @   sB   e Zd Zddd„Zddd„Zdd„ Zd	d
„ Zddd„Zdd„ ZdS )Ú
ScriptBaseNc             C   s8   t j ddd¡| _| jj| _tƒ | _|r4t j 	|¡ d S )NZInstancezinstance-idÚdefault)
ÚbotoZconfigÚgetZinstance_idÚ	__class__Ú__name__Únamer   ZtsÚread)ÚselfZconfig_file© r   ú4lib/python3.7/site-packages/boto/pyami/scriptbase.pyÚ__init__	   s
    
zScriptBase.__init__Ú c             C   s   t j ||¡ d S )N)r   ZutilsÚnotify)r   ZsubjectZbodyr   r   r   r      s    zScriptBase.notifyc             C   s<   t j |¡s8yt  |¡ W n   tj d| ¡ Y nX d S )NzError creating directory: %s)ÚosÚpathÚisdirÚmkdirr   ÚlogÚerror)r   r   r   r   r   r      s
    zScriptBase.mkdirc             C   s   t j |¡r|  d| ¡ d S )Nz	umount %s)r   r   ÚismountÚrun)r   r   r   r   r   Úumount   s    zScriptBase.umountTFc             C   sd   t ||d| _| jjdkr\tj d|| jjf ¡ |rN|  dd|| jjf ¡ |r\t 	d¡ | jjS )N)Úcwdr   z)Error running command: "%s". Output: "%s"zError encounteredz=Error running the following command:
	%s

Command output:
	%séÿÿÿÿ)
r   Zlast_commandZstatusr   r   r   Úoutputr   ÚsysÚexit)r   Zcommandr   Zexit_on_errorr   r   r   r   r      s    
zScriptBase.runc             C   s   d S )Nr   )r   r   r   r   Úmain*   s    zScriptBase.main)N)r   )TFN)	r	   Ú
__module__Ú__qualname__r   r   r   r   r   r    r   r   r   r   r      s   


r   )r   r   Z
boto.utilsr   r   r   Úobjectr   r   r   r   r   Ú<module>   s
   