Beispiel #1
0
def set_num_instances_async(instances, module=None, version=None):
    """Returns a UserRPC to set the number of instances on the module version.

  Args:
    instances: The number of instances to set.
    module: The module to set the number of instances for, if None the current
      module will be used.
    version: The version set the number of instances for, if None the current
      version will be used.

  Returns:
    A UserRPC to set the number of instances on the module version.
  """
    def _ResultHook(rpc):
        mapped_errors = [
            modules_service_pb2.ModulesServiceError.INVALID_VERSION,
            modules_service_pb2.ModulesServiceError.TRANSIENT_ERROR
        ]
        _CheckAsyncResult(rpc, mapped_errors, {})

    if not isinstance(instances, six.integer_types):
        raise TypeError("'instances' arg must be of type long or int.")
    request = modules_service_pb2.SetNumInstancesRequest()
    request.instances = instances
    if module:
        request.module = module
    if version:
        request.version = version
    response = modules_service_pb2.SetNumInstancesResponse()
    return _MakeAsyncCall('SetNumInstances', request, response, _ResultHook)
Beispiel #2
0
 def testSetNumInstances_TransientError(self):
   """Test we raise an error when we receive on from the underlying API."""
   expected_request = modules_service_pb2.SetNumInstancesRequest()
   expected_request.instances = 23
   self.SetExceptionExpectations(
       'SetNumInstances', expected_request,
       modules_service_pb2.ModulesServiceError.TRANSIENT_ERROR)
   self.assertRaises(modules.TransientError, modules.set_num_instances, 23)
Beispiel #3
0
 def testSetNumInstances_InvalidVersionError(self):
   """Test we raise an error when we receive on from the underlying API."""
   expected_request = modules_service_pb2.SetNumInstancesRequest()
   expected_request.instances = 23
   self.SetExceptionExpectations(
       'SetNumInstances', expected_request,
       modules_service_pb2.ModulesServiceError.INVALID_VERSION)
   self.assertRaises(modules.InvalidVersionError,
                     modules.set_num_instances, 23)
Beispiel #4
0
 def testSetNumInstances_AllDefaults(self):
   """Test we return the expected results when no args are passed."""
   expected_request = modules_service_pb2.SetNumInstancesRequest()
   expected_request.instances = 15
   service_response = modules_service_pb2.SetNumInstancesResponse()
   self.SetSuccessExpectations('SetNumInstances',
                               expected_request,
                               service_response)
   modules.set_num_instances(15)
Beispiel #5
0
 def testSetNumInstances_NoModule(self):
   """Test we return the expected results when no module is passed."""
   expected_request = modules_service_pb2.SetNumInstancesRequest()
   expected_request.version = 'v1'
   expected_request.instances = 14
   service_response = modules_service_pb2.SetNumInstancesResponse()
   self.SetSuccessExpectations('SetNumInstances',
                               expected_request,
                               service_response)
   modules.set_num_instances(14, version='v1')
Beispiel #6
0
 def testSetNumInstances_NoVersion(self):
   """Test we return the expected results when no version is passed."""
   expected_request = modules_service_pb2.SetNumInstancesRequest()
   expected_request.module = 'module1'
   expected_request.instances = 13
   service_response = modules_service_pb2.SetNumInstancesResponse()
   self.SetSuccessExpectations('SetNumInstances',
                               expected_request,
                               service_response)
   modules.set_num_instances(13, 'module1')
Beispiel #7
0
 def testSetNumInstances(self):
   """Test we return the expected results."""
   expected_request = modules_service_pb2.SetNumInstancesRequest()
   expected_request.module = 'module1'
   expected_request.version = 'v1'
   expected_request.instances = 12
   service_response = modules_service_pb2.SetNumInstancesResponse()
   self.SetSuccessExpectations('SetNumInstances',
                               expected_request,
                               service_response)
   modules.set_num_instances(12, 'module1', 'v1')