def test_0000_setup(self): """Load configuration and create a click runner to invoke CLI.""" self._config = Environment.get_config() GatewayTest._logger = Environment.get_default_logger() GatewayTest._runner = CliRunner() default_org = self._config['vcd']['default_org_name'] self._login() GatewayTest._runner.invoke(org, ['use', default_org]) GatewayTest._api_version = self._config['vcd']['api_version'] GatewayTest._ext_network_name = self._get_first_external_network() self.client = Environment.get_sys_admin_client() platform = Platform(self.client) ext_net_resource = platform.get_external_network( GatewayTest._ext_network_name) self.assertTrue(len(ext_net_resource) > 0) ip_scopes = ext_net_resource.xpath( 'vcloud:Configuration/vcloud:IpScopes/vcloud:IpScope', namespaces=NSMAP) first_ipscope = ip_scopes[0] GatewayTest._gateway_ip = first_ipscope.Gateway.text prefix_len = netmask_to_cidr_prefix_len(GatewayTest._gateway_ip, first_ipscope.Netmask.text) GatewayTest._subnet_addr = GatewayTest._gateway_ip + '/' + str( prefix_len)
def test_0000_setup(self): """Load configuration and create a click runner to invoke CLI.""" VAppTest._config = Environment.get_config() VAppTest._logger = Environment.get_default_logger() VAppTest._client = Environment.get_client_in_default_org( CommonRoles.ORGANIZATION_ADMINISTRATOR) VAppTest._sys_admin_client = Environment.get_sys_admin_client() VAppTest._runner = CliRunner() default_org = VAppTest._config['vcd']['default_org_name'] VAppTest._default_org = default_org VAppTest._login(self) VAppTest._runner.invoke(org, ['use', default_org]) VAppTest._test_vdc = Environment.get_test_vdc(VAppTest._client) VAppTest._test_vapp = create_vapp_from_template( VAppTest._client, VAppTest._test_vdc, VAppTest._test_vapp_name, VAppTest._config['vcd']['default_catalog_name'], VAppTest._config['vcd']['default_template_file_name'], power_on=False, deploy=False) VAppTest._catalog_name = VAppTest._config['vcd'][ 'default_catalog_name'] VAppTest._sys_admin_client = Environment.get_sys_admin_client() VAppTest._pvdc_name = Environment.get_test_pvdc_name() default_ovdc = VAppTest._config['vcd']['default_ovdc_name'] VAppTest._default_ovdc = default_ovdc
def test_0000_setup(self): self._config = Environment.get_config() TestFirewallRule._logger = Environment.get_default_logger() TestFirewallRule._client = Environment.get_sys_admin_client() TestFirewallRule._runner = CliRunner() default_org = self._config['vcd']['default_org_name'] TestFirewallRule._ext_nw = self._config['external_network']['name'] self._login() TestFirewallRule._runner.invoke(org, ['use', default_org]) result = TestFirewallRule._runner.invoke( gateway, args=[ 'services', 'firewall', 'create', TestFirewallRule.__name, '--name', TestFirewallRule.__firewall_rule_name, '--action', 'accept', '--type', 'User', '--enabled', '--logging-enabled' ]) self.assertEqual(0, result.exit_code) gateway_res = Environment.get_test_gateway(TestFirewallRule._client) gateway_obj = Gateway(TestFirewallRule._client, href=gateway_res.get('href')) firewall_rules = gateway_obj.get_firewall_rules() for rule in firewall_rules.firewallRules.firewallRule: if rule.name == TestFirewallRule.__firewall_rule_name: TestFirewallRule._rule_id = rule.id break
def setUp(self): """Load configuration and create a click runner to invoke CLI.""" self._config = Environment.get_config() self._logger = Environment.get_default_logger() self._runner = CliRunner() self._login()
def test_0000_setup(self): """Add Firewall Rules in the gateway. Invokes the add_firewall_rule of the gateway. """ TestFirewallRules._org_client = Environment.get_client_in_default_org( TestFirewallRules._test_runner_role) TestFirewallRules._system_client = Environment.get_sys_admin_client() TestFirewallRules._config = Environment.get_config() gateway = Environment.get_test_gateway(TestFirewallRules._org_client) TestFirewallRules._gateway_obj = Gateway( TestFirewallRules._org_client, TestFirewallRules._name, href=gateway.get('href')) TestFirewallRules._external_network = Environment. \ get_test_external_network(TestFirewallRules._system_client) TestFirewallRules._gateway_obj.add_firewall_rule( TestFirewallRules._firewall_rule_name) firewall_rules_resource = \ TestFirewallRules._gateway_obj.get_firewall_rules() # Verify matchFound = False for firewallRule in firewall_rules_resource.firewallRules.firewallRule: if firewallRule['name'] == TestFirewallRules._firewall_rule_name: TestFirewallRules._rule_id = firewallRule.id matchFound = True break self.assertTrue(matchFound)
def test_0000_setup(self): """Add the sub allocated ip pools to gateway. This sub allocated ip pools required by the Nat Rule Invokes the add_sub_allocated_ip_pools of the gateway. """ TestNatRule._client = Environment.get_sys_admin_client() TestNatRule._config = Environment.get_config() gateway = Environment. \ get_test_gateway(TestNatRule._client) gateway_obj = Gateway(TestNatRule._client, TestNatRule._name, href=gateway.get('href')) ip_allocations = gateway_obj.list_configure_ip_settings() ip_allocation = ip_allocations[0] ext_network = ip_allocation.get('external_network') config = TestNatRule._config['external_network'] gateway_sub_allocated_ip_range = \ config['gateway_sub_allocated_ip_range'] ip_range_list = [gateway_sub_allocated_ip_range] task = gateway_obj.add_sub_allocated_ip_pools(ext_network, ip_range_list) result = TestNatRule._client.get_task_monitor().wait_for_success( task=task) self.assertEqual(result.get('status'), TaskStatus.SUCCESS.value) gateway_obj = Gateway(TestNatRule._client, TestNatRule._name, href=gateway.get('href')) subnet_participation = self.__get_subnet_participation( gateway_obj.get_resource(), ext_network) ip_ranges = gateway_obj.get_sub_allocate_ip_ranges_element( subnet_participation) self.__validate_ip_range(ip_ranges, gateway_sub_allocated_ip_range)
def test_0000_setup(self): self._config = Environment.get_config() TestVappNat._logger = Environment.get_default_logger() TestVappNat._client = Environment.get_sys_admin_client() TestVappNat._runner = CliRunner() default_org = self._config['vcd']['default_org_name'] self._login() TestVappNat._runner.invoke(org, ['use', default_org]) vapp = Environment.get_test_vapp_with_network(TestVappNat._client) vapp.reload() task = vapp.connect_vapp_network_to_ovdc_network( network_name=TestVappNat._vapp_network_name, orgvdc_network_name=TestVappNat._org_vdc_network_name) result = TestVappNat._client.get_task_monitor().wait_for_success(task) self.assertEqual(result.get('status'), TaskStatus.SUCCESS.value) vm_resource = vapp.get_vm(TestVappNat._vm_name) vm = VM(TestVappNat._client, resource=vm_resource) task = vm.add_nic(NetworkAdapterType.E1000.value, True, True, TestVappNat._vapp_network_name, IpAddressMode.MANUAL.value, TestVappNat._allocate_ip_address) result = TestVappNat._client.get_task_monitor().wait_for_success(task) self.assertEqual(result.get('status'), TaskStatus.SUCCESS.value) list_vm_interface = vapp.list_vm_interface( TestVappNat._vapp_network_name) for vm_interface in list_vm_interface: TestVappNat._vm_id = str(vm_interface['Local_id']) TestVappNat._vm_nic_id = str(vm_interface['VmNicId'])
def test_0000_setup(self): self._config = Environment.get_config() TestFirewallRule._logger = Environment.get_default_logger() TestFirewallRule._client = Environment.get_sys_admin_client() TestFirewallRule._runner = CliRunner() default_org = self._config['vcd']['default_org_name'] TestFirewallRule._ext_nw = self._config['external_network']['name'] self._login() TestFirewallRule._runner.invoke(org, ['use', default_org]) result = TestFirewallRule._runner.invoke( gateway, args=[ 'services', 'firewall', 'create', TestFirewallRule.__name, '--name', TestFirewallRule.__firewall_rule_name, '--action', 'accept', '--type', 'User', '--enabled', '--logging-enabled' ]) self.assertEqual(0, result.exit_code) gateway_res = Environment.get_test_gateway(TestFirewallRule._client) gateway_obj = Gateway( TestFirewallRule._client, href=gateway_res.get('href')) firewall_rules = gateway_obj.get_firewall_rules() for rule in firewall_rules.firewallRules.firewallRule: if rule.name == TestFirewallRule.__firewall_rule_name: TestFirewallRule._rule_id = rule.id break
def test_0000_setup(self): """Setup the gateway required for the other tests in this module. Create a gateway as per the configuration stated above. This test passes if the gateway is created successfully. """ TestGateway._client = Environment.get_sys_admin_client() TestGateway._vdc = Environment.get_test_vdc(TestGateway._client) TestGateway._org_client = Environment.get_client_in_default_org( CommonRoles.ORGANIZATION_ADMINISTRATOR) TestGateway._config = Environment.get_config() TestGateway._gateway = Environment.get_test_gateway( TestGateway._client) if TestGateway._gateway is not None: task = TestGateway._vdc.delete_gateway(self._name) result = TestGateway._client.get_task_monitor().wait_for_success( task=task) self.assertEqual(result.get('status'), TaskStatus.SUCCESS.value) external_network = Environment.get_test_external_network( TestGateway._client) ext_net_resource = external_network.get_resource() ip_scopes = ext_net_resource.xpath( 'vcloud:Configuration/vcloud:IpScopes/vcloud:IpScope', namespaces=NSMAP) first_ipscope = ip_scopes[0] gateway_ip = first_ipscope.Gateway.text prefix_len = netmask_to_cidr_prefix_len(gateway_ip, first_ipscope.Netmask.text) subnet_addr = gateway_ip + '/' + str(prefix_len) ext_net_to_participated_subnet_with_ip_settings = { ext_net_resource.get('name'): { subnet_addr: 'Auto' } } gateway_ip_arr = gateway_ip.split('.') last_ip_digit = int(gateway_ip_arr[-1]) + 1 gateway_ip_arr[-1] = str(last_ip_digit) next_ip = '.'.join(gateway_ip_arr) ext_net_to_subnet_with_ip_range = { ext_net_resource.get('name'): { subnet_addr: [next_ip + '-' + next_ip] } } ext_net_to_rate_limit = {ext_net_resource.get('name'): {100: 100}} TestGateway._gateway = TestGateway._vdc.create_gateway( self._name, [ext_net_resource.get('name')], 'compact', None, True, ext_net_resource.get('name'), gateway_ip, True, False, False, False, True, ext_net_to_participated_subnet_with_ip_settings, True, ext_net_to_subnet_with_ip_range, ext_net_to_rate_limit) result = TestGateway._client.get_task_monitor().wait_for_success( task=TestGateway._gateway.Tasks.Task) self.assertEqual(result.get('status'), TaskStatus.SUCCESS.value)
def setUp(self): self._config = Environment.get_config() self._host = self._config['vcd']['host'] self._org = self._config['vcd']['sys_org_name'] self._user = self._config['vcd']['sys_admin_username'] self._pass = self._config['vcd']['sys_admin_pass'] self._logger = Environment.get_default_logger()
def test_0000_setup(self): # TODO(): need more pipeline work before this test can actually be run TestPVDC._client = Environment.get_sys_admin_client() TestPVDC._config = Environment.get_config() TestPVDC._vcenter_host_name = self._config['vc']['vcenter_host_name'] TestPVDC._pvdc_name = self._config['pvdc']['pvdc_name'] TestPVDC._resource_pool_names = \ self._config['pvdc']['resource_pool_names']
def test_0000_setup(self): """Load configuration and create a click runner to invoke CLI.""" self._config = Environment.get_config() TestPVDC._logger = Environment.get_default_logger() TestPVDC._pvdc_name = self._config['pvdc']['pvdc_name'] sp_list = self._config['pvdc']['storage_profiles'] TestPVDC._storage_profiles = " ".join(str(x) for x in sp_list) TestPVDC._runner = CliRunner() self._login()
def test_0040_get_vc(self): """Test the method VM.get_vc(). This test passes if the retrieved vc name matches with the expected vc name. """ vm = VM(TestVM._sys_admin_client, href=TestVM._test_vapp_first_vm_href) retrieved_vc_name = vm.get_vc() expected_vc_name = Environment.get_config()['vc']['vcenter_host_name'] self.assertEqual(retrieved_vc_name, expected_vc_name)
def test_0020_pvdc_setup(self): TestPVDC._config = Environment.get_config() TestPVDC._pvdc_name = self._config['pvdc']['pvdc_name'] TestPVDC._resource_pool_names = \ self._config['pvdc']['respools_to_attach'] TestPVDC._vms_to_migrate = [] TestPVDC._vms_to_migrate.append(TestPVDC._test_vapp_first_vm_name) TestPVDC._target_resource_pool = \ self._config['pvdc']['target_resource_pool']
def setUp(self): """Load configuration and create a click runner to invoke CLI.""" self._config = Environment.get_config() self._host = self._config['vcd']['host'] self._org = self._config['vcd']['sys_org_name'] self._admin_user = self._config['vcd']['sys_admin_username'] self._admin_pass = self._config['vcd']['sys_admin_pass'] self._logger = Environment.get_default_logger() self._runner = CliRunner()
def test_0000_setup(self): self._config = Environment.get_config() TestVappDhcp._logger = Environment.get_default_logger() TestVappDhcp._client = Environment.get_sys_admin_client() TestVappDhcp._runner = CliRunner() default_org = self._config['vcd']['default_org_name'] self._login() TestVappDhcp._runner.invoke(org, ['use', default_org]) vapp = Environment.get_test_vapp_with_network(TestVappDhcp._client) self.assertIsNotNone(vapp)
def test_0020_update_rate_limit(self): """Updates existing rate limit of gateway. It will trigger the cli command configure-rate-limits list """ self._config = Environment.get_config() config = self._config['external_network'] ext_name = config['name'] result = self._runner.invoke( gateway, args=['configure-rate-limits', 'list', self._name]) self.assertEqual(0, result.exit_code)
def test_0020_pvdc_setup(self): TestPVDC._config = Environment.get_config() TestPVDC._pvdc_name = self._config['pvdc']['pvdc_name'] TestPVDC._resource_pool_names = \ self._config['pvdc']['respools_to_attach'] TestPVDC._vms_to_migrate = [] TestPVDC._vms_to_migrate.append(TestPVDC._test_vapp_first_vm_name) TestPVDC._target_resource_pool = \ self._config['pvdc']['target_resource_pool'] TestPVDC._storage_profiles = \ self._config['pvdc']['storage_profiles']
def test_0022_disable_rate_limit(self): """Disables rate limit of gateway. It will trigger the cli command configure-rate-limits disable """ self._config = Environment.get_config() config = self._config['external_network'] ext_name = config['name'] result = self._runner.invoke(gateway, args=[ 'configure-rate-limits', 'disable', self._name, '-e', ext_name ])
def test_0000_setup(self): TestCaCertificates._client = Environment.get_sys_admin_client() TestCaCertificates._config = Environment.get_config() TestCaCertificates._org = Environment.get_test_org( TestCaCertificates._client) test_gateway = Environment.get_test_gateway(TestCaCertificates._client) gateway_obj1 = Gateway(TestCaCertificates._client, GatewayConstants.name, href=test_gateway.get('href')) TestCaCertificates.gateway_obj = gateway_obj1 TestCaCertificates._runner = CliRunner() default_org = self._config['vcd']['default_org_name'] self._login() TestCaCertificates._runner.invoke(org, ['use', default_org])
def test_0020_update_rate_limit(self): """Updates existing rate limit of gateway. It will trigger the cli command configure-rate-limits update """ self._config = Environment.get_config() config = self._config['external_network'] ext_name = config['name'] result = self._runner.invoke(gateway, args=[ 'configure-rate-limits', 'update', self._name, '-r', [(ext_name, '101.0', '101.0')] ])
def test_0001_list_static_routes(self): """List Static Routes of the gateway. Invokes the list_static_routes of the gateway. """ TestStaticRoute._config = Environment.get_config() gateway = Environment. \ get_test_gateway(TestStaticRoute._client) gateway_obj = Gateway(TestStaticRoute._client, TestStaticRoute._name, href=gateway.get('href')) static_route_list = gateway_obj.list_static_routes() # Verify self.assertTrue(len(static_route_list) > 0)
def test_0000_setup(self): """ Create one external network as per the configuration stated aboveself. Choose first unused port group which is not a VxLAN. Unused port groups have network names set to '--'. VxLAN port groups have name starting with 'vxw-'. Test the method Platform.create_external_network(). This test passes if external network is created successfully. """ logger = Environment.get_default_logger() TestExtNet._sys_admin_client = Environment.get_sys_admin_client() TestExtNet._config = Environment.get_config() platform = Platform(TestExtNet._sys_admin_client) vc_name = TestExtNet._config['vc']['vcenter_host_name'] name_filter = ('vcName', vc_name) query = TestExtNet._sys_admin_client.get_typed_query( ResourceType.PORT_GROUP.value, query_result_format=QueryResultFormat.RECORDS, equality_filter=name_filter) for record in list(query.execute()): if record.get('networkName') == '--': if not record.get('name').startswith('vxw-'): TestExtNet._port_group = record.get('name') break self.assertIsNotNone(self._port_group, 'None of the port groups are free.') ext_net = platform.create_external_network( name=TestExtNet._name, vim_server_name=vc_name, port_group_names=[TestExtNet._port_group], gateway_ip=TestExtNet._gateway, netmask=TestExtNet._netmask, ip_ranges=[TestExtNet._ip_range], description=TestExtNet._description, primary_dns_ip=TestExtNet._dns1, secondary_dns_ip=TestExtNet._dns2, dns_suffix=TestExtNet._dns_suffix) task = ext_net.find('vcloud:Tasks', NSMAP).Task[0] TestExtNet._sys_admin_client.get_task_monitor().wait_for_success( task=task) logger.debug('Created external network ' + TestExtNet._name + '.')
def test_0001_list_firewall_rules(self): """List Firewall Rules of the gateway. Invokes the get_firewall_rules_list of the gateway. """ TestFirewallRules._config = Environment.get_config() gateway = Environment. \ get_test_gateway(TestFirewallRules._org_client) gateway_obj = Gateway(TestFirewallRules._org_client, TestFirewallRules._name, href=gateway.get('href')) firewall_rules_list = gateway_obj.get_firewall_rules_list() # Verify self.assertTrue(len(firewall_rules_list) > 0)
def test_0001_list_dhcp_pools(self): """List DHCP pools of the gateway. Invokes the list_dhcp_pools of the gateway. """ TestDhcp._config = Environment.get_config() gateway = Environment. \ get_test_gateway(TestDhcp._client) gateway_obj = Gateway(TestDhcp._client, TestDhcp._name, href=gateway.get('href')) dhcp_pool_list = gateway_obj.list_dhcp_pools() # Verify self.assertTrue(len(dhcp_pool_list) > 0)
def test_0000_setup(self): TestCertificates._client = Environment.get_sys_admin_client() TestCertificates._config = Environment.get_config() TestCertificates._org = Environment.get_test_org( TestCertificates._client) test_gateway = Environment.get_test_gateway(TestCertificates._client) gateway_obj1 = Gateway(TestCertificates._client, GatewayConstants.name, href=test_gateway.get('href')) TestCertificates.gateway_obj = gateway_obj1 TestCertificates._runner = CliRunner() default_org = self._config['vcd']['default_org_name'] self._login() TestCertificates._runner.invoke(org, ['use', default_org])
def _create_client_with_credentials(cls): """Create client and login.""" config = Environment.get_config() host = config['vcd']['host'] org = config['vcd']['sys_org_name'] user = config['vcd']['sys_admin_username'] pwd = config['vcd']['sys_admin_pass'] client = ApiClient(host, verify_ssl_certs=False, log_requests=True, log_bodies=True, log_headers=True) creds = BasicLoginCredentials(user, org, pwd) client.set_credentials(creds) return client
def test_0000_setup(self): # TODO(): need more pipeline work before this test can actually be run TestVC._client = Environment.get_sys_admin_client() TestVC._config = Environment.get_config() TestVC._vcenter_host_name = self._config['vc']['vcenter_host_name'] TestVC._vcenter_invalid = 'xyz' TestVC._vcServerName = self._config['vc']['vcServerName'] TestVC._vcServerHost = self._config['vc']['vcServerHost'] TestVC._vcAdminUser = self._config['vc']['vcAdminUser'] TestVC._vcAdminPwd = self._config['vc']['vcAdminPwd'] TestVC._NSXServerName = self._config['vc']['NSXServerName'] TestVC._NSXHost = self._config['vc']['NSXHost'] TestVC._NSXAdminUser = self._config['vc']['NSXAdminUser'] TestVC._NSXAdminPwd = self._config['vc']['NSXAdminPwd'] TestVC._isEnabled = False
def test_0001_list_firewall_rules(self): """List Firewall Rules of the gateway. Invokes the get_firewall_rules_list of the gateway. """ TestFirewallRules._config = Environment.get_config() gateway = Environment. \ get_test_gateway(TestFirewallRules._org_client) gateway_obj = Gateway( TestFirewallRules._org_client, TestFirewallRules._name, href=gateway.get('href')) firewall_rules_list = gateway_obj.get_firewall_rules_list() # Verify self.assertTrue(len(firewall_rules_list) > 0)
def test_0000_setup(self): """Add one orgvdc, one gateways and one routed orgvdc networks. """ TestIpSecVpn._client = Environment.get_sys_admin_client() TestIpSecVpn._config = Environment.get_config() TestIpSecVpn._org = Environment.get_test_org(TestIpSecVpn._client) TestIpSecVpn._pvdc_name = Environment.get_test_pvdc_name() TestIpSecVpn._ext_config = TestIpSecVpn._config['external_network'] TestIpSecVpn._ext_net_name = TestIpSecVpn._ext_config['name'] # Create another vdc, gateway and routed network self.__create_ovdc() self.__create_advanced_gateway() self.__create_routed_ovdc_network()
def test_0098_teardown(self): """Delete a DHCP Pool from gateway. It will trigger the cli command services dhcp-pool delete """ self._config = Environment.get_config() TestDhcpPool._logger = Environment.get_default_logger() TestDhcpPool._runner = CliRunner() default_org = self._config['vcd']['default_org_name'] TestDhcpPool._runner.invoke(org, ['use', default_org]) result = TestDhcpPool._runner.invoke( gateway, args=[ 'services', 'dhcp-pool', 'delete', TestDhcpPool._gateway_name, TestDhcpPool._pool_id]) self.assertEqual(0, result.exit_code)
def test_0000_setup(self): """Load configuration and create a click runner to invoke CLI.""" self._config = Environment.get_config() VdcNetworkTests._logger = Environment.get_default_logger() VdcNetworkTests._runner = CliRunner() default_org = self._config['vcd']['default_org_name'] self._login() VdcNetworkTests._runner.invoke(org, ['use', default_org]) result_create1 = VdcNetworkTests._runner.invoke(network, ['routed', 'create', VdcNetworkTests._name, '-g', GatewayConstants.name, '--subnet', VdcNetworkTests.__subnet ]) self.assertEqual(0, result_create1.exit_code)
def test_0017_add_sub_allocated_ip_pools(self): """Adds new ip range present to the sub allocate pool of gateway. It will trigger the cli command sub-allocate-ip add """ self._config = Environment.get_config() config = self._config['external_network'] gateway_sub_allocated_ip_range = \ config['gateway_sub_allocated_ip_range'] ext_name = config['name'] result = self._runner.invoke(gateway, args=[ 'sub-allocate-ip', 'add', self._name, '-e', ext_name, '--ip-range', gateway_sub_allocated_ip_range ]) self.assertEqual(0, result.exit_code)
def test_0000_setup(self): self._config = Environment.get_config() TestFirewallRule._logger = Environment.get_default_logger() TestFirewallRule._runner = CliRunner() default_org = self._config['vcd']['default_org_name'] self._login() TestFirewallRule._runner.invoke(org, ['use', default_org]) result = TestFirewallRule._runner.invoke( gateway, args=[ 'services', 'firewall', 'create', TestFirewallRule.__name, '--name', TestFirewallRule.__firewall_rule_name, '--action', 'accept', '--type', 'User', '--enabled', '--logging-enabled' ]) self.assertEqual(0, result.exit_code)
def test_0000_setup(self): """Adds new DHCP pool to the gateway. It will trigger the cli command service dhcp-pool create """ self._config = Environment.get_config() TestDhcpPool._logger = Environment.get_default_logger() TestDhcpPool._runner = CliRunner() default_org = self._config['vcd']['default_org_name'] self._login() TestDhcpPool._runner.invoke(org, ['use', default_org]) result = TestDhcpPool._runner.invoke( gateway, args=[ 'services', 'dhcp-pool', 'create', TestDhcpPool._gateway_name, '-r', TestDhcpPool._pool_ip_range]) self.assertEqual(0, result.exit_code)
def test_0000_setup(self): """Load configuration and create a click runner to invoke CLI.""" VmTest._config = Environment.get_config() VmTest._logger = Environment.get_default_logger() VmTest._client = Environment.get_client_in_default_org( CommonRoles.ORGANIZATION_ADMINISTRATOR) VmTest._media_resource = Environment.get_test_media_resource() VmTest._runner = CliRunner() default_org = VmTest._config['vcd']['default_org_name'] VmTest._login(self) VmTest._runner.invoke(org, ['use', default_org]) VmTest._test_vdc = Environment.get_test_vdc(VmTest._client) VmTest._test_vapp = Environment.get_test_vapp_with_network( VmTest._client) VmTest._test_vm = VM( VmTest._client, href=VmTest._test_vapp.get_vm(VAppConstants.vm1_name).get('href'))
def test_0000_setup(self): """Add one orgvdc, one gateways and one routed orgvdc networks. """ TestIpSecVpn._client = Environment.get_sys_admin_client() TestIpSecVpn._logger = Environment.get_default_logger() TestIpSecVpn._config = Environment.get_config() TestIpSecVpn._org = Environment.get_test_org(TestIpSecVpn._client) TestIpSecVpn._pvdc_name = Environment.get_test_pvdc_name() TestIpSecVpn._ext_config = TestIpSecVpn._config['external_network'] TestIpSecVpn._ext_net_name = TestIpSecVpn._ext_config['name'] # Create another vdc, gateway and routed network self.__create_ovdc() self.__create_advanced_gateway() self.__create_routed_ovdc_network() test_gateway = Environment.get_test_gateway(TestIpSecVpn._client) gateway_obj1 = Gateway(TestIpSecVpn._client, GatewayConstants.name, href=test_gateway.get('href')) gateway_obj2 = TestIpSecVpn._gateway_obj TestIpSecVpn._local_ip = self.__get_ip_address( gateway=gateway_obj1, ext_net_name=TestIpSecVpn._ext_net_name) TestIpSecVpn._peer_ip = self.__get_ip_address( gateway=gateway_obj2, ext_net_name=TestIpSecVpn._ext_net_name) TestIpSecVpn._runner = CliRunner() default_org = self._config['vcd']['default_org_name'] self._login() TestIpSecVpn._runner.invoke(org, ['use', default_org]) result = TestIpSecVpn._runner.invoke( gateway, args=[ 'services', 'ipsec-vpn', 'create', TestIpSecVpn._name, '--name', TestIpSecVpn._ipsec_vpn_name, '--local-id', TestIpSecVpn._local_id, '--peer-id', TestIpSecVpn._peer_id, '--local-ip', TestIpSecVpn._local_ip, '--peer-ip', TestIpSecVpn._peer_ip, '--local-subnet', TestIpSecVpn._local_subnet, '--peer-subnet', TestIpSecVpn._peer_subnet, '--pre-shared-key', TestIpSecVpn._psk, '--enable']) self.assertEqual(0, result.exit_code)
def test_0000_setup(self): """ Create one external network as per the configuration stated aboveself. Choose first unused port group which is not a VxLAN. Unused port groups have network names set to '--'. VxLAN port groups have name starting with 'vxw-'. Test the method Platform.create_external_network(). This test passes if external network is created successfully. """ logger = Environment.get_default_logger() TestExtNet._sys_admin_client = Environment.get_sys_admin_client() TestExtNet._config = Environment.get_config() TestExtNet._common_ext_net_name = TestExtNet._config[ 'external_network']['name'] platform = Platform(TestExtNet._sys_admin_client) vc_name = TestExtNet._config['vc']['vcenter_host_name'] TestExtNet._vc2_host_ip = TestExtNet._config['vc2']['vcenter_host_ip'] portgrouphelper = PortgroupHelper(TestExtNet._sys_admin_client) pg_name = portgrouphelper.get_available_portgroup_name( vc_name, TestExtNet._portgroupType) ext_net = platform.create_external_network( name=TestExtNet._name, vim_server_name=vc_name, port_group_names=[pg_name], gateway_ip=TestExtNet._gateway, netmask=TestExtNet._netmask, ip_ranges=[TestExtNet._ip_range], description=TestExtNet._description, primary_dns_ip=TestExtNet._dns1, secondary_dns_ip=TestExtNet._dns2, dns_suffix=TestExtNet._dns_suffix) task = ext_net['{' + NSMAP['vcloud'] + '}Tasks'].Task[0] TestExtNet._sys_admin_client.get_task_monitor().wait_for_success( task=task) logger.debug('Created external network ' + TestExtNet._name + '.')
def test_0000_setup(self): self._config = Environment.get_config() TestVappFirewall._logger = Environment.get_default_logger() TestVappFirewall._client = Environment.get_sys_admin_client() TestVappFirewall._runner = CliRunner() default_org = self._config['vcd']['default_org_name'] self._login() TestVappFirewall._runner.invoke(org, ['use', default_org]) vapp = Environment.get_test_vapp_with_network(TestVappFirewall._client) vapp.reload() TestVappFirewall._vapp_network_name = \ Environment.get_default_orgvdc_network_name() task = vapp.connect_org_vdc_network( TestVappFirewall._vapp_network_name, fence_mode=FenceMode.NAT_ROUTED.value) result = TestVappFirewall._client.get_task_monitor().wait_for_success( task) self.assertEqual(result.get('status'), TaskStatus.SUCCESS.value)
def test_0000_setup(self): """Add Static Route in the gateway. It will trigger the cli command 'services static-route create' """ self._config = Environment.get_config() TestStaticRoute._logger = Environment.get_default_logger() TestStaticRoute._runner = CliRunner() default_org = self._config['vcd']['default_org_name'] self._login() TestStaticRoute._runner.invoke(org, ['use', default_org]) result = TestStaticRoute._runner.invoke( gateway, args=[ 'services', 'static-route', 'create', TestStaticRoute._name, '--type', TestStaticRoute._type, '--network', TestStaticRoute._network, '--next-hop', TestStaticRoute._next_hop, '--mtu', TestStaticRoute._mtu, '--desc', TestStaticRoute._desc, '-v', TestStaticRoute._vnic]) self.assertEqual(0, result.exit_code)
def test_0000_setup(self): """Add DHCP pool in the gateway. Invokes the add_dhcp_pool of the gateway. """ TestDhcp._client = Environment.get_sys_admin_client() TestDhcp._config = Environment.get_config() gateway = Environment. \ get_test_gateway(TestDhcp._client) gateway_obj = Gateway(TestDhcp._client, TestDhcp._name, href=gateway.get('href')) gateway_obj.add_dhcp_pool(TestDhcp._pool_ip_range) dhcp_resource = gateway_obj.get_dhcp() # Verify matchFound = False for ipPool in dhcp_resource.ipPools.ipPool: if ipPool.ipRange.text == TestDhcp._pool_ip_range: matchFound = True break self.assertTrue(matchFound)
def test_0000_setup(self): """Load configuration and create a click runner to invoke CLI.""" VAppTest._config = Environment.get_config() VAppTest._logger = Environment.get_default_logger() VAppTest._client = Environment.get_client_in_default_org( CommonRoles.ORGANIZATION_ADMINISTRATOR) VAppTest._runner = CliRunner() default_org = VAppTest._config['vcd']['default_org_name'] VAppTest._default_org = default_org VAppTest._login(self) VAppTest._runner.invoke(org, ['use', default_org]) VAppTest._test_vdc = Environment.get_test_vdc(VAppTest._client) VAppTest._test_vapp = create_vapp_from_template( VAppTest._client, VAppTest._test_vdc, VAppTest._test_vapp_name, VAppTest._config['vcd']['default_catalog_name'], VAppTest._config['vcd']['default_template_file_name'], power_on=False, deploy=False) VAppTest._catalog_name = VAppTest._config['vcd'][ 'default_catalog_name']
def test_0000_setup(self): """Add Static Route in the gateway. Invokes the add_static_route of the gateway. """ TestStaticRoute._client = Environment.get_sys_admin_client() TestStaticRoute._config = Environment.get_config() gateway = Environment. \ get_test_gateway(TestStaticRoute._client) gateway_obj = Gateway(TestStaticRoute._client, TestStaticRoute._name, href=gateway.get('href')) gateway_obj.add_static_route(TestStaticRoute._network, TestStaticRoute._next_hop) static_route = gateway_obj.get_static_routes() #Verify match_found = False for route in static_route.staticRoutes.route: if route.nextHop == TestStaticRoute._next_hop and \ route.network == TestStaticRoute._network: TestStaticRoute._network_id = route.network match_found = True break self.assertTrue(match_found)
def test_0000_setup(self): """Setup the gateway required for the other tests in this module. Create a gateway as per the configuration stated above. This test passes if the gateway is created successfully. """ TestGateway._client = Environment.get_sys_admin_client() TestGateway._vdc = Environment.get_test_vdc(TestGateway._client) TestGateway._org_client = Environment.get_client_in_default_org( CommonRoles.ORGANIZATION_ADMINISTRATOR) TestGateway._config = Environment.get_config() TestGateway._api_version = TestGateway._config['vcd']['api_version'] external_network = Environment.get_test_external_network( TestGateway._client) ext_net_resource = external_network.get_resource() ip_scopes = ext_net_resource.xpath( 'vcloud:Configuration/vcloud:IpScopes/vcloud:IpScope', namespaces=NSMAP) first_ipscope = ip_scopes[0] gateway_ip = first_ipscope.Gateway.text prefix_len = netmask_to_cidr_prefix_len(gateway_ip, first_ipscope.Netmask.text) subnet_addr = gateway_ip + '/' + str(prefix_len) ext_net_to_participated_subnet_with_ip_settings = { ext_net_resource.get('name'): { subnet_addr: self._ip_address_for_config_ip_setting } } ext_net_to_subnet_with_ip_range = { ext_net_resource.get('name'): { subnet_addr: [self._ip_address_for_ip_range] } } ext_net_to_rate_limit = {ext_net_resource.get('name'): {100: 100}} if float(TestGateway._api_version) <= float( ApiVersion.VERSION_30.value): TestGateway._gateway = \ TestGateway._vdc.create_gateway_api_version_30( self._name, [ext_net_resource.get('name')], 'compact', None, True, ext_net_resource.get('name'), gateway_ip, True, False, False, False, True, ext_net_to_participated_subnet_with_ip_settings, True, ext_net_to_subnet_with_ip_range, ext_net_to_rate_limit) elif float(TestGateway._api_version) == float( ApiVersion.VERSION_31.value): TestGateway._gateway = \ TestGateway._vdc.create_gateway_api_version_31( self._name, [ext_net_resource.get('name')], 'compact', None, True, ext_net_resource.get('name'), gateway_ip, True, False, False, False, True, ext_net_to_participated_subnet_with_ip_settings, True, ext_net_to_subnet_with_ip_range, ext_net_to_rate_limit) elif float(TestGateway._api_version) >= float( ApiVersion.VERSION_32.value): TestGateway._gateway = \ TestGateway._vdc.create_gateway_api_version_32( self._name, [ext_net_resource.get('name')], 'compact', None, True, ext_net_resource.get('name'), gateway_ip, True, False, False, False, True, ext_net_to_participated_subnet_with_ip_settings, True, ext_net_to_subnet_with_ip_range, ext_net_to_rate_limit) result = TestGateway._client.get_task_monitor().wait_for_success( task=TestGateway._gateway.Tasks.Task) self.assertEqual(result.get('status'), TaskStatus.SUCCESS.value) TestGateway._extension = Extension(TestGateway._client) TestGateway._extension.get_resource() link = find_link(TestGateway._extension.resource, RelationType.DOWN, EntityType.SYSTEM_SETTINGS.value) settings = TestGateway._client.get_resource(link.href) syslog_server_settings = settings.GeneralSettings.SyslogServerSettings if hasattr(syslog_server_settings, '{' + NSMAP['vcloud'] + '}SyslogServerIp1'): return syslog_server_settings.append( E.SyslogServerIp1(TestGateway._syslog_server_ip1)) TestGateway._client.put_resource(link.href, settings, EntityType.SYSTEM_SETTINGS.value) TestGateway._extension.reload() settings = TestGateway._client.get_resource(link.href) self.assertTrue( hasattr(syslog_server_settings, '{' + NSMAP['vcloud'] + '}SyslogServerIp1'))