336 lines
8.8 KiB
Diff
336 lines
8.8 KiB
Diff
|
diff --git a/tests/get_services_state.yml b/tests/get_services_state.yml
|
||
|
new file mode 100644
|
||
|
index 0000000..4fe5d36
|
||
|
--- /dev/null
|
||
|
+++ b/tests/get_services_state.yml
|
||
|
@@ -0,0 +1,4 @@
|
||
|
+- name: Get initial state of services
|
||
|
+ tags: tests::cleanup
|
||
|
+ service_facts:
|
||
|
+ register: initial_state
|
||
|
diff --git a/tests/restore_services_state.yml b/tests/restore_services_state.yml
|
||
|
new file mode 100644
|
||
|
index 0000000..3d48975
|
||
|
--- /dev/null
|
||
|
+++ b/tests/restore_services_state.yml
|
||
|
@@ -0,0 +1,19 @@
|
||
|
+- name: Get final state of services
|
||
|
+ tags: tests::cleanup
|
||
|
+ service_facts:
|
||
|
+ register: final_state
|
||
|
+
|
||
|
+- name: Restore state of services
|
||
|
+ tags: tests::cleanup
|
||
|
+ service:
|
||
|
+ name: "{{ item }}"
|
||
|
+ state: "{{ 'started' if initial_state.ansible_facts.services[item + '.service']['state'] == 'running' else 'stopped' }}"
|
||
|
+ when:
|
||
|
+ - item + '.service' in final_state.ansible_facts.services
|
||
|
+ - item + '.service' in initial_state.ansible_facts.services
|
||
|
+ with_items:
|
||
|
+ - chronyd
|
||
|
+ - ntpd
|
||
|
+ - ptp4l
|
||
|
+ - phc2sys
|
||
|
+ - timemaster
|
||
|
diff --git a/tests/tests_default.yml b/tests/tests_default.yml
|
||
|
index 856ebe5..fb298c9 100644
|
||
|
--- a/tests/tests_default.yml
|
||
|
+++ b/tests/tests_default.yml
|
||
|
@@ -3,4 +4,14 @@
|
||
|
hosts: all
|
||
|
|
||
|
roles:
|
||
|
- linux-system-roles.timesync
|
||
|
+
|
||
|
+ pre_tasks:
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: get_services_state.yml
|
||
|
+
|
||
|
+ post_tasks:
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: restore_services_state.yml
|
||
|
diff --git a/tests/tests_default_wrapper.yml b/tests/tests_default_wrapper.yml
|
||
|
index a768f4c..b0c0ab3 100644
|
||
|
--- a/tests/tests_default_wrapper.yml
|
||
|
+++ b/tests/tests_default_wrapper.yml
|
||
|
@@ -1,5 +1,8 @@
|
||
|
---
|
||
|
- name: Create static inventory from hostvars
|
||
|
+ tags:
|
||
|
+# - 'tests::tier1'
|
||
|
+ - 'tests::slow'
|
||
|
hosts: all
|
||
|
tasks:
|
||
|
- name: create temporary file
|
||
|
@@ -17,9 +20,15 @@
|
||
|
|
||
|
|
||
|
- name: Run tests_default.yml normally
|
||
|
+ tags:
|
||
|
+# - 'tests::tier1'
|
||
|
+ - 'tests::slow'
|
||
|
import_playbook: tests_default.yml
|
||
|
|
||
|
- name: Run tests_default.yml in check_mode
|
||
|
+ tags:
|
||
|
+# - 'tests::tier1'
|
||
|
+ - 'tests::slow'
|
||
|
hosts: all
|
||
|
tasks:
|
||
|
- name: Run ansible-playbook with tests_default.yml in check mode
|
||
|
diff --git a/tests/tests_ntp.yml b/tests/tests_ntp.yml
|
||
|
index e4b1b5e..446f1dc 100644
|
||
|
--- a/tests/tests_ntp.yml
|
||
|
+++ b/tests/tests_ntp.yml
|
||
|
@@ -18,6 +19,11 @@
|
||
|
roles:
|
||
|
- linux-system-roles.timesync
|
||
|
|
||
|
+ pre_tasks:
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: get_services_state.yml
|
||
|
+
|
||
|
tasks:
|
||
|
- meta: flush_handlers
|
||
|
|
||
|
@@ -35,3 +41,8 @@
|
||
|
- "'172.16.123.1' in sources.stdout"
|
||
|
- "'172.16.123.2' in sources.stdout"
|
||
|
- "'172.16.123.3' in sources.stdout"
|
||
|
+
|
||
|
+ post_tasks:
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: restore_services_state.yml
|
||
|
diff --git a/tests/tests_ntp_provider1.yml b/tests/tests_ntp_provider1.yml
|
||
|
index 08ecab9..9fe0db3 100644
|
||
|
--- a/tests/tests_ntp_provider1.yml
|
||
|
+++ b/tests/tests_ntp_provider1.yml
|
||
|
@@ -8,6 +9,10 @@
|
||
|
- linux-system-roles.timesync
|
||
|
|
||
|
pre_tasks:
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: get_services_state.yml
|
||
|
+
|
||
|
- name: Remove NTP providers
|
||
|
package: name={{ item }} state=absent
|
||
|
with_items:
|
||
|
@@ -27,3 +32,7 @@
|
||
|
assert:
|
||
|
that:
|
||
|
- "'172.16.123.1' in sources.stdout"
|
||
|
+
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: restore_services_state.yml
|
||
|
diff --git a/tests/tests_ntp_provider2.yml b/tests/tests_ntp_provider2.yml
|
||
|
index 5476ae4..e0d5c96 100644
|
||
|
--- a/tests/tests_ntp_provider2.yml
|
||
|
+++ b/tests/tests_ntp_provider2.yml
|
||
|
@@ -8,6 +9,10 @@
|
||
|
- linux-system-roles.timesync
|
||
|
|
||
|
pre_tasks:
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: get_services_state.yml
|
||
|
+
|
||
|
- name: Remove ntp
|
||
|
package: name=ntp state=absent
|
||
|
|
||
|
@@ -29,3 +34,7 @@
|
||
|
|
||
|
- name: Check chronyd service
|
||
|
shell: chronyc -n tracking
|
||
|
+
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: restore_services_state.yml
|
||
|
diff --git a/tests/tests_ntp_provider3.yml b/tests/tests_ntp_provider3.yml
|
||
|
index 44ca101..d440a64 100644
|
||
|
--- a/tests/tests_ntp_provider3.yml
|
||
|
+++ b/tests/tests_ntp_provider3.yml
|
||
|
@@ -8,6 +9,10 @@
|
||
|
- linux-system-roles.timesync
|
||
|
|
||
|
pre_tasks:
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: get_services_state.yml
|
||
|
+
|
||
|
- name: Remove chrony
|
||
|
package: name=chrony state=absent
|
||
|
|
||
|
@@ -29,3 +34,7 @@
|
||
|
|
||
|
- name: Check ntpd service
|
||
|
shell: ntpq -c rv | grep 'associd=0'
|
||
|
+
|
||
|
+ - name: Import tasks
|
||
|
+ tags: tests::tier1::cleanup
|
||
|
+ import_tasks: restore_services_state.yml
|
||
|
diff --git a/tests/tests_ntp_provider4.yml b/tests/tests_ntp_provider4.yml
|
||
|
index 8b452b8..8bccba0 100644
|
||
|
--- a/tests/tests_ntp_provider4.yml
|
||
|
+++ b/tests/tests_ntp_provider4.yml
|
||
|
@@ -9,6 +10,10 @@
|
||
|
- linux-system-roles.timesync
|
||
|
|
||
|
pre_tasks:
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: get_services_state.yml
|
||
|
+
|
||
|
- name: Install chrony
|
||
|
package: name=chrony state=present
|
||
|
register: package_install
|
||
|
@@ -27,3 +32,7 @@
|
||
|
|
||
|
- name: Check chronyd service
|
||
|
shell: chronyc -n tracking
|
||
|
+
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: restore_services_state.yml
|
||
|
diff --git a/tests/tests_ntp_provider5.yml b/tests/tests_ntp_provider5.yml
|
||
|
index 1740164..98a054f 100644
|
||
|
--- a/tests/tests_ntp_provider5.yml
|
||
|
+++ b/tests/tests_ntp_provider5.yml
|
||
|
@@ -9,6 +10,10 @@
|
||
|
- linux-system-roles.timesync
|
||
|
|
||
|
pre_tasks:
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: get_services_state.yml
|
||
|
+
|
||
|
- name: Install ntp
|
||
|
package: name=ntp state=present
|
||
|
register: package_install
|
||
|
@@ -27,3 +32,7 @@
|
||
|
|
||
|
- name: Check ntpd service
|
||
|
shell: ntpq -c rv | grep 'associd=0'
|
||
|
+
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: restore_services_state.yml
|
||
|
diff --git a/tests/tests_ntp_provider6.yml b/tests/tests_ntp_provider6.yml
|
||
|
index 21a2039..fb41824 100644
|
||
|
--- a/tests/tests_ntp_provider6.yml
|
||
|
+++ b/tests/tests_ntp_provider6.yml
|
||
|
@@ -6,6 +7,10 @@
|
||
|
both_avail: true
|
||
|
|
||
|
tasks:
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: get_services_state.yml
|
||
|
+
|
||
|
- name: Check for availability of both NTP providers
|
||
|
package: name={{ item }} state=present
|
||
|
register: package_install
|
||
|
@@ -71,3 +76,7 @@
|
||
|
shell: chronyc -n tracking
|
||
|
when:
|
||
|
- not is_ntp_default
|
||
|
+
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: restore_services_state.yml
|
||
|
diff --git a/tests/tests_ntp_ptp.yml b/tests/tests_ntp_ptp.yml
|
||
|
index cab706f..7f4cdfc 100644
|
||
|
--- a/tests/tests_ntp_ptp.yml
|
||
|
+++ b/tests/tests_ntp_ptp.yml
|
||
|
@@ -22,6 +23,11 @@
|
||
|
roles:
|
||
|
- linux-system-roles.timesync
|
||
|
|
||
|
+ pre_tasks:
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: get_services_state.yml
|
||
|
+
|
||
|
tasks:
|
||
|
- meta: flush_handlers
|
||
|
|
||
|
@@ -48,3 +54,8 @@
|
||
|
- "'PTP1' in sources.stdout"
|
||
|
|
||
|
when: "'SOF_TIMESTAMPING_TX_' in ethtool.stdout"
|
||
|
+
|
||
|
+ post_tasks:
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: restore_services_state.yml
|
||
|
diff --git a/tests/tests_ptp_multi.yml b/tests/tests_ptp_multi.yml
|
||
|
index d52d439..936e467 100644
|
||
|
--- a/tests/tests_ptp_multi.yml
|
||
|
+++ b/tests/tests_ptp_multi.yml
|
||
|
@@ -1,5 +1,6 @@
|
||
|
|
||
|
- name: Configure time synchronization with multiple PTP domains
|
||
|
+ tags: tests::expfail
|
||
|
hosts: all
|
||
|
vars:
|
||
|
timesync_ptp_domains:
|
||
|
@@ -16,6 +17,11 @@
|
||
|
roles:
|
||
|
- linux-system-roles.timesync
|
||
|
|
||
|
+ pre_tasks:
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: get_services_state.yml
|
||
|
+
|
||
|
tasks:
|
||
|
- meta: flush_handlers
|
||
|
|
||
|
@@ -58,3 +64,8 @@
|
||
|
- "'domainNumber 1' in pmc.stdout"
|
||
|
|
||
|
when: "'SOF_TIMESTAMPING_TX_' in ethtool.stdout"
|
||
|
+
|
||
|
+ post_tasks:
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: restore_services_state.yml
|
||
|
diff --git a/tests/tests_ptp_single.yml b/tests/tests_ptp_single.yml
|
||
|
index 74da310..36d141e 100644
|
||
|
--- a/tests/tests_ptp_single.yml
|
||
|
+++ b/tests/tests_ptp_single.yml
|
||
|
@@ -1,5 +1,6 @@
|
||
|
|
||
|
- name: Configure time synchronization with single PTP domain
|
||
|
+ tags: tests::expfail
|
||
|
hosts: all
|
||
|
vars:
|
||
|
timesync_ptp_domains:
|
||
|
@@ -8,6 +9,11 @@
|
||
|
roles:
|
||
|
- linux-system-roles.timesync
|
||
|
|
||
|
+ pre_tasks:
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: get_services_state.yml
|
||
|
+
|
||
|
tasks:
|
||
|
- meta: flush_handlers
|
||
|
|
||
|
@@ -31,3 +37,8 @@
|
||
|
- "'domainNumber 3' in pmc.stdout"
|
||
|
|
||
|
when: "'SOF_TIMESTAMPING_TX_' in ethtool.stdout"
|
||
|
+
|
||
|
+ post_tasks:
|
||
|
+ - name: Import tasks
|
||
|
+# tags: tests::tier1::cleanup
|
||
|
+ import_tasks: restore_services_state.yml
|