CiscoDevNet / ansible-aci

Cisco ACI Ansible Collection
https://galaxy.ansible.com/cisco/aci
GNU General Public License v3.0
143 stars 97 forks source link

aci_epg_to_domain: please allow "_" (underscore) as delimiter #533

Closed gvonstangen closed 9 months ago

gvonstangen commented 1 year ago

Community Note

Description

When adding an EPG to a VMM domain (VMware in my case), the delimiter "_" (underscore) is not allowed by aci_epg_to_domain. However if I do a native rest call, then the delimiter is allowed. So it is not restriction from APIC.

New or Affected Module(s):

APIC version and APIC Platform

Collection versions

References

akinross commented 1 year ago

Thank you for raising the issue, have added it to the to items.

akinross commented 1 year ago

HI @gvonstangen,

I had a quick look at your request but are you sure you can configure "_" as a delimiter?

When I look at the documentation it has the following regex for delimiter validation: ^[^a-zA-Z0-9;>"-*`,-.;[]/\{}:?\s&<]+$

This does not include "_" as a option to be configured.

Also when I try to configure in the UI I get the following error: Error: 400 - Validation failed: Tenant/Application/EPG name contains _. Please use another delimiter or rename.

gvonstangen commented 1 year ago

Hi @akinross,

I did this sucesfully a few days ago with the following REST call from ansible:

- name: Create VMware port group in DVS cisco.aci.aci_rest: <<: *aci_login method: post path: /api/mo.json content: fvRsDomAtt: attributes: dn: "uni/tn-{{ item.tenant }}/ap-{{ item.apname }}/epg-{{ item.epgname }}/rsdomAtt-[uni/vmmp-VMware/dom-{{ item.vds }}]" delimiter: "_" resImedcy: pre-provision instrImedcy: immediate portAllocation: elastic bindingType: staticBinding customEpgName: "{{ item.custname }}" status: "created,modified" children: - vmmSecP: attributes: forgedTransmits: accept macChanges: accept status: "created,modified" - fvUplinkOrderCont: attributes: active: "{{ item.uplk }}" status: "created,modified" loop: "{{ epgparam }}" when: item.create and item.encapid is not defined tags: crevmportgrp

Which version did you test against ? We are currently running 5.2(8d), so did the behaviour maybe change in later versions ?

akinross commented 1 year ago

HI @gvonstangen,

I tested against 5.2(7g), 5.2(8f) and 6.0(2h), perhaps it got introduced in later version indeed.

Could your provide me logs of the tasks execution with acirest? Or a query to the object where is set as delimiter?

akinross commented 10 months ago

HI @gvonstangen,

Did you get a chance to get the additional information for me?

akinross commented 10 months ago

Hi @gvonstangen, found the issue why I could not configure. The DN was already containing "_" character, dure to tenant, ap and epg naming attributes. Created PR that is attached to this issue.