The DigitalOcean cloud module is used to control access to the DigitalOcean VPS system.
Use of this module requires a requires a personal_access_token
, an ssh_key_file
,
and at least one SSH key name in ssh_key_names
. More ssh_key_names
can be added
by separating each key with a comma. The personal_access_token
can be found in the
DigitalOcean web interface in the "Apps & API" section. The SSH key name can be found
under the "SSH Keys" section.
# Note: This example is for /etc/salt/cloud.providers or any file in the
# /etc/salt/cloud.providers.d/ directory.
my-digital-ocean-config:
personal_access_token: xxx
ssh_key_file: /path/to/ssh/key/file
ssh_key_names: my-key-name,my-key-name-2
provider: digital_ocean
depends: | requests |
---|
salt.cloud.clouds.digital_ocean.
avail_images
(call=None)¶Return a list of the images that are on the provider
salt.cloud.clouds.digital_ocean.
avail_locations
(call=None)¶Return a dict of all available VM locations on the cloud provider with relevant data
salt.cloud.clouds.digital_ocean.
avail_sizes
(call=None)¶Return a list of the image sizes that are on the provider
salt.cloud.clouds.digital_ocean.
create
(vm_)¶Create a single VM from a data dict
salt.cloud.clouds.digital_ocean.
create_dns_record
(hostname, ip_address)¶Creates a DNS record for the given hostname if the domain is managed with DO.
salt.cloud.clouds.digital_ocean.
create_key
(kwargs=None, call=None)¶Upload a public key
salt.cloud.clouds.digital_ocean.
create_node
(args)¶Create a node
salt.cloud.clouds.digital_ocean.
delete_dns_record
(hostname)¶Deletes a DNS for the given hostname if the domain is managed with DO.
salt.cloud.clouds.digital_ocean.
destroy
(name, call=None)¶Destroy a node. Will check termination protection and warn if enabled.
CLI Example:
salt-cloud --destroy mymachine
salt.cloud.clouds.digital_ocean.
get_configured_provider
()¶Return the first configured instance.
salt.cloud.clouds.digital_ocean.
get_image
(vm_)¶Return the image object to use
salt.cloud.clouds.digital_ocean.
get_keyid
(keyname)¶Return the ID of the keyname
salt.cloud.clouds.digital_ocean.
get_location
(vm_)¶Return the VM's location
salt.cloud.clouds.digital_ocean.
get_size
(vm_)¶Return the VM's size. Used by create_node().
salt.cloud.clouds.digital_ocean.
list_keypairs
(call=None)¶Return a dict of all available VM locations on the cloud provider with relevant data
salt.cloud.clouds.digital_ocean.
list_nodes
(call=None)¶Return a list of the VMs that are on the provider
salt.cloud.clouds.digital_ocean.
list_nodes_full
(call=None, forOutput=True)¶Return a list of the VMs that are on the provider
salt.cloud.clouds.digital_ocean.
list_nodes_select
(call=None)¶Return a list of the VMs that are on the provider, with select fields
salt.cloud.clouds.digital_ocean.
query
(method='droplets', droplet_id=None, command=None, args=None, http_method='get')¶Make a web call to DigitalOcean
salt.cloud.clouds.digital_ocean.
remove_key
(kwargs=None, call=None)¶Delete public key
salt.cloud.clouds.digital_ocean.
script
(vm_)¶Return the script deployment object
salt.cloud.clouds.digital_ocean.
show_instance
(name, call=None)¶Show the details from DigitalOcean concerning a droplet
salt.cloud.clouds.digital_ocean.
show_keypair
(kwargs=None, call=None)¶Show the details of an SSH keypair