Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
tp-qemu
提交
dda22569
T
tp-qemu
项目概览
openeuler
/
tp-qemu
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
tp-qemu
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
dda22569
编写于
1月 17, 2014
作者:
F
Feng Yang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
qemu.tests.migration_with_dst_problem: Check its status before start/stop a service.
Signed-off-by:
N
Feng Yang
<
fyang@redhat.com
>
上级
e4d8bdbb
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
40 addition
and
0 deletion
+40
-0
qemu/tests/migration_with_dst_problem.py
qemu/tests/migration_with_dst_problem.py
+40
-0
未找到文件。
qemu/tests/migration_with_dst_problem.py
浏览文件 @
dda22569
...
...
@@ -8,6 +8,7 @@ from autotest.client import utils as client_utils
from
virttest
import
aexpect
,
env_process
,
utils_misc
,
qemu_storage
@
error
.
context_aware
def
process_output_check
(
process
,
exp_str
):
"""
Check whether the output of process match regular expression.
...
...
@@ -20,6 +21,36 @@ def process_output_check(process, exp_str):
return
re
.
search
(
exp_str
,
output
)
@
error
.
context_aware
def
get_guest_service_status
(
session
,
service
,
init_service
):
"""
Get service's status in guest. It will return 'active' for 'running' and
'active'. Return 'inactive' for 'stopped' and 'inactive'.
:param session: An Expect or ShellSession instance to operate on
:param service: Service name that we want to check status.
:param init_service: service name used in service command.
:return: service's status in guest. 'active' or 'inactive'
"""
try
:
session
.
cmd
(
"systemctl --version"
)
cmd
=
"systemctl status %s.service"
%
service
output
=
session
.
cmd_output
(
cmd
)
except
Exception
:
cmd
=
"service %s status"
%
init_service
output
=
session
.
cmd_output
(
cmd
)
service_status_filter
=
"running|active"
if
re
.
search
(
"running|active"
,
output
,
re
.
I
):
status
=
"active"
elif
re
.
search
(
"stopped|inactive"
,
output
,
re
.
I
):
status
=
"inactive"
else
:
msg
=
"Fail to get '%s' service status. "
%
service
msg
+=
" Command output in guest: %s"
%
output
raise
error
.
TestError
(
msg
)
return
status
@
error
.
context_aware
def
run
(
test
,
params
,
env
):
"""
...
...
@@ -85,6 +116,15 @@ def run(test, params, env):
:param action: action with service (start|stop|restart)
:param init_service: name of service for old service control.
"""
status
=
get_guest_service_status
(
session
,
service
,
init_service
)
if
action
==
"start"
and
status
==
"active"
:
logging
.
debug
(
"%s already started, no need start it again."
,
service
)
return
if
action
==
"stop"
and
status
==
"inactive"
:
logging
.
debug
(
"%s already stopped, no need stop it again."
,
service
)
return
try
:
session
.
cmd
(
"systemctl --version"
,
timeout
=
timeout
)
session
.
cmd
(
"systemctl %s %s.service"
%
(
action
,
service
),
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录