diff --git a/ansible/roles/test/tasks/acl.yml b/ansible/roles/test/tasks/acl.yml index bc038fe879c..84b16d9886f 100644 --- a/ansible/roles/test/tasks/acl.yml +++ b/ansible/roles/test/tasks/acl.yml @@ -1,4 +1,3 @@ - #----------------------------------------- # Run all the acl tests. #----------------------------------------- @@ -18,21 +17,27 @@ - block: - name: Test file input. include: "{{ tests_location }}/acl_input_test/acl_input_test.yml" + when: tests_location is defined - name: Test port bind configuration. include: "{{ tests_location }}/acl_port_bind_test/acl_port_bind_test.yml" + when: tests_location is defined - name: Test orchagent logic. include: "{{ tests_location }}/acl_orchagent_logic_test/acl_orchagent_logic_test.yml" + when: tests_location is defined - name: Test traffic. include: "{{ tests_location }}/acl_traffic_test/acl_traffic_test.yml" + when: tests_location is defined - name: Test counters traffic. include: "{{ tests_location }}/acl_counter_traffic_test/acl_counter_traffic_test.yml" + when: tests_location is defined - - name: Test L4 ports. + - name: Test L4 port range. include: "{{ tests_location }}/acl_port_range_test/acl_port_range_test.yml" + when: tests_location is defined always: - name: General cleanup. diff --git a/ansible/roles/test/tasks/acl/acl_counter_traffic_test/acl_counter_traffic_test.yml b/ansible/roles/test/tasks/acl/acl_counter_traffic_test/acl_counter_traffic_test.yml index 34957a67d57..b28aea62300 100644 --- a/ansible/roles/test/tasks/acl/acl_counter_traffic_test/acl_counter_traffic_test.yml +++ b/ansible/roles/test/tasks/acl/acl_counter_traffic_test/acl_counter_traffic_test.yml @@ -12,12 +12,12 @@ - include_vars: "{{ vars_files_location }}/acl_counter_traffic_test_vars.yml" - name: Copy JSON configs onto switch. - copy: src="{{ tests_location }}/{{ testname }}/{{ item }}" dest="{{ run_dir }}/{{ item }}" + copy: src={{ tests_location }}/{{ testname }}/{{ item }} dest={{ run_dir }}/{{ item }} with_items: - "{{ config_files }}" - name: Copy JSON configs from switch into docker filesystem. - shell: docker cp "{{ run_dir }}/{{ item }}" orchagent:{{ docker_testdir }}/{{ item }} + shell: docker cp {{ run_dir }}/{{ item }} {{ orchagent }}:{{ docker_testdir }}/{{ item }} with_items: - "{{ config_files }}" @@ -31,10 +31,10 @@ delegate_to: "{{ ptf_host }}" - name: Create an ACL L3 table. - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_table_type_l3 }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_table_type_l3 }} - name: Create a rule within L3 table. - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_rule }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_rule }} - name: Check if {{ rule_name}} data is written into DBs. vars: @@ -87,7 +87,7 @@ # Delete rule and check if config is deleted as well - name: Delete L3-rule. - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_rule_delete }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_rule_delete }} - name: Check if {{ rule_name}} data is removed from DBs. vars: @@ -101,10 +101,10 @@ #-------------------- - name: Create a mirror session. - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_mirror_session }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_mirror_session }} - name: Create a mirror table. - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_table_type_mirror }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_table_type_mirror }} - name: Add neighbor. shell: ip neigh add {{ switch_if1_ip }} lladdr 0e:9c:37:42:43:67 dev Ethernet0 @@ -113,7 +113,7 @@ shell: ip route add {{ dst_mirror_subnet }} via {{ switch_if1_ip }} - name: Create a rule within mirror table. - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_rule_mirror }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_rule_mirror }} - name: Check that {{ mirror_rule_name }} data is written into DBs. vars: @@ -145,7 +145,7 @@ when: (counters_value_result.stdout|int - counters_value_initial.stdout|int) != packets_sent|int - name: Delete mirror-rule. - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_rule_mirror_delete }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_rule_mirror_delete }} - name: Check that {{ mirror_rule_name }} data is removed from DBs. vars: @@ -154,7 +154,6 @@ expect_data: false include: "{{ acl_check_db }}" - # CLEANUP. - name: Run config cleanup after {{ testname}} include: "{{ run_config_cleanup }}" diff --git a/ansible/roles/test/tasks/acl/acl_input_test/acl_input_test.yml b/ansible/roles/test/tasks/acl/acl_input_test/acl_input_test.yml index 431daa22bf1..78c83bd76b7 100644 --- a/ansible/roles/test/tasks/acl/acl_input_test/acl_input_test.yml +++ b/ansible/roles/test/tasks/acl/acl_input_test/acl_input_test.yml @@ -4,25 +4,25 @@ - include_vars: "{{ vars_files_location }}/acl_input_test_vars.yml" - name: Copy JSON configs onto switch - copy: src="{{ tests_location }}/{{ testname }}/{{ item }}" dest="{{ run_dir }}/{{ item }}" + copy: src={{ tests_location }}/{{ testname }}/{{ item }} dest={{ run_dir }}/{{ item }} with_items: - "{{ acl_config_valid }}" - "{{ acl_config_invalid }}" - name: Copy JSON configs from switch into docker filesystem - command: docker cp "{{ run_dir }}/{{ item }}" orchagent:"{{ docker_testdir }}/{{ item }}" + command: docker cp {{ run_dir }}/{{ item }} {{ orchagent }}:{{ docker_testdir }}/{{ item }} with_items: - "{{ acl_config_valid }}" - "{{ acl_config_invalid }}" - block: - name: Load valid JSON config. - command: docker exec -i orchagent swssconfig "{{ docker_testdir }}/{{ acl_config_valid }}" + command: docker exec -i {{ orchagent }} swssconfig "{{ docker_testdir }}/{{ acl_config_valid }}" register: valid_config_upload failed_when: valid_config_upload.rc != 0 - name: Load invalid JSON config and check that errors returned. - command: docker exec -i orchagent swssconfig "{{ docker_testdir }}/{{ acl_config_invalid }}" + command: docker exec -i {{ orchagent }} swssconfig "{{ docker_testdir }}/{{ acl_config_invalid }}" register: invalid_config_upload failed_when: invalid_config_upload.rc == 0 diff --git a/ansible/roles/test/tasks/acl/acl_orchagent_logic_test/acl_orchagent_logic_test.yml b/ansible/roles/test/tasks/acl/acl_orchagent_logic_test/acl_orchagent_logic_test.yml index a97852c467d..f82343f6708 100644 --- a/ansible/roles/test/tasks/acl/acl_orchagent_logic_test/acl_orchagent_logic_test.yml +++ b/ansible/roles/test/tasks/acl/acl_orchagent_logic_test/acl_orchagent_logic_test.yml @@ -5,12 +5,12 @@ - include_vars: "{{ vars_files_location }}/acl_orchagent_logic_test_vars.yml" - name: Copy JSON configs onto switch. - copy: src="{{ tests_location }}/{{ testname }}/{{ item }}" dest="{{ run_dir }}/{{ item }}" + copy: src={{ tests_location }}/{{ testname }}/{{ item }} dest={{ run_dir }}/{{ item }} with_items: - "{{ config_files }}" - name: Copy JSON configs from switch into docker filesystem. - command: docker cp "{{ run_dir }}/{{ item }}" orchagent:{{ docker_testdir }}/{{ item }} + command: docker cp {{ run_dir }}/{{ item }} {{ orchagent }}:{{ docker_testdir }}/{{ item }} with_items: - "{{ config_files }}" @@ -67,17 +67,18 @@ # Check return code from swssconfig - name: Table test - invalid operation applied for table ("OP" field). - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_operation_invalid_1 }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_operation_invalid_1 }} register: invalid_oper_1 failed_when: invalid_oper_1.rc == 0 - name: Table test - invalid operation applied for table ("OP" field). - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_operation_invalid_2 }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_operation_invalid_2 }} register: invalid_oper_2 failed_when: invalid_oper_2.rc == 0 - name: Run config cleanup after. include: "{{ run_config_cleanup }}" + #----------------------------------------- # test duplicate table creation #----------------------------------------- @@ -630,4 +631,3 @@ file: path="{{ run_dir }}/{{ item }}" state=absent with_items: - "{{ config_files }}" - diff --git a/ansible/roles/test/tasks/acl/acl_port_bind_test/acl_port_bind_test.yml b/ansible/roles/test/tasks/acl/acl_port_bind_test/acl_port_bind_test.yml index 250b4360666..b06e2e6a81c 100644 --- a/ansible/roles/test/tasks/acl/acl_port_bind_test/acl_port_bind_test.yml +++ b/ansible/roles/test/tasks/acl/acl_port_bind_test/acl_port_bind_test.yml @@ -5,12 +5,12 @@ - include_vars: "{{ vars_files_location }}/acl_port_bind_test_vars.yml" - name: Copy JSON configs onto switch. - copy: src="{{ tests_location }}/{{ testname }}/{{ item }}" dest="{{ run_dir }}/{{ item }}" + copy: src={{ tests_location }}/{{ testname }}/{{ item }} dest={{ run_dir }}/{{ item }} with_items: - "{{ config_files }}" - name: Copy JSON configs from switch into docker filesystem. - command: docker cp "{{ run_dir }}/{{ item }}" orchagent:{{ docker_testdir }}/{{ item }} + command: docker cp {{ run_dir }}/{{ item }} {{ orchagent }}:{{ docker_testdir }}/{{ item }} with_items: - "{{ config_files }}" diff --git a/ansible/roles/test/tasks/acl/acl_port_range_test/acl_port_range_test.yml b/ansible/roles/test/tasks/acl/acl_port_range_test/acl_port_range_test.yml index ec61a865b4e..bf08062dd99 100644 --- a/ansible/roles/test/tasks/acl/acl_port_range_test/acl_port_range_test.yml +++ b/ansible/roles/test/tasks/acl/acl_port_range_test/acl_port_range_test.yml @@ -21,12 +21,12 @@ - include_vars: "{{ vars_files_location }}/acl_port_range_test_vars.yml" - name: Copy JSON configs onto switch. - copy: src="{{ tests_location }}/{{ testname }}/{{ item }}" dest="{{ run_dir }}/{{ item }}" + copy: src={{ tests_location }}/{{ testname }}/{{ item }} dest={{ run_dir }}/{{ item }} with_items: - "{{ config_files }}" - name: Copy JSON configs from switch into docker filesystem. - command: docker cp "{{ run_dir }}/{{ item }}" orchagent:{{ docker_testdir }}/{{ item }} + command: docker cp {{ run_dir }}/{{ item }} {{ orchagent }}:{{ docker_testdir }}/{{ item }} with_items: - "{{ config_files }}" @@ -42,7 +42,7 @@ # L3 table testing. - name: Create an L3 table. - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_table_type_l3 }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_table_type_l3 }} - name: Rule test - valid port range on L3 table. vars: @@ -75,10 +75,10 @@ # Mirror table and rule testing. - name: Create a mirror session. - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_mirror_session }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_mirror_session }} - name: Create a mirror table. - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_table_type_mirror }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_table_type_mirror }} - name: Add neighbor. shell: ip neigh add {{ switch_if_ip }} lladdr 0e:9c:37:42:43:67 dev {{ switch_if }} @@ -111,7 +111,7 @@ # Invalid configuration testing (valid L3 table + invalid rules). #-------------------------------- - name: Create an L3 table. - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_table_type_l3 }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_table_type_l3 }} - name: Rule test - negative numbers used in range. vars: @@ -191,10 +191,10 @@ # Test the configuration deleting. #-------------------------------- - name: Create an L3 table. - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_table_type_l3 }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_table_type_l3 }} - name: Create the rule with limited port range permitted (1028 - 4096). - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_l4_limited_port_range }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_l4_limited_port_range }} - name: Delete rule test - rule with port range. vars: @@ -217,7 +217,7 @@ # Try to delete the same rule, but use another port range in delete-json. # This should not make any difference, so we dont expect any errors. - name: Create the rule with limited port range permitted (1028 - 4096). - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_l4_limited_port_range }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_l4_limited_port_range }} - name: Delete rule test - rule with port range. vars: @@ -265,10 +265,10 @@ delegate_to: "{{ ptf_host }}" - name: Create an L3 table. - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_table_type_l3 }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_table_type_l3 }} - name: Create the rule with limited port range permitted (1028 - 4096). - shell: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_l4_limited_port_range }} + shell: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_l4_limited_port_range }} # Sending packets with L4 port permitted (counters value should be increased). - name: Read initial counters value (before sending packets). diff --git a/ansible/roles/test/tasks/acl/acl_traffic_test/acl_traffic_test.yml b/ansible/roles/test/tasks/acl/acl_traffic_test/acl_traffic_test.yml index 543ee4f73fa..d38bd01c634 100644 --- a/ansible/roles/test/tasks/acl/acl_traffic_test/acl_traffic_test.yml +++ b/ansible/roles/test/tasks/acl/acl_traffic_test/acl_traffic_test.yml @@ -8,12 +8,12 @@ - include_vars: "{{ vars_files_location }}/acl_traffic_test_vars.yml" - name: Copy JSON configs onto switch. - copy: src="{{ tests_location }}/{{ testname }}/{{ item }}" dest="{{ run_dir }}/{{ item }}" + copy: src={{ tests_location }}/{{ testname }}/{{ item }} dest={{ run_dir }}/{{ item }} with_items: - "{{ config_files }}" - name: Copy JSON configs from switch into docker filesystem. - command: docker cp "{{ run_dir }}/{{ item }}" orchagent:{{ docker_testdir }}/{{ item }} + command: docker cp {{ run_dir }}/{{ item }} {{ orchagent }}:{{ docker_testdir }}/{{ item }} with_items: - "{{ config_files }}" diff --git a/ansible/roles/test/tasks/acl/acl_traffic_test/run_ping_test.yml b/ansible/roles/test/tasks/acl/acl_traffic_test/run_ping_test.yml index 5278aaa6443..0fd6be9df4a 100644 --- a/ansible/roles/test/tasks/acl/acl_traffic_test/run_ping_test.yml +++ b/ansible/roles/test/tasks/acl/acl_traffic_test/run_ping_test.yml @@ -15,7 +15,7 @@ include: "{{ loganalyzer_init }}" - name: Set ACL rules. - command: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_file }} + command: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_file }} - debug: msg="=== test json = {{ config_file }}" diff --git a/ansible/roles/test/tasks/acl/acl_traffic_test/run_ptf_test.yml b/ansible/roles/test/tasks/acl/acl_traffic_test/run_ptf_test.yml index 7006ff0926a..06e13474e6a 100644 --- a/ansible/roles/test/tasks/acl/acl_traffic_test/run_ptf_test.yml +++ b/ansible/roles/test/tasks/acl/acl_traffic_test/run_ptf_test.yml @@ -31,7 +31,7 @@ include: "{{ loganalyzer_init }}" - name: Set ACL rules. - command: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_file }} + command: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_file }} - debug: msg="======================= PTF TEST ==========================" diff --git a/ansible/roles/test/tasks/acl/run_config_cleanup.yml b/ansible/roles/test/tasks/acl/run_config_cleanup.yml index d3646a47d1b..b9df508dd51 100644 --- a/ansible/roles/test/tasks/acl/run_config_cleanup.yml +++ b/ansible/roles/test/tasks/acl/run_config_cleanup.yml @@ -1,6 +1,6 @@ - name: Do configuration cleanup. - shell: systemctl restart orchagent + shell: systemctl restart {{ orchagent }} register: clean_up - fail: msg="swssconfig - failed to cleanup the ACL configuration" diff --git a/ansible/roles/test/tasks/acl/run_config_test.yml b/ansible/roles/test/tasks/acl/run_config_test.yml index 9704e9c6330..3cb338b81d4 100644 --- a/ansible/roles/test/tasks/acl/run_config_test.yml +++ b/ansible/roles/test/tasks/acl/run_config_test.yml @@ -12,7 +12,7 @@ include: "{{ loganalyzer_init }}" - name: Load JSON config {{ config_file }} - command: docker exec -i orchagent swssconfig {{ docker_testdir }}/{{ config_file }} + command: docker exec -i {{ orchagent }} swssconfig {{ docker_testdir }}/{{ config_file }} - name: Use loganalyzer to check for the error messages {{ testname }} / {{ config_file }}. include: "{{ loganalyzer_analyze }}" diff --git a/ansible/vars/acl/acl_vars.yml b/ansible/vars/acl/acl_vars.yml index a1c937bb7f5..c7d4e5be813 100644 --- a/ansible/vars/acl/acl_vars.yml +++ b/ansible/vars/acl/acl_vars.yml @@ -1,5 +1,7 @@ --- +orchagent: swss + run_dir: /home/admin/acl_tests out_dir: /home/admin/acl_tests/results docker_testdir: /tmp