cloudstack/tools/test/cloudkit.py
2011-07-08 13:49:53 -07:00

62 lines
2.4 KiB
Python

from apisession import ApiSession
from physicalresource import ZoneCreator
from globalconfig import GlobalConfig
from db import Database
import random
import uuid
def fix_default_db():
database = Database()
statement="""
UPDATE vm_template SET url='%s'
WHERE unique_name='%s' """
database.update(statement % ('http://nfs1.lab.vmops.com/templates/dummy/systemvm.vhd', 'routing-1'))
database.update(statement % ('http://nfs1.lab.vmops.com/templates/dummy/systemvm.qcow2', 'routing-3'))
database.update(statement % ('http://nfs1.lab.vmops.com/templates/dummy/systemvm.ova', 'routing-8'))
database.update(statement % ('http://nfs1.lab.vmops.com/templates/dummy/builtin.vhd', 'centos53-x86_64'))
database.update(statement % ('http://nfs1.lab.vmops.com/templates/dummy/builtin.ova', 'centos53-x64'))
statement="""UPDATE vm_template SET checksum=NULL"""
database.update(statement)
statement="""
UPDATE vm_template SET url='%s', unique_name='%s', name='%s', display_text='%s'
WHERE id=4 """
database.update(statement % ('http://nfs1.lab.vmops.com/templates/rightscale/RightImage_CentOS_5.4_x64_v5.6.34.qcow2.bz2', 'Rightscale CentOS 5.4', 'Rightscale CentOS 5.4', 'Rightscale CentOS 5.4'))
statement="""UPDATE disk_offering set use_local_storage=1"""
database.update(statement)
def config():
config = GlobalConfig(api)
config.update('use.local.storage', 'true')
config.update('max.template.iso.size', '20')
def create_zone():
zonecreator = ZoneCreator(api, random.randint(2,1000))
zoneid = zonecreator.create()
database = Database()
statement="""INSERT INTO data_center_details (dc_id, name, value)
VALUES (%s, '%s', '0')"""
database.update(statement % (zoneid, 'enable.secstorage.vm'))
database.update(statement % (zoneid, 'enable.consoleproxy.vm'))
statement="""INSERT INTO data_center_details (dc_id, name, value)
VALUES (%s, '%s', '%s')"""
database.update(statement % (zoneid, 'zone.dhcp.strategy', 'external'))
statement="""UPDATE data_center set dhcp_provider='ExternalDhcpServer' where id=%s"""
database.update(statement % (zoneid))
if __name__ == "__main__":
fix_default_db()
api = ApiSession('http://localhost:8080/client/api', 'admin', 'password')
api.login()
config()
create_zone()
print "guid=%s" % str(uuid.uuid4())