# -*- encoding: utf-8 -*- # # Copyright (c) 2012 Citrix. All rights reserved. # """Common functions """ #Import Local Modules from cloudstackTestCase import * from cloudstackAPI import * import remoteSSHClient from utils import * from base import * #Import System modules import time def get_zone(apiclient, services=None): "Returns a default zone" cmd = listZones.listZonesCmd() if services: if "zoneid" in services: cmd.id = services["zoneid"] return apiclient.listZones(cmd)[0] def get_pod(apiclient, zoneid, services=None): "Returns a default pod for specified zone" cmd = listPods.listPodsCmd() cmd.zoneid = zoneid if services: if "podid" in services: cmd.id = services["podid"] return apiclient.listPods(cmd)[0] def get_template(apiclient, zoneid, ostypeid=12, services=None): "Returns a template" cmd = listTemplates.listTemplatesCmd() cmd.templatefilter = 'featured' cmd.zoneid = zoneid if services: if "template" in services: cmd.id = services["template"] list_templates = apiclient.listTemplates(cmd) for template in list_templates: if template.ostypeid == ostypeid: return template def list_routers(apiclient, **kwargs): """List all Routers matching criteria""" cmd = listRouters.listRoutersCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listRouters(cmd)) def list_zones(apiclient, **kwargs): """List all Zones matching criteria""" cmd = listZones.listZonesCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listZones(cmd)) def list_networks(apiclient, **kwargs): """List all Networks matching criteria""" cmd = listNetworks.listNetworksCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listNetworks(cmd)) def list_clusters(apiclient, **kwargs): """List all Clusters matching criteria""" cmd = listClusters.listClustersCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listClusters(cmd)) def list_ssvms(apiclient, **kwargs): """List all SSVMs matching criteria""" cmd = listSystemVms.listSystemVmsCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listSystemVms(cmd)) def list_storage_pools(apiclient, **kwargs): """List all storage pools matching criteria""" cmd = listStoragePools.listStoragePoolsCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listStoragePools(cmd)) def list_virtual_machines(apiclient, **kwargs): """List all VMs matching criteria""" cmd = listVirtualMachines.listVirtualMachinesCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listVirtualMachines(cmd)) def list_hosts(apiclient, **kwargs): """List all Hosts matching criteria""" cmd = listHosts.listHostsCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listHosts(cmd)) def list_configurations(apiclient, **kwargs): """List configuration with specified name""" cmd = listConfigurations.listConfigurationsCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listConfigurations(cmd)) def list_publicIP(apiclient, **kwargs): """List all Public IPs matching criteria""" cmd = listPublicIpAddresses.listPublicIpAddressesCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listPublicIpAddresses(cmd)) def list_nat_rules(apiclient, **kwargs): """List all NAT rules matching criteria""" cmd = listPortForwardingRules.listPortForwardingRulesCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listPortForwardingRules(cmd)) def list_lb_rules(apiclient, **kwargs): """List all Load balancing rules matching criteria""" cmd = listLoadBalancerRules.listLoadBalancerRulesCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listLoadBalancerRules(cmd)) def list_lb_instances(apiclient, **kwargs): """List all Load balancing instances matching criteria""" cmd = listLoadBalancerRuleInstances.listLoadBalancerRuleInstancesCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listLoadBalancerRuleInstances(cmd)) def list_firewall_rules(apiclient, **kwargs): """List all Firewall Rules matching criteria""" cmd = listFirewallRules.listFirewallRulesCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listFirewallRules(cmd)) def list_volumes(apiclient, **kwargs): """List all volumes matching criteria""" cmd = listVolumes.listVolumesCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listVolumes(cmd)) def list_isos(apiclient, **kwargs): """Lists all available ISO files.""" cmd = listIsos.listIsosCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listIsos(cmd)) def list_snapshots(apiclient, **kwargs): """List all snapshots matching criteria""" cmd = listSnapshots.listSnapshotsCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listSnapshots(cmd)) def list_templates(apiclient, **kwargs): """List all templates matching criteria""" cmd = listTemplates.listTemplatesCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listTemplates(cmd)) def list_accounts(apiclient, **kwargs): """Lists accounts and provides detailed account information for listed accounts""" cmd = listAccounts.listAccountsCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listAccounts(cmd)) def list_snapshot_policy(apiclient, **kwargs): """Lists snapshot policies.""" cmd = listSnapshotPolicies.listSnapshotPoliciesCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listSnapshotPolicies(cmd)) def list_events(apiclient, **kwargs): """Lists events""" cmd = listEvents.listEventsCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listEvents(cmd)) def list_disk_offering(apiclient, **kwargs): """Lists all available disk offerings.""" cmd = listDiskOfferings.listDiskOfferingsCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listDiskOfferings(cmd)) def list_service_offering(apiclient, **kwargs): """Lists all available service offerings.""" cmd = listServiceOfferings.listServiceOfferingsCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listServiceOfferings(cmd)) def list_vlan_ipranges(apiclient, **kwargs): """Lists all VLAN IP ranges.""" cmd = listVlanIpRanges.listVlanIpRangesCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listVlanIpRanges(cmd)) def list_usage_records(apiclient, **kwargs): """Lists usage records for accounts""" cmd = listUsageRecords.listUsageRecordsCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listUsageRecords(cmd))