pythonvirtual-machineopennebula

create vm on opennebula with python api


As the title says, i am trying to create a vm on opennebula with the python api. (this is my first time working with one and i have zero clue of anythings, so plz be not too hard with me)

#!/usr/bin/python3

import oca
client = oca.Client('username:passwd', 'ip:2633/RPC2')
oca.VirtualMachine.allocate(client, 'test')
#'test' is the name of the template i want to use 

it gives me this error:

 oca.exceptions.OpenNebulaException: [VirtualMachineAllocate] Error allocating a new virtual machine. Parse error: syntax error, unexpected $end, expecting EQUAL or EQUAL_EMPTY at line 1, columns 1:5

anyone an idea how to fix this? thanks in advance.


Solution

  • ok.. i am stupid and have searched only after 4h trying in the right place --> the git repository and the 'issues' tab.

    vm_templ = oca.VmTemplatePool(client)
    vm_templ.info()
    
    for templ in vm_templ:
        if templ.name == "Ubuntu 14.04 - KVM":
            templ.instantiate("oca-test")
    

    that is a way you can create a vm of an existing template via python. (the connection part is missing, but that is trivial).

    i don't delete this question, perhaps somebody out there will have a hard time too with this.