diff --git a/lib/build/rpc_definitions.py b/lib/build/rpc_definitions.py index ad96dfb14b4d82d18321dcc66c03219a86f1e617..4000253913f0d8f0a26cf288d4d7f58cb1d25721 100644 --- a/lib/build/rpc_definitions.py +++ b/lib/build/rpc_definitions.py @@ -343,5 +343,5 @@ _MISC_CALLS = [ CALLS = { "RpcClientDefault": (_IMPEXP_CALLS + _X509_CALLS + _OS_CALLS + _NODE_CALLS + - _FILE_STORAGE_CALLS + _MISC_CALLS), + _FILE_STORAGE_CALLS + _MISC_CALLS + _INSTANCE_CALLS), } diff --git a/lib/rpc.py b/lib/rpc.py index 7cdebbcbc0a29d71d5ad63b21e884bdd23f5d856..cd58563899829419f5a46b7e19cc7144557d8e82 100644 --- a/lib/rpc.py +++ b/lib/rpc.py @@ -674,140 +674,6 @@ class RpcRunner(_generated_rpc.RpcClientDefault): idict = self._InstDict(instance, hvp=hvp, bep=bep) return self._SingleNodeCall(node, "instance_start", [idict, startup_paused]) - @_RpcTimeout(_TMO_NORMAL) - def call_instance_shutdown(self, node, instance, timeout): - """Stops an instance. - - This is a single-node call. - - """ - return self._SingleNodeCall(node, "instance_shutdown", - [self._InstDict(instance), timeout]) - - @_RpcTimeout(_TMO_NORMAL) - def call_migration_info(self, node, instance): - """Gather the information necessary to prepare an instance migration. - - This is a single-node call. - - @type node: string - @param node: the node on which the instance is currently running - @type instance: C{objects.Instance} - @param instance: the instance definition - - """ - return self._SingleNodeCall(node, "migration_info", - [self._InstDict(instance)]) - - @_RpcTimeout(_TMO_NORMAL) - def call_accept_instance(self, node, instance, info, target): - """Prepare a node to accept an instance. - - This is a single-node call. - - @type node: string - @param node: the target node for the migration - @type instance: C{objects.Instance} - @param instance: the instance definition - @type info: opaque/hypervisor specific (string/data) - @param info: result for the call_migration_info call - @type target: string - @param target: target hostname (usually ip address) (on the node itself) - - """ - return self._SingleNodeCall(node, "accept_instance", - [self._InstDict(instance), info, target]) - - @_RpcTimeout(_TMO_NORMAL) - def call_instance_finalize_migration_dst(self, node, instance, info, success): - """Finalize any target-node migration specific operation. - - This is called both in case of a successful migration and in case of error - (in which case it should abort the migration). - - This is a single-node call. - - @type node: string - @param node: the target node for the migration - @type instance: C{objects.Instance} - @param instance: the instance definition - @type info: opaque/hypervisor specific (string/data) - @param info: result for the call_migration_info call - @type success: boolean - @param success: whether the migration was a success or a failure - - """ - return self._SingleNodeCall(node, "instance_finalize_migration_dst", - [self._InstDict(instance), info, success]) - - @_RpcTimeout(_TMO_SLOW) - def call_instance_migrate(self, node, instance, target, live): - """Migrate an instance. - - This is a single-node call. - - @type node: string - @param node: the node on which the instance is currently running - @type instance: C{objects.Instance} - @param instance: the instance definition - @type target: string - @param target: the target node name - @type live: boolean - @param live: whether the migration should be done live or not (the - interpretation of this parameter is left to the hypervisor) - - """ - return self._SingleNodeCall(node, "instance_migrate", - [self._InstDict(instance), target, live]) - - @_RpcTimeout(_TMO_SLOW) - def call_instance_finalize_migration_src(self, node, instance, success, live): - """Finalize the instance migration on the source node. - - This is a single-node call. - - @type instance: L{objects.Instance} - @param instance: the instance that was migrated - @type success: bool - @param success: whether the migration succeeded or not - @type live: bool - @param live: whether the user requested a live migration or not - - """ - return self._SingleNodeCall(node, "instance_finalize_migration_src", - [self._InstDict(instance), success, live]) - - @_RpcTimeout(_TMO_SLOW) - def call_instance_get_migration_status(self, node, instance): - """Report migration status. - - This is a single-node call that must be executed on the source node. - - @type instance: L{objects.Instance} - @param instance: the instance that is being migrated - @rtype: L{objects.MigrationStatus} - @return: the status of the current migration (one of - L{constants.HV_MIGRATION_VALID_STATUSES}), plus any additional - progress info that can be retrieved from the hypervisor - - """ - result = self._SingleNodeCall(node, "instance_get_migration_status", - [self._InstDict(instance)]) - if not result.fail_msg and result.payload is not None: - result.payload = objects.MigrationStatus.FromDict(result.payload) - return result - - @_RpcTimeout(_TMO_NORMAL) - def call_instance_reboot(self, node, inst, reboot_type, shutdown_timeout): - """Reboots an instance. - - This is a single-node call. - - """ - return self._SingleNodeCall(node, "instance_reboot", - [self._InstDict(inst), reboot_type, - shutdown_timeout]) - @_RpcTimeout(_TMO_1DAY) def call_instance_os_add(self, node, inst, reinstall, debug, osparams=None): """Installs an OS on the given instance. @@ -819,76 +685,6 @@ class RpcRunner(_generated_rpc.RpcClientDefault): [self._InstDict(inst, osp=osparams), reinstall, debug]) - @_RpcTimeout(_TMO_SLOW) - def call_instance_run_rename(self, node, inst, old_name, debug): - """Run the OS rename script for an instance. - - This is a single-node call. - - """ - return self._SingleNodeCall(node, "instance_run_rename", - [self._InstDict(inst), old_name, debug]) - - @_RpcTimeout(_TMO_URGENT) - def call_instance_info(self, node, instance, hname): - """Returns information about a single instance. - - This is a single-node call. - - @type node: list - @param node: the list of nodes to query - @type instance: string - @param instance: the instance name - @type hname: string - @param hname: the hypervisor type of the instance - - """ - return self._SingleNodeCall(node, "instance_info", [instance, hname]) - - @_RpcTimeout(_TMO_NORMAL) - def call_instance_migratable(self, node, instance): - """Checks whether the given instance can be migrated. - - This is a single-node call. - - @param node: the node to query - @type instance: L{objects.Instance} - @param instance: the instance to check - - - """ - return self._SingleNodeCall(node, "instance_migratable", - [self._InstDict(instance)]) - - @_RpcTimeout(_TMO_URGENT) - def call_all_instances_info(self, node_list, hypervisor_list): - """Returns information about all instances on the given nodes. - - This is a multi-node call. - - @type node_list: list - @param node_list: the list of nodes to query - @type hypervisor_list: list - @param hypervisor_list: the hypervisors to query for instances - - """ - return self._MultiNodeCall(node_list, "all_instances_info", - [hypervisor_list]) - - @_RpcTimeout(_TMO_URGENT) - def call_instance_list(self, node_list, hypervisor_list): - """Returns the list of running instances on a given node. - - This is a multi-node call. - - @type node_list: list - @param node_list: the list of nodes to query - @type hypervisor_list: list - @param hypervisor_list: the hypervisors to query for instances - - """ - return self._MultiNodeCall(node_list, "instance_list", [hypervisor_list]) - @classmethod @_RpcTimeout(_TMO_FAST) def call_node_start_master_daemons(cls, node, no_voting):