# Test code for the ACI modules # Copyright 2018, Dag Wieers (@dagwieers) # GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt) # CLEAN ENVIRONMENT - name: Remove FC domain aci_domain: &domain_absent host: "{{ aci_hostname }}" username: "{{ aci_username }}" password: "{{ aci_password }}" validate_certs: '{{ aci_validate_certs | default(false) }}' use_ssl: '{{ aci_use_ssl | default(true) }}' use_proxy: '{{ aci_use_proxy | default(true) }}' output_level: info domain: fc_dom domain_type: fc state: absent # ADD DOMAIN - name: Add FC domain (check_mode) aci_domain: &domain_present host: '{{ aci_hostname }}' username: '{{ aci_username }}' password: '{{ aci_password }}' validate_certs: '{{ aci_validate_certs | default(false) }}' use_ssl: '{{ aci_use_ssl | default(true) }}' use_proxy: '{{ aci_use_proxy | default(true) }}' output_level: info domain: fc_dom domain_type: fc state: present check_mode: yes register: cm_add_domain - name: Add FC domain (normal mode) aci_domain: *domain_present register: nm_add_domain - name: Verify add_domain assert: that: - cm_add_domain.changed == nm_add_domain.changed == true - 'cm_add_domain.sent == nm_add_domain.sent == {"fcDomP": {"attributes": {"name": "fc_dom"}}}' - 'cm_add_domain.proposed == nm_add_domain.proposed == {"fcDomP": {"attributes": {"name": "fc_dom"}}}' - cm_add_domain.current == cm_add_domain.previous == nm_add_domain.previous == [] - 'nm_add_domain.current == [{"fcDomP": {"attributes": {"dn": "uni/fc-fc_dom", "name": "fc_dom", "nameAlias": "", "ownerKey": "", "ownerTag": ""}}}]' - name: Add FC domain again (check_mode) aci_domain: *domain_present check_mode: yes register: cm_add_domain_again - name: Add FC domain again (normal mode) aci_domain: *domain_present register: nm_add_domain_again - name: Verify add_domain_again assert: that: - cm_add_domain_again.changed == nm_add_domain_again.changed == false # QUERY ALL DOMAINS - name: Query all FC domains (check_mode) aci_domain: &domain_query host: '{{ aci_hostname }}' username: '{{ aci_username }}' password: '{{ aci_password }}' validate_certs: '{{ aci_validate_certs | default(false) }}' use_ssl: '{{ aci_use_ssl | default(true) }}' use_proxy: '{{ aci_use_proxy | default(true) }}' output_level: info domain_type: fc state: query check_mode: yes register: cm_query_all_domains - name: Query all FC domains (normal mode) aci_domain: *domain_query register: nm_query_all_domains - name: Verify query_all_domains assert: that: - cm_query_all_domains.changed == nm_query_all_domains.changed == false - cm_query_all_domains == nm_query_all_domains - nm_query_all_domains.current|length >= 1 # QUERY A DOMAIN - name: Query our FC domain (check_mode) aci_domain: <<: *domain_query domain: fc_dom check_mode: yes register: cm_query_domain - name: Query our FC domain (normal mode) aci_domain: <<: *domain_query domain: fc_dom register: nm_query_domain - name: Verify query_domain assert: that: - cm_query_domain.changed == nm_query_domain.changed == false - cm_query_domain == nm_query_domain - nm_query_domain.current.0.fcDomP.attributes.dn == 'uni/fc-fc_dom' - nm_query_domain.current.0.fcDomP.attributes.name == 'fc_dom' # REMOVE DOMAIN - name: Remove FC domain (check_mode) aci_domain: *domain_absent check_mode: yes register: cm_remove_domain - name: Remove FC domain (normal mode) aci_domain: *domain_absent register: nm_remove_domain - name: Verify remove_domain assert: that: - cm_remove_domain.changed == nm_remove_domain.changed == true - 'cm_remove_domain.current == cm_remove_domain.previous == nm_remove_domain.previous == [{"fcDomP": {"attributes": {"dn": "uni/fc-fc_dom", "name": "fc_dom", "nameAlias": "", "ownerKey": "", "ownerTag": ""}}}]' - nm_remove_domain.current == [] - name: Remove FC domain again (check_mode) aci_domain: *domain_absent check_mode: yes register: cm_remove_domain_again - name: Remove FC domain again (normal mode) aci_domain: *domain_absent register: nm_remove_domain_again - name: Verify remove_domain_again assert: that: - cm_remove_domain_again.changed == nm_remove_domain_again.changed == false # QUERY NON-EXISTING DOMAIN - name: Query non-existing FC domain (check_mode) aci_domain: <<: *domain_query domain: fc_dom check_mode: yes register: cm_query_non_domain - name: Query non-existing FC domain (normal mode) aci_domain: <<: *domain_query domain: fc_dom register: nm_query_non_domain - name: Verify query_non_domain assert: that: - cm_query_non_domain.changed == nm_query_non_domain.changed == false - cm_query_non_domain == nm_query_non_domain - nm_query_non_domain.current == []