ec2_vol: do no work if the instance has a volume mounted at the device.

pull/2580/head
Blair Zajac 12 years ago
parent 96cbd61d5e
commit 1aa2f9749e

@ -19,7 +19,7 @@ DOCUMENTATION = '''
module: ec2_vol module: ec2_vol
short_description: create and attach a volume, return volume id and device map short_description: create and attach a volume, return volume id and device map
description: description:
- creates an EBS volume and optionally attaches it to an instance. This module has a dependency on python-boto - creates an EBS volume and optionally attaches it to an instance. If both an instance ID and a device name is given and the instance has a device at the device name, then no volume is created and no attachment is made. This module has a dependency on python-boto.
version_added: "1.1" version_added: "1.1"
options: options:
instance: instance:
@ -123,6 +123,12 @@ def main():
inst = reservation[0].instances[0] inst = reservation[0].instances[0]
zone = inst.placement zone = inst.placement
# Check if there is a volume already mounted there.
if device_name:
if device_name in inst.block_device_mapping:
module.exit_json(msg="Volume mapping for %s already exists on instance %s" % (device_name, instance),
changed=False)
# If no instance supplied, try volume creation based on module parameters. # If no instance supplied, try volume creation based on module parameters.
try: try:

Loading…
Cancel
Save