Part of libcloud.compute.drivers.gandi View Source View In Hierarchy
Gandi node driver
Method | __init__ | @inherits: L{NodeDriver.__init__} |
Method | list_nodes | List all nodes @return: list of node objects @rtype: C{list} of L{Node} |
Method | reboot_node | Reboot a node. |
Method | destroy_node | Destroy a node. |
Method | deploy_node | deploy_node is not implemented for gandi driver |
Method | create_node | Create a new Gandi node |
Method | list_images | List images on a provider |
Method | list_sizes | List sizes on a provider |
Method | list_locations | List data centers for a provider |
Method | list_volumes | @rtype: C{list} of L{StorageVolume} |
Method | create_volume | Create a new volume. |
Method | attach_volume | Attaches volume to node. |
Method | detach_volume | Detaches a volume from a node. |
Method | destroy_volume | Destroys a storage volume. |
Method | ex_list_interfaces | Specific method to list network interfaces |
Method | ex_list_disks | Specific method to list all disk |
Method | ex_node_attach_disk | Specific method to attach a disk to a node |
Method | ex_node_detach_disk | Specific method to detach a disk from a node |
Method | ex_node_attach_interface | Specific method to attach an interface to a node |
Method | ex_node_detach_interface | Specific method to detach an interface from a node |
Method | ex_snapshot_disk | Specific method to make a snapshot of a disk |
Method | ex_update_disk | Specific method to update size or name of a disk WARNING: if a server is attached it'll be rebooted |
Method | _resource_info | Undocumented |
Method | _node_info | Undocumented |
Method | _volume_info | Undocumented |
Method | _to_node | Undocumented |
Method | _to_nodes | Undocumented |
Method | _to_volume | Undocumented |
Method | _to_volumes | Undocumented |
Method | _to_image | Undocumented |
Method | _to_size | Undocumented |
Method | _to_loc | Undocumented |
Method | _to_iface | Undocumented |
Method | _to_ifaces | Undocumented |
Method | _to_disk | Undocumented |
Method | _to_disks | Undocumented |
Inherited from BaseGandiDriver:
Method | _wait_operation | Wait for an operation to succeed |
Inherited from NodeDriver:
Method | wait_until_running | Block until the given nodes are fully booted and have an IP address assigned. |
Method | _wait_until_running | Undocumented |
Method | _ssh_client_connect | Try to connect to the remote SSH server. If a connection times out or is refused it is retried up to timeout number of seconds. |
Method | _connect_and_run_deployment_script | Undocumented |
Method | _run_deployment_script | Run the deployment script on the provided node. At this point it is assumed that SSH connection has already been established. |
Method | _get_size_price | Undocumented |
Inherited from BaseDriver (via NodeDriver):
Method | _ex_connection_class_kwargs | Return extra connection keyword arguments which are passed to the Connection class constructor. |
List all nodes @return: list of node objects @rtype: C{list} of L{Node}
Reboot a node. @param node: The node to be rebooted @type node: L{Node} @return: True if the reboot was successful, otherwise False @rtype: C{bool}
Destroy a node. Depending upon the provider, this may destroy all data associated with the node, including backups. @param node: The node to be destroyed @type node: L{Node} @return: True if the destroy was successful, otherwise False @rtype: C{bool}
deploy_node is not implemented for gandi driver @rtype: C{bool}
Create a new Gandi node @keyword name: String with a name for this new node (required) @type name: C{str} @keyword image: OS Image to boot on node. (required) @type image: L{NodeImage} @keyword location: Which data center to create a node in. If empty, undefined behavior will be selected. (optional) @type location: L{NodeLocation} @keyword size: The size of resources allocated to this node. (required) @type size: L{NodeSize} @keyword login: user name to create for login on machine (required) @type login: C{str} @keyword password: password for user that'll be created (required) @type password: C{str} @keyword inet_family: version of ip to use, default 4 (optional) @type inet_family: C{int} @rtype: L{Node}
List images on a provider @keyword location: The location at which to list images @type location: L{NodeLocation} @return: list of node image objects @rtype: C{list} of L{NodeImage}
List sizes on a provider @keyword location: The location at which to list sizes @type location: L{NodeLocation} @return: list of node size objects @rtype: C{list} of L{NodeSize}
List data centers for a provider @return: list of node location objects @rtype: C{list} of L{NodeLocation}
Create a new volume. @param size: Size of volume in gigabytes (required) @type size: C{int} @keyword name: Name of the volume to be created @type name: C{str} @keyword location: Which data center to create a volume in. If empty, undefined behavoir will be selected. (optional) @type location: L{NodeLocation} @keyword snapshot: Name of snapshot from which to create the new volume. (optional) @type snapshot: C{str} @return: The newly created volume. @rtype: L{StorageVolume}
Attaches volume to node. @param node: Node to attach volume to @type node: L{Node} @param volume: Volume to attach @type volume: L{StorageVolume} @param device: Where the device is exposed, e.g. '/dev/sdb (optional) @type device: C{str} @rtype: C{bool}
Detaches a volume from a node. @param node: Node which should be used @type node: L{Node} @param volume: Volume to be detached @type volume: L{StorageVolume} @rtype: C{bool}
Destroys a storage volume. @param volume: Volume to be destroyed @type volume: L{StorageVolume} @rtype: C{bool}
Specific method to list network interfaces @rtype: C{list} of L{GandiNetworkInterface}
Specific method to attach a disk to a node @param node: Node which should be used @type node: L{Node} @param disk: Disk which should be used @type disk: L{GandiDisk} @rtype: C{bool}
Specific method to detach a disk from a node @param node: Node which should be used @type node: L{Node} @param disk: Disk which should be used @type disk: L{GandiDisk} @rtype: C{bool}
Specific method to attach an interface to a node @param node: Node which should be used @type node: L{Node} @param iface: Network interface which should be used @type iface: L{GandiNetworkInterface} @rtype: C{bool}
Specific method to detach an interface from a node @param node: Node which should be used @type node: L{Node} @param iface: Network interface which should be used @type iface: L{GandiNetworkInterface} @rtype: C{bool}
Specific method to make a snapshot of a disk @param disk: Disk which should be used @type disk: L{GandiDisk} @param name: Name which should be used @type name: C{str} @rtype: C{bool}
Specific method to update size or name of a disk WARNING: if a server is attached it'll be rebooted @param disk: Disk which should be used @type disk: L{GandiDisk} @param new_size: New size @type new_size: C{int} @param new_name: New name @type new_name: C{str} @rtype: C{bool}