diff --git a/test/integration/targets/aci_switch_leaf_policy_profile/aliases b/test/integration/targets/aci_switch_leaf_policy_profile/aliases new file mode 100644 index 00000000000..e69de29bb2d diff --git a/test/integration/targets/aci_switch_leaf_policy_profile/tasks/main.yml b/test/integration/targets/aci_switch_leaf_policy_profile/tasks/main.yml new file mode 100644 index 00000000000..1b053d7f6af --- /dev/null +++ b/test/integration/targets/aci_switch_leaf_policy_profile/tasks/main.yml @@ -0,0 +1,202 @@ +# Test code for the ACI modules +# Copyright 2017, Bruno Calogero + +# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt) +- name: setting facts + set_fact: + aci_hostname: svlngen4-fab4-apic1.cisco.com + aci_username: admin + aci_password: F@b44p1c + +- name: Test that we have an ACI APIC host, ACI username and ACI password + fail: + msg: 'Please define the following variables: aci_hostname, aci_username and aci_password.' + when: aci_hostname is not defined or aci_username is not defined or aci_password is not defined + + +# CLEAN ENVIRONMENT +- name: Remove leaf profile + aci_switch_policy_leaf_profile: &aci_switch_policy_leaf_profile_absent + hostname: '{{ aci_hostname }}' + username: '{{ aci_username }}' + password: '{{ aci_password }}' + validate_certs: no + use_ssl: no + leaf_profile: ansible_test + state: absent + + +# ADD LEAF PROFILE +- name: Add switch policy leaf profile (check_mode) + aci_switch_policy_leaf_profile: &aci_switch_policy_leaf_profile_present + hostname: '{{ aci_hostname }}' + username: '{{ aci_username }}' + password: '{{ aci_password }}' + validate_certs: no + use_ssl: no + leaf_profile: ansible_test + state: present + check_mode: yes + register: cm_add_switch_leaf_profile + +- name: Add leaf profile (normal mode) + aci_switch_policy_leaf_profile: *aci_switch_policy_leaf_profile_present + register: nm_add_switch_leaf_profile + +- name: Add leaf profile again (check_mode) + aci_switch_policy_leaf_profile: *aci_switch_policy_leaf_profile_present + check_mode: yes + register: cm_add_switch_leaf_profile_again + +- name: Add leaf profile again (normal mode) + aci_switch_policy_leaf_profile: *aci_switch_policy_leaf_profile_present + register: nm_add_switch_leaf_profile_again + +- name: Verify add_switch_leaf_profile + assert: + that: + - cm_add_switch_leaf_profile.changed == nm_add_switch_leaf_profile.changed == true + - cm_add_switch_leaf_profile_again.changed == nm_add_switch_leaf_profile_again.changed == false + + +# CHANGE SWITCH LEAF PROFILE +- name: Change description of leaf profile (check_mode) + aci_switch_policy_leaf_profile: + <<: *aci_switch_policy_leaf_profile_present + description: Ansible test leaf profile + check_mode: yes + register: cm_add_switch_leaf_profile_descr + +- name: Change description of leaf profile (normal mode) + aci_switch_policy_leaf_profile: + <<: *aci_switch_policy_leaf_profile_present + description: Ansible test leaf profile + register: nm_add_switch_leaf_profile_descr + +- name: Change description of leaf profile again (check_mode) + aci_switch_policy_leaf_profile: + <<: *aci_switch_policy_leaf_profile_present + description: Ansible test leaf profile + check_mode: yes + register: cm_add_switch_leaf_profile_descr_again + +- name: Change description of leaf profile again (normal mode) + aci_switch_policy_leaf_profile: + <<: *aci_switch_policy_leaf_profile_present + description: Ansible test leaf profile + register: nm_add_switch_leaf_profile_descr_again + +- name: Verify add_switch_leaf_profile_descr + assert: + that: + - cm_add_switch_leaf_profile_descr.changed == nm_add_switch_leaf_profile_descr.changed == true + - cm_add_switch_leaf_profile_descr_again.changed == nm_add_switch_leaf_profile_descr_again.changed == false + + +# ADD LEAF PROFILE AGAIN +- name: Add leaf profile again with no description (check_mode) + aci_switch_policy_leaf_profile: *aci_switch_policy_leaf_profile_present + check_mode: yes + register: cm_add_switch_leaf_profile_again_no_descr + +- name: Add leaf profile again with no description (normal mode) + aci_switch_policy_leaf_profile: *aci_switch_policy_leaf_profile_present + register: nm_add_switch_leaf_profile_again_no_descr + +- name: Verify add_switch_leaf_profile_again_no_descr + assert: + that: + - cm_add_switch_leaf_profile_again_no_descr.changed == nm_add_switch_leaf_profile_again_no_descr.changed == false + + +# QUERY ALL LEAF PROFILES +- name: Query all profiles (check_mode) + aci_switch_policy_leaf_profile: &aci_switch_policy_leaf_profile_query + hostname: '{{ aci_hostname }}' + username: '{{ aci_username }}' + password: '{{ aci_password }}' + validate_certs: no + use_ssl: no + state: query + check_mode: yes + register: cm_query_all_switch_leaf_profiles + +- name: Query all switch_leaf_profiles (normal mode) + aci_switch_policy_leaf_profile: *aci_switch_policy_leaf_profile_query + register: nm_query_all_switch_leaf_profiles + +- name: Verify query_all_switch_leaf_profiles + assert: + that: + - cm_query_all_switch_leaf_profiles.changed == nm_query_all_switch_leaf_profiles.changed == false + # NOTE: Order of switch_leaf_profiles is not stable between calls + #- cm_query_all_switch_leaf_profiles == nm_query_all_switch_leaf_profiles + + +# QUERY A LEAF PROFILE +- name: Query our switch_leaf_profile + aci_switch_policy_leaf_profile: + <<: *aci_switch_policy_leaf_profile_query + leaf_profile: ansible_test + check_mode: yes + register: cm_query_switch_leaf_profile + +- name: Query our switch_leaf_profile + aci_switch_policy_leaf_profile: + <<: *aci_switch_policy_leaf_profile_query + leaf_profile: ansible_test + register: nm_query_switch_leaf_profile + +- name: Verify query_switch_leaf_profile + assert: + that: + - cm_query_switch_leaf_profile.changed == nm_query_switch_leaf_profile.changed == false + - cm_query_switch_leaf_profile == nm_query_switch_leaf_profile + + +# REMOVE LEAF PROFILE +- name: Remove switch_leaf_profile (check_mode) + aci_switch_policy_leaf_profile: *aci_switch_policy_leaf_profile_absent + check_mode: yes + register: cm_remove_switch_leaf_profile + +- name: Remove switch_leaf_profile (normal mode) + aci_switch_policy_leaf_profile: *aci_switch_policy_leaf_profile_absent + register: nm_remove_switch_leaf_profile + +- name: Remove switch_leaf_profile again (check_mode) + aci_switch_policy_leaf_profile: *aci_switch_policy_leaf_profile_absent + check_mode: yes + register: cm_remove_switch_leaf_profile_again + +- name: Remove switch_leaf_profile again (normal mode) + aci_switch_policy_leaf_profile: *aci_switch_policy_leaf_profile_absent + register: nm_remove_switch_leaf_profile_again + +- name: Verify remove_switch_leaf_profile + assert: + that: + - cm_remove_switch_leaf_profile.changed == nm_remove_switch_leaf_profile.changed == true + - cm_remove_switch_leaf_profile_again.changed == nm_remove_switch_leaf_profile_again.changed == false + + +# QUERY NON-EXISTING LEAF PROFILE +- name: Query non-existing switch_leaf_profile (check_mode) + aci_switch_policy_leaf_profile: + <<: *aci_switch_policy_leaf_profile_query + leaf_profile: ansible_test + check_mode: yes + register: cm_query_non_switch_leaf_profile + +- name: Query non-existing switch_leaf_profile (normal mode) + aci_switch_policy_leaf_profile: + <<: *aci_switch_policy_leaf_profile_query + leaf_profile: ansible_test + register: nm_query_non_switch_leaf_profile + +# TODO: Implement more tests +- name: Verify query_non_switch_leaf_profile + assert: + that: + - cm_query_non_switch_leaf_profile.changed == nm_query_non_switch_leaf_profile.changed == false + - cm_query_non_switch_leaf_profile == nm_query_non_switch_leaf_profile