<s> """<STR_LIT>""" <EOL> import abc <EOL> import logging <EOL> from aminator . plugins . base import BasePlugin <EOL> __all__ = ( '<STR_LIT>' , ) <EOL> log = logging . getLogger ( __name__ ) <EOL> class BaseCloudPlugin ( BasePlugin ) : <EOL> """<STR_LIT>""" <EOL> __metaclass__ = abc . ABCMeta <EOL> _entry_point = '<STR_LIT>' <EOL> _connection = None <EOL> @ abc . abstractmethod <EOL> def connect ( self ) : <EOL> """<STR_LIT>""" <EOL> @ abc . abstractmethod <EOL> def allocate_base_volume ( self , tag = True ) : <EOL> """<STR_LIT>""" <EOL> @ abc . abstractmethod <EOL> def attach_volume ( self , blockdevice , tag = True ) : <EOL> """<STR_LIT>""" <EOL> @ abc . abstractmethod <EOL> def detach_volume ( self , blockdevice ) : <EOL> """<STR_LIT>""" <EOL> @ abc . abstractmethod <EOL> def delete_volume ( self ) : <EOL> """<STR_LIT>""" <EOL> @ abc . abstractmethod <EOL> def snapshot_volume ( self , description = None ) : <EOL> """<STR_LIT>""" <EOL> @ abc . abstractmethod <EOL> def is_volume_attached ( self , blockdevice ) : <EOL> """<STR_LIT>""" <EOL> @ abc . abstractmethod <EOL> def is_stale_attachment ( self , dev , prefix ) : <EOL> """<STR_LIT>""" <EOL> @ abc . abstractmethod <EOL> def attached_block_devices ( self , prefix ) : <EOL> """<STR_LIT>""" <EOL> @ abc . abstractmethod <EOL> def add_tags ( self , resource_type ) : <EOL> """<STR_LIT>""" <EOL> @ abc . abstractmethod <EOL> def register_image ( self , * args , ** kwargs ) : <EOL> """<STR_LIT>""" <EOL> def __enter__ ( self ) : <EOL> self . connect ( ) <EOL> return self <EOL> def __exit__ ( self , typ , val , trc ) : <EOL> if typ : <EOL> log . debug ( '<STR_LIT>' , <EOL> exc_info = ( typ , val , trc ) ) <EOL> return False </s>
