Revision fb1ffbca lib/rpc.py
b/lib/rpc.py | ||
---|---|---|
781 | 781 |
return self.call_test_delay(node_list, duration, |
782 | 782 |
read_timeout=int(duration + 5)) |
783 | 783 |
|
784 |
@classmethod |
|
785 |
@_RpcTimeout(_TMO_URGENT) |
|
786 |
def call_jobqueue_update(cls, node_list, address_list, file_name, content): |
|
787 |
"""Update job queue. |
|
788 |
|
|
789 |
This is a multi-node call. |
|
790 |
|
|
791 |
""" |
|
792 |
return cls._StaticMultiNodeCall(node_list, "jobqueue_update", |
|
793 |
[file_name, _Compress(content)], |
|
794 |
address_list=address_list) |
|
795 |
|
|
796 |
@classmethod |
|
797 |
@_RpcTimeout(_TMO_NORMAL) |
|
798 |
def call_jobqueue_purge(cls, node): |
|
799 |
"""Purge job queue. |
|
800 |
|
|
801 |
This is a single-node call. |
|
802 |
|
|
803 |
""" |
|
804 |
return cls._StaticSingleNodeCall(node, "jobqueue_purge", []) |
|
805 |
|
|
806 |
@classmethod |
|
807 |
@_RpcTimeout(_TMO_URGENT) |
|
808 |
def call_jobqueue_rename(cls, node_list, address_list, rename): |
|
809 |
"""Rename a job queue file. |
|
810 |
|
|
811 |
This is a multi-node call. |
|
812 |
|
|
813 |
""" |
|
814 |
return cls._StaticMultiNodeCall(node_list, "jobqueue_rename", rename, |
|
815 |
address_list=address_list) |
|
816 |
|
|
817 | 784 |
@_RpcTimeout(_TMO_NORMAL) |
818 | 785 |
def call_hypervisor_validate_params(self, node_list, hvname, hvparams): |
819 | 786 |
"""Validate the hypervisor params. |
... | ... | |
832 | 799 |
hv_full = objects.FillDict(cluster.hvparams.get(hvname, {}), hvparams) |
833 | 800 |
return self._MultiNodeCall(node_list, "hypervisor_validate_params", |
834 | 801 |
[hvname, hv_full]) |
802 |
|
|
803 |
|
|
804 |
class JobQueueRunner(_generated_rpc.RpcClientJobQueue): |
|
805 |
"""RPC wrappers for job queue. |
|
806 |
|
|
807 |
""" |
|
808 |
_Compress = staticmethod(_Compress) |
|
809 |
|
|
810 |
def __init__(self, context, address_list): |
|
811 |
"""Initializes this class. |
|
812 |
|
|
813 |
""" |
|
814 |
_generated_rpc.RpcClientJobQueue.__init__(self) |
|
815 |
|
|
816 |
if address_list is None: |
|
817 |
resolver = _SsconfResolver |
|
818 |
else: |
|
819 |
# Caller provided an address list |
|
820 |
resolver = _StaticResolver(address_list) |
|
821 |
|
|
822 |
self._proc = _RpcProcessor(resolver, |
|
823 |
netutils.GetDaemonPort(constants.NODED), |
|
824 |
lock_monitor_cb=context.glm.AddToLockMonitor) |
|
825 |
|
|
826 |
def _Call(self, node_list, procedure, timeout, args): |
|
827 |
"""Entry point for automatically generated RPC wrappers. |
|
828 |
|
|
829 |
""" |
|
830 |
body = serializer.DumpJson(args, indent=False) |
|
831 |
|
|
832 |
return self._proc(node_list, procedure, body, read_timeout=timeout) |
Also available in: Unified diff