def config_v2_svc_chain(self, stack_name): svc_pt_hs = self.config_heat_obj(stack_name) stack = svc_pt_hs.heat_client_obj op = stack.stacks.get(stack_name).outputs time.sleep(5) for output in op: if output['output_key'] == 'left_VM_ID': left_vm_id = output['output_value'] elif output['output_key'] == 'right_VM_ID': right_vm_id = output['output_value'] elif output['output_key'] == 'left_vn_FQDN': left_vn_fqdn = output['output_value'] elif output['output_key'] == 'right_vn_FQDN': right_vn_fqdn = output['output_value'] elif output['output_key'] == 'si_fqdn': si_fqdn = output['output_value'] elif output['output_key'] == 'si2_fqdn': si2_fqdn = output['output_value'] si2_fqdn=":".join(si2_fqdn) #Update the policy si_fqdn=":".join(si_fqdn) left_vn_fqdn=":".join(left_vn_fqdn) right_vn_fqdn=":".join(right_vn_fqdn) if 'multi' in stack_name: self.update_stack(svc_pt_hs, change_sets=[['left_vn_fqdn', left_vn_fqdn], ['right_vn_fqdn', right_vn_fqdn], ['service_instance1_fq_name', si_fqdn], ['service_instance2_fq_name', si2_fqdn]]) else: self.update_stack(svc_pt_hs, change_sets=[['left_vn_fqdn', left_vn_fqdn], ['right_vn_fqdn', right_vn_fqdn], ['service_instance_fq_name', si_fqdn]]) left_vm = VMFixture(connections=self.connections,uuid = left_vm_id, image_name = 'cirros-0.3.0-x86_64-uec') left_vm.read() left_vm.verify_on_setup() right_vm = VMFixture(connections=self.connections,uuid = right_vm_id, image_name = 'cirros-0.3.0-x86_64-uec') right_vm.read() right_vm.verify_on_setup() assert left_vm.ping_with_certainty(right_vm.vm_ip, expectation=True)
def config_v2_svc_chain(self, stack_name): template = self.get_template(template_name=stack_name) env = self.get_env(env_name=stack_name) stack_name = get_random_name(stack_name) self.nova_h.get_image(env['parameters']['image']) self.nova_h.get_flavor(env['parameters']['flavor']) for k in [ 'service_template_properties_image_name', 'service_template1_properties_image_name', 'service_template2_properties_image_name', 'svm1_image' ]: if k in env['parameters']: self.nova_h.get_image(env['parameters'][k]) svc_pt_hs = self.config_heat_obj(stack_name, template, env) stack = svc_pt_hs.heat_client_obj op = stack.stacks.get(stack_name).outputs time.sleep(5) for output in op: if output['output_key'] == 'left_VM_ID': left_vm_id = output['output_value'] elif output['output_key'] == 'left_VM1_ID': left_vm1_id = output['output_value'] elif output['output_key'] == 'left_VM2_ID': left_vm2_id = output['output_value'] elif output['output_key'] == 'right_VM_ID': right_vm_id = output['output_value'] elif output['output_key'] == 'right_VM1_ID': right_vm1_id = output['output_value'] elif output['output_key'] == 'right_VM2_ID': right_vm2_id = output['output_value'] elif output['output_key'] == 'left_vn_FQDN': left_vn_fqdn = output['output_value'] elif output['output_key'] == 'right_vn_FQDN': right_vn_fqdn = output['output_value'] elif output['output_key'] == 'si_fqdn': si_fqdn = output['output_value'] elif output['output_key'] == 'si2_fqdn': si2_fqdn = output['output_value'] si2_fqdn = ":".join(si2_fqdn) elif output['output_key'] == 'left_VM1_IP_ADDRESS': left_vm1_ip_address = output['output_value'] network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix = left_vm1_ip_address network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix_len = "32" elif output['output_key'] == 'right_VM1_IP_ADDRESS': right_vm1_ip_address = output['output_value'] network_policy_entries_policy_rule_dst_addresses_subnet_ip_prefix = right_vm1_ip_address network_policy_entries_policy_rule_dst_addresses_subnet_ip_prefix_len = "32" #Update the policy si_fqdn = ":".join(si_fqdn) left_vn_fqdn = ":".join(left_vn_fqdn) right_vn_fqdn = ":".join(right_vn_fqdn) if 'multi' in stack_name: self.update_stack( svc_pt_hs, change_sets=[['left_vn_fqdn', left_vn_fqdn], ['right_vn_fqdn', right_vn_fqdn], ['service_instance1_fq_name', si_fqdn], ['service_instance2_fq_name', si2_fqdn]]) else: if 'cidr' in stack_name: if 'src_cidr' in stack_name: self.update_stack( svc_pt_hs, change_sets= [['left_vn_fqdn', left_vn_fqdn], ['right_vn_fqdn', right_vn_fqdn], ['service_instance_fq_name', si_fqdn], [ 'network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix', network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix ], [ 'network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix_len', network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix_len ]]) else: self.update_stack( svc_pt_hs, change_sets=[['left_vn_fqdn', left_vn_fqdn], ['right_vn_fqdn', right_vn_fqdn], ['service_instance_fq_name', si_fqdn]]) if 'cidr' in stack_name: if 'src_cidr' in stack_name: # 2 VMs in the left_vn left_vm1 = VMFixture(connections=self.connections, uuid=left_vm1_id, image_name='cirros') left_vm1.read() left_vm1.verify_on_setup() left_vm2 = VMFixture(connections=self.connections, uuid=left_vm2_id, image_name='cirros') left_vm2.read() left_vm2.verify_on_setup() # One VM in the right_vn right_vm = VMFixture(connections=self.connections, uuid=right_vm_id, image_name='cirros') right_vm.read() right_vm.verify_on_setup() # Ping from left_vm1 to right_vm should pass assert left_vm1.ping_with_certainty(right_vm.vm_ip, expectation=True) # Ping from left_vm2 to right_vm should fail assert left_vm2.ping_with_certainty(right_vm.vm_ip, expectation=False) else: left_vm = VMFixture(connections=self.connections, uuid=left_vm_id, image_name='cirros') left_vm.read() left_vm.verify_on_setup() right_vm = VMFixture(connections=self.connections, uuid=right_vm_id, image_name='cirros') right_vm.read() right_vm.verify_on_setup() assert left_vm.ping_with_certainty(right_vm.vm_ip, expectation=True)
def config_v2_svc_chain(self, stack_name): template = self.get_template(template_name=stack_name) env = self.get_env(env_name=stack_name) stack_name = get_random_name(stack_name) self.nova_h.get_image(env['parameters']['image']) self.nova_h.get_flavor(env['parameters']['flavor']) svc_pt_hs = self.config_heat_obj(stack_name, template, env) stack = svc_pt_hs.heat_client_obj op = stack.stacks.get(stack_name).outputs time.sleep(5) for output in op: if output['output_key'] == 'left_VM_ID': left_vm_id = output['output_value'] elif output['output_key'] == 'left_VM1_ID': left_vm1_id = output['output_value'] elif output['output_key'] == 'left_VM2_ID': left_vm2_id = output['output_value'] elif output['output_key'] == 'right_VM_ID': right_vm_id = output['output_value'] elif output['output_key'] == 'right_VM1_ID': right_vm1_id = output['output_value'] elif output['output_key'] == 'right_VM2_ID': right_vm2_id = output['output_value'] elif output['output_key'] == 'left_vn_FQDN': left_vn_fqdn = output['output_value'] elif output['output_key'] == 'right_vn_FQDN': right_vn_fqdn = output['output_value'] elif output['output_key'] == 'si_fqdn': si_fqdn = output['output_value'] elif output['output_key'] == 'si2_fqdn': si2_fqdn = output['output_value'] si2_fqdn=":".join(si2_fqdn) elif output['output_key'] == 'left_VM1_IP_ADDRESS': left_vm1_ip_address = output['output_value'] network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix = left_vm1_ip_address network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix_len = "32" elif output['output_key'] == 'right_VM1_IP_ADDRESS': right_vm1_ip_address = output['output_value'] network_policy_entries_policy_rule_dst_addresses_subnet_ip_prefix = right_vm1_ip_address network_policy_entries_policy_rule_dst_addresses_subnet_ip_prefix_len = "32" #Update the policy si_fqdn=":".join(si_fqdn) left_vn_fqdn=":".join(left_vn_fqdn) right_vn_fqdn=":".join(right_vn_fqdn) if 'multi' in stack_name: self.update_stack(svc_pt_hs, change_sets=[['left_vn_fqdn', left_vn_fqdn], ['right_vn_fqdn', right_vn_fqdn], ['service_instance1_fq_name', si_fqdn], ['service_instance2_fq_name', si2_fqdn]]) else: if 'cidr' in stack_name: if 'src_cidr' in stack_name: self.update_stack(svc_pt_hs, change_sets=[['left_vn_fqdn', left_vn_fqdn], ['right_vn_fqdn', right_vn_fqdn], ['service_instance_fq_name', si_fqdn], ['network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix', network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix], ['network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix_len', network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix_len]]) else: self.update_stack(svc_pt_hs, change_sets=[['left_vn_fqdn', left_vn_fqdn], ['right_vn_fqdn', right_vn_fqdn], ['service_instance_fq_name', si_fqdn]]) if 'cidr' in stack_name: if 'src_cidr' in stack_name: # 2 VMs in the left_vn left_vm1 = VMFixture(connections=self.connections,uuid = left_vm1_id, image_name = 'cirros') left_vm1.read() left_vm1.verify_on_setup() left_vm2 = VMFixture(connections=self.connections,uuid = left_vm2_id, image_name = 'cirros') left_vm2.read() left_vm2.verify_on_setup() # One VM in the right_vn right_vm = VMFixture(connections=self.connections,uuid = right_vm_id, image_name = 'cirros') right_vm.read() right_vm.verify_on_setup() # Ping from left_vm1 to right_vm should pass assert left_vm1.ping_with_certainty(right_vm.vm_ip, expectation=True) # Ping from left_vm2 to right_vm should fail assert left_vm2.ping_with_certainty(right_vm.vm_ip, expectation=False) else: left_vm = VMFixture(connections=self.connections,uuid = left_vm_id, image_name = 'cirros') left_vm.read() left_vm.verify_on_setup() right_vm = VMFixture(connections=self.connections,uuid = right_vm_id, image_name = 'cirros') right_vm.read() right_vm.verify_on_setup() assert left_vm.ping_with_certainty(right_vm.vm_ip, expectation=True)
def config_v2_svc_chain(self, stack_name): svc_pt_hs = self.config_heat_obj(stack_name) stack = svc_pt_hs.heat_client_obj op = stack.stacks.get(stack_name).outputs time.sleep(5) for output in op: if output['output_key'] == 'left_VM_ID': left_vm_id = output['output_value'] elif output['output_key'] == 'left_VM1_ID': left_vm1_id = output['output_value'] elif output['output_key'] == 'left_VM2_ID': left_vm2_id = output['output_value'] elif output['output_key'] == 'right_VM_ID': right_vm_id = output['output_value'] elif output['output_key'] == 'right_VM1_ID': right_vm1_id = output['output_value'] elif output['output_key'] == 'right_VM2_ID': right_vm2_id = output['output_value'] elif output['output_key'] == 'left_vn_FQDN': left_vn_fqdn = output['output_value'] elif output['output_key'] == 'right_vn_FQDN': right_vn_fqdn = output['output_value'] elif output['output_key'] == 'si_fqdn': si_fqdn = output['output_value'] elif output['output_key'] == 'si2_fqdn': si2_fqdn = output['output_value'] si2_fqdn=":".join(si2_fqdn) elif output['output_key'] == 'left_VM1_IP_ADDRESS': left_vm1_ip_address = output['output_value'] network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix = "left_vn"+":"+left_vm1_ip_address network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix_len = "32" elif output['output_key'] == 'right_VM1_IP_ADDRESS': right_vm1_ip_address = output['output_value'] network_policy_entries_policy_rule_dst_addresses_subnet_ip_prefix = "right_vn"+":"+right_vm1_ip_address network_policy_entries_policy_rule_dst_addresses_subnet_ip_prefix_len = "32" #Update the policy si_fqdn=":".join(si_fqdn) left_vn_fqdn=":".join(left_vn_fqdn) right_vn_fqdn=":".join(right_vn_fqdn) if 'multi' in stack_name: self.update_stack(svc_pt_hs, change_sets=[['left_vn_fqdn', left_vn_fqdn], ['right_vn_fqdn', right_vn_fqdn], ['service_instance1_fq_name', si_fqdn], ['service_instance2_fq_name', si2_fqdn]]) else: if 'cidr' in stack_name: if 'src_cidr' in stack_name: self.update_stack(svc_pt_hs, change_sets=[['left_vn_fqdn', left_vn_fqdn], ['right_vn_fqdn', right_vn_fqdn], ['service_instance_fq_name', si_fqdn], ['network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix', network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix], ['network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix_len', network_policy_entries_policy_rule_src_addresses_subnet_ip_prefix_len]]) else: self.update_stack(svc_pt_hs, change_sets=[['left_vn_fqdn', left_vn_fqdn], ['right_vn_fqdn', right_vn_fqdn], ['service_instance_fq_name', si_fqdn]]) if 'cidr' in stack_name: if 'src_cidr' in stack_name: # 2 VMs in the left_vn left_vm1 = VMFixture(connections=self.connections,uuid = left_vm1_id, image_name = 'cirros-0.3.0-x86_64-uec') left_vm1.read() left_vm1.verify_on_setup() left_vm2 = VMFixture(connections=self.connections,uuid = left_vm2_id, image_name = 'cirros-0.3.0-x86_64-uec') left_vm2.read() left_vm2.verify_on_setup() # One VM in the right_vn right_vm = VMFixture(connections=self.connections,uuid = right_vm_id, image_name = 'cirros-0.3.0-x86_64-uec') right_vm.read() right_vm.verify_on_setup() # Ping from left_vm1 to right_vm should pass assert left_vm1.ping_with_certainty(right_vm.vm_ip, expectation=True) # Ping from left_vm2 to right_vm should fail assert left_vm2.ping_with_certainty(right_vm.vm_ip, expectation=False) else: left_vm = VMFixture(connections=self.connections,uuid = left_vm_id, image_name = 'cirros-0.3.0-x86_64-uec') left_vm.read() left_vm.verify_on_setup() right_vm = VMFixture(connections=self.connections,uuid = right_vm_id, image_name = 'cirros-0.3.0-x86_64-uec') right_vm.read() right_vm.verify_on_setup() assert left_vm.ping_with_certainty(right_vm.vm_ip, expectation=True)