diff options
author | Adrian Reber <areber@redhat.com> | 2018-05-31 12:00:04 +0300 |
---|---|---|
committer | Andrei Vagin <avagin@virtuozzo.com> | 2018-06-19 19:59:13 +0300 |
commit | 50fd9df6c53929079afe5347312f001316329c44 (patch) | |
tree | fc128a5eea92aae3acee8f3442e1abd311015264 | |
parent | df9ffa10bc63e761d349766b3bdb031a1179fa87 (diff) |
test/others/rpc: also run RPC version command via service
This extends the test.py to also run the RPC command VERSION via 'criu
service'. It was already running using 'criu swrk'.
Signed-off-by: Adrian Reber <areber@redhat.com>
Signed-off-by: Andrei Vagin <avagin@virtuozzo.com>
-rwxr-xr-x | test/others/rpc/test.py | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/test/others/rpc/test.py b/test/others/rpc/test.py index 601a34fe4..63eef378e 100755 --- a/test/others/rpc/test.py +++ b/test/others/rpc/test.py @@ -42,3 +42,40 @@ else: if resp.dump.restored: print 'Restored' + +# Connect to service socket +s = socket.socket(socket.AF_UNIX, socket.SOCK_SEQPACKET) +s.connect(args['socket']) + +# Create criu msg, set it's type to dump request +# and set dump options. Checkout more options in protobuf/rpc.proto +req = rpc.criu_req() +req.type = rpc.VERSION + +# Send request +s.send(req.SerializeToString()) + +# Recv response +resp = rpc.criu_resp() +MAX_MSG_SIZE = 1024 +resp.ParseFromString(s.recv(MAX_MSG_SIZE)) + +if resp.type != rpc.VERSION: + print('RPC: Unexpected msg type') + sys.exit(-1) +else: + if resp.success: + print('RPC: Success') + print('CRIU major %d' % resp.version.major) + print('CRIU minor %d' % resp.version.minor) + if resp.version.HasField('gitid'): + print('CRIU gitid %s' % resp.version.gitid) + if resp.version.HasField('sublevel'): + print('CRIU sublevel %s' % resp.version.sublevel) + if resp.version.HasField('extra'): + print('CRIU extra %s' % resp.version.extra) + if resp.version.HasField('name'): + print('CRIU name %s' % resp.version.name) + else: + print 'Fail' + sys.exit(-1) |