コード例 #1
0
ファイル: ec2.py プロジェクト: RebeccaGraham/PyStratus
 def delete(self, roles=[]):
   storage_filename = self._get_storage_filename()
   volume_manager = JsonVolumeManager(storage_filename)
   for role in roles:
     mountable_volumes_list = volume_manager.get_instance_storage_for_role(role)
     ec2_volumes = self._get_ec2_volumes_dict(mountable_volumes_list)
     all_available = True
     for volume in ec2_volumes.itervalues():
       if volume.status != 'available':
         all_available = False
         logger.warning("Volume %s is not available.", volume)
     if not all_available:
       msg = "Some volumes are still in use. Aborting delete."
       logger.warning(msg)
       raise VolumesStillInUseException(msg)
     for volume in ec2_volumes.itervalues():
       volume.delete()
     volume_manager.remove_instance_storage_for_role(role)
コード例 #2
0
ファイル: ec2.py プロジェクト: techhat/PyStratus
 def delete(self, roles=[]):
   storage_filename = self._get_storage_filename()
   volume_manager = JsonVolumeManager(storage_filename)
   for role in roles:
     mountable_volumes_list = volume_manager.get_instance_storage_for_role(role)
     ec2_volumes = self._get_ec2_volumes_dict(mountable_volumes_list)
     all_available = True
     for volume in ec2_volumes.itervalues():
       if volume.status != 'available':
         all_available = False
         logger.warning("Volume %s is not available.", volume)
     if not all_available:
       msg = "Some volumes are still in use. Aborting delete."
       logger.warning(msg)
       raise VolumesStillInUseException(msg)
     for volume in ec2_volumes.itervalues():
       volume.delete()
     volume_manager.remove_instance_storage_for_role(role)