jtriley/StarCluster — pull request #293 by ebrevdo (2013-09-04 18:01:48+00:00)
Title: Add support for the skip_detach tag in node.detach_external_volumes

This allows plugins to perform the following steps:
- Create a volume from a snapshot
- Attach the volume to a node
- Set the volume to automatically delete when the node is stopped

The code looks like:

vol = snapshot.create_volume(node.placement)
vol.add_tag('skip_detach', 'true')
vol.attach(node.id, attach_point)
ec2.wait_for_volume(vol, state='attached')
ec2.conn.modify_instance_attribute(
node.id, 'blockDeviceMapping', ['%s=true' % attach_point])

The current behavior detaches this "temporary" volume before
the instance is terminated, and leaves ghost volumes sitting
around wasting money.

A future commit will include a plugin that uses this feature.