Hi,

I wouldn't use that one as an example. Vultr is one of the most minimal and
clean implementations
https://github.com/apache/libcloud/blob/trunk/libcloud/compute/drivers/vultr.py

Start with the basics, raise a PR and I'll walk you through the process and
steps. Oh and write lots of tests :0) so you need to record fixtures from a
real API endpoint, I recommend using Charles proxy or Fiddler2.

Anthony

On Mon, Aug 14, 2017 at 8:39 PM, Yaniv Kaul <[email protected]> wrote:

> Hi,
>
> I was wondering (and could not find in the documentation) if there are
> guidelines on what needs to be implemented for a cloud (and specifically
> compute) driver. Any 'MUST' functions the driver needs to support? Or can I
> start with something minimalist and gradually add more?
>
> I was looking at the libvirt driver[1 and dummy[2] as an example, but
> wasn't sure about ex_ functions. For example, ex_start_node() , is
> mandatory or not?
>
> I assume those are needed:
> list_nodes()
> reboot_node()
> destroy_node()
>
>
> What about create_node() ?
>
> What about:
> ex_start_node()
> ex_shutdown_node()
> ex_suspend_node()
> ex_resume_node()
> ex_get_node_by_uuid()
> ex_get_node_by_name()
> ex_take_node_screenshot()  (?!)
> ex_get_hypervisor_hostname()
> ex_get_hypervisor_sysinfo()  (?! - isn't it very driver specific?)
>
> TIA,
> Y.
>
> [1]
> https://git-wip-us.apache.org/repos/asf?p=libcloud.git;a=
> blob;f=libcloud/compute/drivers/libvirt_driver.py;h=
> a914c5e613c53d90fbd5b5de6028bd3ae4e643be;hb=HEAD
> [2]
> https://git-wip-us.apache.org/repos/asf?p=libcloud.git;a=
> blob;f=libcloud/compute/drivers/dummy.py;h=982433525b6ef927115616cf7080c5
> 6b53a93499;hb=HEAD
>

Reply via email to