salt.modules.libcloud_compute
Apache Libcloud Compute Management
Connection module for Apache Libcloud Compute management for a full list of supported clouds, see http://libcloud.readthedocs.io/en/latest/compute/supported_providers.html
Clouds include Amazon EC2, Azure, Google GCE, VMware, OpenStack Nova
New in version 2018.3.0.
- configuration
-
This module uses a configuration profile for one or multiple cloud providers
libcloud_compute: profile_test1: driver: google key: [email protected] secret: /path/to.key.json profile_test2: driver: arm key: 12345 secret: mysecret
- depends
-
apache-libcloud
-
Attaches volume to node.
- Parameters
-
node_id (
str
) -- Node ID to targetvolume_id (
str
) -- Volume ID from which to attachprofile (
str
) -- The profile keydevice (
str
) -- Where the device is exposed, e.g. '/dev/sdb'libcloud_kwargs (
dict
) -- Extra arguments for the driver's attach_volume method
CLI Example:
salt myminion libcloud_compute.detach_volume vol1 profile1
salt.modules.libcloud_compute.attach_volume(node_id, volume_id, profile, device=None, **libcloud_kwargs)
-
Copies an image from a source region to the current region.
- Parameters
-
source_region (
str
) -- Region to copy the node from.image_id (
str
) -- Image to copy.name (
str
) -- name for new image.profile (
str
) -- The profile keydescription -- description for new image.
libcloud_kwargs (
dict
) -- Extra arguments for the driver's copy_image method
CLI Example:
salt myminion libcloud_compute.copy_image us-east1 image1 'new image' profile1
salt.modules.libcloud_compute.copy_image(source_region, image_id, name, profile, description=None, **libcloud_kwargs)
-
Create an image from a node
- Parameters
-
node_id (
str
) -- Node to run the task on.name (
str
) -- name for new image.profile (
str
) -- The profile keydescription (
description
) -- description for new image.libcloud_kwargs (
dict
) -- Extra arguments for the driver's create_image method
CLI Example:
salt myminion libcloud_compute.create_image server1 my_image profile1 salt myminion libcloud_compute.create_image server1 my_image profile1 description='test image'
salt.modules.libcloud_compute.create_image(node_id, name, profile, description=None, **libcloud_kwargs)
-
Create a single key pair by name
- Parameters
-
name (
str
) -- Name of the key pair to create.profile (
str
) -- The profile keylibcloud_kwargs (
dict
) -- Extra arguments for the driver's create_key_pair method
CLI Example:
salt myminion libcloud_compute.create_key_pair pair1 profile1
salt.modules.libcloud_compute.create_key_pair(name, profile, **libcloud_kwargs)
-
Create a storage volume
- Parameters
-
size (
int
) -- Size of volume in gigabytes (required)name (
str
) -- Name of the volume to be createdlocation_id (
str
) -- Which data center to create a volume in. If empty, undefined behavior will be selected. (optional)profile (
str
) -- The profile keylibcloud_kwargs (
dict
) -- Extra arguments for the driver's list_volumes method
CLI Example:
salt myminion libcloud_compute.create_volume 1000 vol1 profile1
salt.modules.libcloud_compute.create_volume(size, name, profile, location_id=None, **libcloud_kwargs)
-
Create a storage volume snapshot
- Parameters
-
volume_id (
str
) -- Volume ID from which to create the new snapshot.profile (
str
) -- The profile keyname (
str
) -- Name of the snapshot to be created (optional)libcloud_kwargs (
dict
) -- Extra arguments for the driver's create_volume_snapshot method
CLI Example:
salt myminion libcloud_compute.create_volume_snapshot vol1 profile1
salt.modules.libcloud_compute.create_volume_snapshot(volume_id, profile, name=None, **libcloud_kwargs)
-
Delete an image of a node
- Parameters
-
image_id (
str
) -- Image to deleteprofile (
str
) -- The profile keylibcloud_kwargs (
dict
) -- Extra arguments for the driver's delete_image method
CLI Example:
salt myminion libcloud_compute.delete_image image1 profile1
salt.modules.libcloud_compute.delete_image(image_id, profile, **libcloud_kwargs)
-
Delete a key pair
- Parameters
-
name (
str
) -- Key pair name.profile (
str
) -- The profile keylibcloud_kwargs (
dict
) -- Extra arguments for the driver's import_key_pair_from_xxx method
CLI Example:
salt myminion libcloud_compute.delete_key_pair pair1 profile1
salt.modules.libcloud_compute.delete_key_pair(name, profile, **libcloud_kwargs)
-
Destroy a node in the cloud
- Parameters
-
node_id (
str
) -- Unique ID of the node to destroyprofile (
str
) -- The profile keylibcloud_kwargs (
dict
) -- Extra arguments for the driver's destroy_node method
CLI Example:
salt myminion libcloud_compute.destry_node as-2346 profile1
salt.modules.libcloud_compute.destroy_node(node_id, profile, **libcloud_kwargs)
-
Destroy a volume.
- Parameters
-
volume_id (
str
) -- Volume ID from which to destroyprofile (
str
) -- The profile keylibcloud_kwargs (
dict
) -- Extra arguments for the driver's destroy_volume method
CLI Example:
salt myminion libcloud_compute.destroy_volume vol1 profile1
salt.modules.libcloud_compute.destroy_volume(volume_id, profile, **libcloud_kwargs)
-
Destroy a volume snapshot.
- Parameters
-
volume_id (
str
) -- Volume ID from which the snapshot belongssnapshot_id (
str
) -- Volume Snapshot ID from which to destroyprofile (
str
) -- The profile keylibcloud_kwargs (
dict
) -- Extra arguments for the driver's destroy_volume_snapshot method
CLI Example:
salt myminion libcloud_compute.destroy_volume_snapshot snap1 profile1
salt.modules.libcloud_compute.destroy_volume_snapshot(volume_id, snapshot_id, profile, **libcloud_kwargs)
-
Detaches a volume from a node.
- Parameters
-
volume_id (
str
) -- Volume ID from which to detachprofile (
str
) -- The profile keylibcloud_kwargs (
dict
) -- Extra arguments for the driver's detach_volume method
CLI Example:
salt myminion libcloud_compute.detach_volume vol1 profile1
salt.modules.libcloud_compute.detach_volume(volume_id, profile, **libcloud_kwargs)
-
Call an extended method on the driver
- Parameters
-
method (
str
) -- Driver's method nameprofile (
str
) -- The profile keylibcloud_kwargs (
dict
) -- Extra arguments for the driver's method
CLI Example:
salt myminion libcloud_compute.extra ex_get_permissions google container_name=my_container object_name=me.jpg --out=yaml
salt.modules.libcloud_compute.extra(method, profile, **libcloud_kwargs)
-
Get an image of a node
- Parameters
-
image_id (
str
) -- Image to fetchprofile (
str
) -- The profile keylibcloud_kwargs (
dict
) -- Extra arguments for the driver's delete_image method
CLI Example:
salt myminion libcloud_compute.get_image image1 profile1
salt.modules.libcloud_compute.get_image(image_id, profile, **libcloud_kwargs)
-
Get a single key pair by name
- Parameters
-
name (
str
) -- Name of the key pair to retrieve.profile (
str
) -- The profile keylibcloud_kwargs (
dict
) -- Extra arguments for the driver's get_key_pair method
CLI Example:
salt myminion libcloud_compute.get_key_pair pair1 profile1
salt.modules.libcloud_compute.get_key_pair(name, profile, **libcloud_kwargs)
-
Import a new public key from string or a file path
- Parameters
-
name (
str
) -- Key pair name.key (
str
or pathstr
) -- Public key material, the string or a path to a fileprofile (
str
) -- The profile keykey_type (
str
) -- The key pair type, either FILE or STRING. Will detect if not provided and assume that if the string is a path to an existing path it is a FILE, else STRING.libcloud_kwargs (
dict
) -- Extra arguments for the driver's import_key_pair_from_xxx method
CLI Example:
salt myminion libcloud_compute.import_key_pair pair1 key_value_data123 profile1 salt myminion libcloud_compute.import_key_pair pair1 /path/to/key profile1
salt.modules.libcloud_compute.import_key_pair(name, key, profile, key_type=None, **libcloud_kwargs)
-
Return a list of images for this cloud
- Parameters
-
profile (
str
) -- The profile keylocation_id (
str
) -- The location key, from list_locationslibcloud_kwargs (
dict
) -- Extra arguments for the driver's list_images method
CLI Example:
salt myminion libcloud_compute.list_images profile1
salt.modules.libcloud_compute.list_images(profile, location_id=None, **libcloud_kwargs)
-
List all the available key pair objects.
- Parameters
-
profile (
str
) -- The profile keylibcloud_kwargs (
dict
) -- Extra arguments for the driver's list_key_pairs method
CLI Example:
salt myminion libcloud_compute.list_key_pairs profile1
salt.modules.libcloud_compute.list_key_pairs(profile, **libcloud_kwargs)
-
Return a list of locations for this cloud
- Parameters
-
profile (
str
) -- The profile keylibcloud_kwargs (
dict
) -- Extra arguments for the driver's list_locations method
CLI Example:
salt myminion libcloud_compute.list_locations profile1
salt.modules.libcloud_compute.list_locations(profile, **libcloud_kwargs)
-
Return a list of nodes
- Parameters
-
profile (
str
) -- The profile keylibcloud_kwargs (
dict
) -- Extra arguments for the driver's list_nodes method
CLI Example:
salt myminion libcloud_compute.list_nodes profile1
salt.modules.libcloud_compute.list_nodes(profile, **libcloud_kwargs)
-
Return a list of node sizes
- Parameters
-
profile (
str
) -- The profile keylocation_id (
str
) -- The location key, from list_locationslibcloud_kwargs (
dict
) -- Extra arguments for the driver's list_sizes method
CLI Example:
salt myminion libcloud_compute.list_sizes profile1 salt myminion libcloud_compute.list_sizes profile1 us-east1
salt.modules.libcloud_compute.list_sizes(profile, location_id=None, **libcloud_kwargs)
-
Return a list of storage volumes snapshots for this cloud
- Parameters
-
volume_id (
str
) -- The volume identifierprofile (
str
) -- The profile keylibcloud_kwargs (
dict
) -- Extra arguments for the driver's list_volume_snapshots method
CLI Example:
salt myminion libcloud_compute.list_volume_snapshots vol1 profile1
salt.modules.libcloud_compute.list_volume_snapshots(volume_id, profile, **libcloud_kwargs)
-
Return a list of storage volumes for this cloud
- Parameters
-
profile (
str
) -- The profile keylibcloud_kwargs (
dict
) -- Extra arguments for the driver's list_volumes method
CLI Example:
salt myminion libcloud_compute.list_volumes profile1
salt.modules.libcloud_compute.list_volumes(profile, **libcloud_kwargs)
-
Reboot a node in the cloud
- Parameters
-
node_id (
str
) -- Unique ID of the node to rebootprofile (
str
) -- The profile keylibcloud_kwargs (
dict
) -- Extra arguments for the driver's reboot_node method
CLI Example:
salt myminion libcloud_compute.reboot_node as-2346 profile1
salt.modules.libcloud_compute.reboot_node(node_id, profile, **libcloud_kwargs)
© 2021 SaltStack.
Licensed under the Apache License, Version 2.0.
https://docs.saltproject.io/en/latest/ref/modules/all/salt.modules.libcloud_compute.html