Signed-off-by: Ren Wen 15991987063@163.com --- doc/multi-device-test.md | 108 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100644 doc/multi-device-test.md
diff --git a/doc/multi-device-test.md b/doc/multi-device-test.md new file mode 100644 index 0000000..226287f --- /dev/null +++ b/doc/multi-device-test.md @@ -0,0 +1,108 @@ +# Multi-device Test # + +���������������������������������������������, ���������������������������������. + +## When using multi-device ## + + * ��������������������������������������������������� + * ������������������������������������������������ + +## How to run a multi-device test ## + +���������������job.yaml���, ������������**cluster**������, ������������������������������������ +���������������������, ���������������������������������: *lab-z9/cluster/*. +���������������������������������������������job������������������������������job, ��������������������� +������������������. + +������������������������������������������������������? +���job.yaml������������������������: + +``` yaml +if role <role01> + <test_script01> + <test_script02> + +if role <role02> + <test_script03> + <test_script04> +... +``` + +���������������������������, ������������������������������������. ��������������������������������������� +job���, ������������������������������������������������������������. + +���������: ������������������������������������������*role01*, ��������������������������� +*test_script01*, *test_script02*, ���������������. + +### how to find test script ### + +���lkp���**daemon**, **tests**���������������������������. +���������**daemon**������������*test_script01*, ���������������������`start_daemon`������ +���������. ���������**tests**������������*test_script01*, ���������`run_test`������������ +������. ���������������������������������, ������������������. + +### about `start_daemon` and `run_test` ### + +������������������������2���������������**$LKP_SRC/lib/job.sh**. +���������������������������, ���������������������������������������������. + +#### the processes of `start_damon` #### + + 1. ���������**daemon**���������������������������. ������������������, ������������������������������: + `started`, ������������������������������������: `start`; ������������, ���������: + `failed`, ������������������: `abort`, ������������������. ������������������redis��� + key: `HGETALL sched/cluster_state`. + 2. ������������������������������: `write_state`, ������������������������������������: + * `node_roles`: ��������������� + * `ip`: ������������`hostname -I`��������������������� + * `direct_macs`: ���������������������������������**macs**������ + * `direct_ips`: ���������������������������������������**ip0**���������������������ip, ��� + ���������������**macs**������������������ + ������������������������������������������������������������������, ������������redis���key: + **sched/cluster_state**. + 3. ���**direct_ips**���������������������������������**direct_macs**������������������. + 4. ������������������������������: `wait_ready`, ������������������������: `ready`; ������ + ������, ������������������������������������������������������������������. ��������������������� + ���������������, ���������`ready`; ������������������������������`abort`, ��������� + `abort`, ������������������; ������������, ���������������, ���������2���������������. + 5. ������������������������������: `roles_ip`, ������������������������������������������������. + ���������������������: `ip=ip01`���, ������: `export ip=ip01`. + 6. ������������������������������: `wait_finish`, ������������������������: `finish`; ��� + ���������, ������������������������������������������������������������������`finish`. ������ + ������`finish`, ���������`finish`; ������������������������������`abort`, ��������� + `abort`, ������������������; ������������, ���������������, ���������2���������������. + 7. ������������. + +#### the processes of `run_test` #### + +������1,2,3,4���������2,3,4,5. + + 1. ������������������������������: `write_state`, ������������������������������������: + * `node_roles`: ��������������� + * `ip`: ������������`hostname -I`��������������������� + * `direct_macs`: ���������������������������������**macs**������ + * `direct_ips`: ���������������������������������������**ip0**���������������������ip, ��� + ���������������**macs**������������������ + ������������������������������������������������������������������, ������������redis���key: + **sched/cluster_state**. + 2. ���**direct_ips**���������������������������������**direct_macs**������������������. + 3. ������������������������������: `wait_ready`, ������������������������: `ready`; ������ + ������, ������������������������������������������������������������������. ��������������������� + ���������������, ���������`ready`; ������������������������������`abort`, ��������� + `abort`, ������������������; ������������, ���������������, ���������2���������������. + 4. ������������������������������: `roles_ip`, ������������������������������������������������. + ���������������������: `ip=ip01`���, ������: `export ip=ip01` + 5. ���������**tests**���������������������������. ������������, ������������������������������: + `finished`, ������������������: `finish`; ������������, ���������: `failed`, ��� + ���������������: `abort`, ������������������. + 6. ������������. + +#### other #### + +`start_daemon`���`run_test`������������������`abort`������: ������100������������������ +���������, ������������������������������`ready`���`finish`, ������������������������������������ +`retry`, ������������������, ���������������. + +���������������������������������������������, ���������(���������)���������������������������, ��������� +���������`ready`(`finish`)���`abort`. ������������������������100���������������������, ��� +���������������`abort`������������.