def create_attachable_access_entity_profile(infra, entity_profile, **args): """Create an attached entity profile. This provides a template to deploy hypervisor policies on a large set of leaf ports. This also provides the association of a Virtual Machine Management (VMM) domain and the physical network infrastructure. """ args = args['optional_args'] if 'optional_args' in args.keys() else args infra_attentityp = AttEntityP(infra, entity_profile) if 'enable_infrastructure_vlan' in args.keys(): if args['enable_infrastructure_vlan'] in [True, 'True']: infra_provacc = ProvAcc(infra_attentityp) elif args['enable_infrastructure_vlan'] in [False, 'False']: infra_provacc = ProvAcc(infra_attentityp) infra_provacc.delete() if 'domain_profiles' in args.keys() and is_valid(args['domain_profiles']): for domain in args['domain_profiles']: if domain['type'] == 'physical': path = 'uni/phys-' elif domain['type'] == 'vcenter': path = 'uni/vmmp-VMware/dom-' elif domain['type'] == 'layer2': path = 'uni/l2dom-' elif domain['type'] == 'layer3': path = 'uni/l3dom-' else: print 'Invalid domain type.' path = '' infra_rsdomp = RsDomP(infra_attentityp, path + domain['name']) if is_valid_key(args, 'interface_policy_group'): infra_funcp = FuncP(infra) infra_accportgrp = AccPortGrp(infra_funcp, args['interface_policy_group']) infra_rsattentp = RsAttEntP(infra_accportgrp) return infra_attentityp
def create_attachable_access_entity_profile(modir, profile_name, **args): args = args['args_from_CLI'] if 'args_from_CLI' in args.keys() else args # Query a parent infra = modir.lookupByDn('uni/infra') infra_attentityp = AttEntityP(infra, profile_name) if 'enable_infrastructure_vlan' in args.keys(): if args['enable_infrastructure_vlan'] in [True, 'True']: infra_provacc = ProvAcc(infra_attentityp) elif args['enable_infrastructure_vlan'] in [False, 'False']: infra_provacc = ProvAcc(infra_attentityp) infra_provacc.delete() if 'domain_profiles' in args.keys(): for domain in args['domain_profiles']: infra_rsdomp = RsDomP(infra_attentityp, 'uni/phys-' + domain) print_query_xml(infra) commit_change(modir, infra)