lightning-sdk 0.1.36__py3-none-any.whl → 0.1.38__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. lightning_sdk/__init__.py +1 -1
  2. lightning_sdk/ai_hub.py +38 -31
  3. lightning_sdk/api/ai_hub_api.py +29 -4
  4. lightning_sdk/api/job_api.py +6 -2
  5. lightning_sdk/api/teamspace_api.py +18 -14
  6. lightning_sdk/api/utils.py +19 -0
  7. lightning_sdk/cli/ai_hub.py +1 -1
  8. lightning_sdk/cli/entrypoint.py +2 -2
  9. lightning_sdk/cli/models.py +45 -15
  10. lightning_sdk/cli/run.py +80 -0
  11. lightning_sdk/job/base.py +61 -20
  12. lightning_sdk/job/job.py +29 -11
  13. lightning_sdk/job/v1.py +14 -10
  14. lightning_sdk/job/v2.py +10 -6
  15. lightning_sdk/lightning_cloud/openapi/__init__.py +13 -2
  16. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +5 -1
  17. lightning_sdk/lightning_cloud/openapi/api/jobs_service_api.py +680 -62
  18. lightning_sdk/lightning_cloud/openapi/models/__init__.py +13 -2
  19. lightning_sdk/lightning_cloud/openapi/models/create.py +6 -32
  20. lightning_sdk/lightning_cloud/openapi/models/create_deployment_request_defines_a_spec_for_the_job_that_allows_for_autoscaling_jobs.py +27 -1
  21. lightning_sdk/lightning_cloud/openapi/models/deployments_id_body.py +27 -1
  22. lightning_sdk/lightning_cloud/openapi/models/deploymenttemplates_id_body.py +32 -6
  23. lightning_sdk/lightning_cloud/openapi/models/externalv1_cloud_space_instance_status.py +27 -1
  24. lightning_sdk/lightning_cloud/openapi/models/multimachinejobs_id_body.py +123 -0
  25. lightning_sdk/lightning_cloud/openapi/models/project_id_agents_body.py +53 -1
  26. lightning_sdk/lightning_cloud/openapi/models/project_id_cloudspaces_body.py +27 -1
  27. lightning_sdk/lightning_cloud/openapi/models/project_id_multimachinejobs_body.py +201 -0
  28. lightning_sdk/lightning_cloud/openapi/models/update.py +6 -32
  29. lightning_sdk/lightning_cloud/openapi/models/v1_api_pricing_spec.py +149 -0
  30. lightning_sdk/lightning_cloud/openapi/models/v1_checkbox.py +29 -3
  31. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +27 -1
  32. lightning_sdk/lightning_cloud/openapi/models/v1_create_deployment_template_request.py +32 -6
  33. lightning_sdk/lightning_cloud/openapi/models/v1_data_connection.py +6 -32
  34. lightning_sdk/lightning_cloud/openapi/models/v1_delete_multi_machine_job_response.py +97 -0
  35. lightning_sdk/lightning_cloud/openapi/models/v1_deployment.py +27 -1
  36. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_metrics.py +43 -17
  37. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_performance.py +305 -0
  38. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template.py +32 -6
  39. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_parameter.py +27 -1
  40. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_parameter_type.py +1 -0
  41. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_summary.py +27 -1
  42. lightning_sdk/lightning_cloud/openapi/models/{v1_efs_data_connection.py → v1_efs_config.py} +22 -22
  43. lightning_sdk/lightning_cloud/openapi/models/v1_get_model_files_response.py +27 -1
  44. lightning_sdk/lightning_cloud/openapi/models/v1_google_cloud_direct_v1.py +53 -27
  45. lightning_sdk/lightning_cloud/openapi/models/v1_input.py +29 -3
  46. lightning_sdk/lightning_cloud/openapi/models/v1_job.py +27 -1
  47. lightning_sdk/lightning_cloud/openapi/models/v1_lambda_labs_direct_v1.py +125 -0
  48. lightning_sdk/lightning_cloud/openapi/models/v1_list_multi_machine_jobs_response.py +123 -0
  49. lightning_sdk/lightning_cloud/openapi/models/v1_machines_selector.py +149 -0
  50. lightning_sdk/lightning_cloud/openapi/models/v1_message.py +6 -6
  51. lightning_sdk/lightning_cloud/openapi/models/v1_message_content.py +6 -6
  52. lightning_sdk/lightning_cloud/openapi/models/v1_message_content_type.py +103 -0
  53. lightning_sdk/lightning_cloud/openapi/models/v1_metrics_stream.py +53 -1
  54. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job.py +383 -0
  55. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_state.py +108 -0
  56. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_status.py +279 -0
  57. lightning_sdk/lightning_cloud/openapi/models/v1_rule_resource.py +2 -0
  58. lightning_sdk/lightning_cloud/openapi/models/v1_select.py +29 -3
  59. lightning_sdk/lightning_cloud/openapi/models/v1_system_info.py +27 -1
  60. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +131 -1
  61. lightning_sdk/lightning_cloud/openapi/models/v1_user_requested_compute_config.py +27 -1
  62. lightning_sdk/lightning_cloud/openapi/models/v1_validate_data_connection_response.py +6 -32
  63. lightning_sdk/lightning_cloud/openapi/models/validate.py +6 -32
  64. lightning_sdk/teamspace.py +5 -0
  65. {lightning_sdk-0.1.36.dist-info → lightning_sdk-0.1.38.dist-info}/METADATA +1 -1
  66. {lightning_sdk-0.1.36.dist-info → lightning_sdk-0.1.38.dist-info}/RECORD +70 -58
  67. lightning_sdk/lightning_cloud/openapi/models/v1_efs_folder_data_connection.py +0 -201
  68. {lightning_sdk-0.1.36.dist-info → lightning_sdk-0.1.38.dist-info}/LICENSE +0 -0
  69. {lightning_sdk-0.1.36.dist-info → lightning_sdk-0.1.38.dist-info}/WHEEL +0 -0
  70. {lightning_sdk-0.1.36.dist-info → lightning_sdk-0.1.38.dist-info}/entry_points.txt +0 -0
  71. {lightning_sdk-0.1.36.dist-info → lightning_sdk-0.1.38.dist-info}/top_level.txt +0 -0
@@ -354,6 +354,111 @@ class JobsServiceApi(object):
354
354
  _request_timeout=params.get('_request_timeout'),
355
355
  collection_formats=collection_formats)
356
356
 
357
+ def jobs_service_create_multi_machine_job(self, body: 'ProjectIdMultimachinejobsBody', project_id: 'str', **kwargs) -> 'V1MultiMachineJob': # noqa: E501
358
+ """MultiMachineJob # noqa: E501
359
+
360
+ This method makes a synchronous HTTP request by default. To make an
361
+ asynchronous HTTP request, please pass async_req=True
362
+ >>> thread = api.jobs_service_create_multi_machine_job(body, project_id, async_req=True)
363
+ >>> result = thread.get()
364
+
365
+ :param async_req bool
366
+ :param ProjectIdMultimachinejobsBody body: (required)
367
+ :param str project_id: (required)
368
+ :return: V1MultiMachineJob
369
+ If the method is called asynchronously,
370
+ returns the request thread.
371
+ """
372
+ kwargs['_return_http_data_only'] = True
373
+ if kwargs.get('async_req'):
374
+ return self.jobs_service_create_multi_machine_job_with_http_info(body, project_id, **kwargs) # noqa: E501
375
+ else:
376
+ (data) = self.jobs_service_create_multi_machine_job_with_http_info(body, project_id, **kwargs) # noqa: E501
377
+ return data
378
+
379
+ def jobs_service_create_multi_machine_job_with_http_info(self, body: 'ProjectIdMultimachinejobsBody', project_id: 'str', **kwargs) -> 'V1MultiMachineJob': # noqa: E501
380
+ """MultiMachineJob # noqa: E501
381
+
382
+ This method makes a synchronous HTTP request by default. To make an
383
+ asynchronous HTTP request, please pass async_req=True
384
+ >>> thread = api.jobs_service_create_multi_machine_job_with_http_info(body, project_id, async_req=True)
385
+ >>> result = thread.get()
386
+
387
+ :param async_req bool
388
+ :param ProjectIdMultimachinejobsBody body: (required)
389
+ :param str project_id: (required)
390
+ :return: V1MultiMachineJob
391
+ If the method is called asynchronously,
392
+ returns the request thread.
393
+ """
394
+
395
+ all_params = ['body', 'project_id'] # noqa: E501
396
+ all_params.append('async_req')
397
+ all_params.append('_return_http_data_only')
398
+ all_params.append('_preload_content')
399
+ all_params.append('_request_timeout')
400
+
401
+ params = locals()
402
+ for key, val in six.iteritems(params['kwargs']):
403
+ if key not in all_params:
404
+ raise TypeError(
405
+ "Got an unexpected keyword argument '%s'"
406
+ " to method jobs_service_create_multi_machine_job" % key
407
+ )
408
+ params[key] = val
409
+ del params['kwargs']
410
+ # verify the required parameter 'body' is set
411
+ if ('body' not in params or
412
+ params['body'] is None):
413
+ raise ValueError("Missing the required parameter `body` when calling `jobs_service_create_multi_machine_job`") # noqa: E501
414
+ # verify the required parameter 'project_id' is set
415
+ if ('project_id' not in params or
416
+ params['project_id'] is None):
417
+ raise ValueError("Missing the required parameter `project_id` when calling `jobs_service_create_multi_machine_job`") # noqa: E501
418
+
419
+ collection_formats = {}
420
+
421
+ path_params = {}
422
+ if 'project_id' in params:
423
+ path_params['projectId'] = params['project_id'] # noqa: E501
424
+
425
+ query_params = []
426
+
427
+ header_params = {}
428
+
429
+ form_params = []
430
+ local_var_files = {}
431
+
432
+ body_params = None
433
+ if 'body' in params:
434
+ body_params = params['body']
435
+ # HTTP header `Accept`
436
+ header_params['Accept'] = self.api_client.select_header_accept(
437
+ ['application/json']) # noqa: E501
438
+
439
+ # HTTP header `Content-Type`
440
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
441
+ ['application/json']) # noqa: E501
442
+
443
+ # Authentication setting
444
+ auth_settings = [] # noqa: E501
445
+
446
+ return self.api_client.call_api(
447
+ '/v1/projects/{projectId}/multi-machine-jobs', 'POST',
448
+ path_params,
449
+ query_params,
450
+ header_params,
451
+ body=body_params,
452
+ post_params=form_params,
453
+ files=local_var_files,
454
+ response_type='V1MultiMachineJob', # noqa: E501
455
+ auth_settings=auth_settings,
456
+ async_req=params.get('async_req'),
457
+ _return_http_data_only=params.get('_return_http_data_only'),
458
+ _preload_content=params.get('_preload_content', True),
459
+ _request_timeout=params.get('_request_timeout'),
460
+ collection_formats=collection_formats)
461
+
357
462
  def jobs_service_delete_deployment(self, project_id: 'str', id: 'str', **kwargs) -> 'V1DeleteDeploymentResponse': # noqa: E501
358
463
  """jobs_service_delete_deployment # noqa: E501
359
464
 
@@ -774,6 +879,107 @@ class JobsServiceApi(object):
774
879
  _request_timeout=params.get('_request_timeout'),
775
880
  collection_formats=collection_formats)
776
881
 
882
+ def jobs_service_delete_multi_machine_job(self, project_id: 'str', id: 'str', **kwargs) -> 'V1DeleteMultiMachineJobResponse': # noqa: E501
883
+ """jobs_service_delete_multi_machine_job # noqa: E501
884
+
885
+ This method makes a synchronous HTTP request by default. To make an
886
+ asynchronous HTTP request, please pass async_req=True
887
+ >>> thread = api.jobs_service_delete_multi_machine_job(project_id, id, async_req=True)
888
+ >>> result = thread.get()
889
+
890
+ :param async_req bool
891
+ :param str project_id: (required)
892
+ :param str id: (required)
893
+ :return: V1DeleteMultiMachineJobResponse
894
+ If the method is called asynchronously,
895
+ returns the request thread.
896
+ """
897
+ kwargs['_return_http_data_only'] = True
898
+ if kwargs.get('async_req'):
899
+ return self.jobs_service_delete_multi_machine_job_with_http_info(project_id, id, **kwargs) # noqa: E501
900
+ else:
901
+ (data) = self.jobs_service_delete_multi_machine_job_with_http_info(project_id, id, **kwargs) # noqa: E501
902
+ return data
903
+
904
+ def jobs_service_delete_multi_machine_job_with_http_info(self, project_id: 'str', id: 'str', **kwargs) -> 'V1DeleteMultiMachineJobResponse': # noqa: E501
905
+ """jobs_service_delete_multi_machine_job # noqa: E501
906
+
907
+ This method makes a synchronous HTTP request by default. To make an
908
+ asynchronous HTTP request, please pass async_req=True
909
+ >>> thread = api.jobs_service_delete_multi_machine_job_with_http_info(project_id, id, async_req=True)
910
+ >>> result = thread.get()
911
+
912
+ :param async_req bool
913
+ :param str project_id: (required)
914
+ :param str id: (required)
915
+ :return: V1DeleteMultiMachineJobResponse
916
+ If the method is called asynchronously,
917
+ returns the request thread.
918
+ """
919
+
920
+ all_params = ['project_id', 'id'] # noqa: E501
921
+ all_params.append('async_req')
922
+ all_params.append('_return_http_data_only')
923
+ all_params.append('_preload_content')
924
+ all_params.append('_request_timeout')
925
+
926
+ params = locals()
927
+ for key, val in six.iteritems(params['kwargs']):
928
+ if key not in all_params:
929
+ raise TypeError(
930
+ "Got an unexpected keyword argument '%s'"
931
+ " to method jobs_service_delete_multi_machine_job" % key
932
+ )
933
+ params[key] = val
934
+ del params['kwargs']
935
+ # verify the required parameter 'project_id' is set
936
+ if ('project_id' not in params or
937
+ params['project_id'] is None):
938
+ raise ValueError("Missing the required parameter `project_id` when calling `jobs_service_delete_multi_machine_job`") # noqa: E501
939
+ # verify the required parameter 'id' is set
940
+ if ('id' not in params or
941
+ params['id'] is None):
942
+ raise ValueError("Missing the required parameter `id` when calling `jobs_service_delete_multi_machine_job`") # noqa: E501
943
+
944
+ collection_formats = {}
945
+
946
+ path_params = {}
947
+ if 'project_id' in params:
948
+ path_params['projectId'] = params['project_id'] # noqa: E501
949
+ if 'id' in params:
950
+ path_params['id'] = params['id'] # noqa: E501
951
+
952
+ query_params = []
953
+
954
+ header_params = {}
955
+
956
+ form_params = []
957
+ local_var_files = {}
958
+
959
+ body_params = None
960
+ # HTTP header `Accept`
961
+ header_params['Accept'] = self.api_client.select_header_accept(
962
+ ['application/json']) # noqa: E501
963
+
964
+ # Authentication setting
965
+ auth_settings = [] # noqa: E501
966
+
967
+ return self.api_client.call_api(
968
+ '/v1/projects/{projectId}/multi-machine-jobs/{id}', 'DELETE',
969
+ path_params,
970
+ query_params,
971
+ header_params,
972
+ body=body_params,
973
+ post_params=form_params,
974
+ files=local_var_files,
975
+ response_type='V1DeleteMultiMachineJobResponse', # noqa: E501
976
+ auth_settings=auth_settings,
977
+ async_req=params.get('async_req'),
978
+ _return_http_data_only=params.get('_return_http_data_only'),
979
+ _preload_content=params.get('_preload_content', True),
980
+ _request_timeout=params.get('_request_timeout'),
981
+ collection_formats=collection_formats)
982
+
777
983
  def jobs_service_download_job_logs(self, project_id: 'str', id: 'str', **kwargs) -> 'V1DownloadJobLogsResponse': # noqa: E501
778
984
  """jobs_service_download_job_logs # noqa: E501
779
985
 
@@ -1863,49 +2069,45 @@ class JobsServiceApi(object):
1863
2069
  _request_timeout=params.get('_request_timeout'),
1864
2070
  collection_formats=collection_formats)
1865
2071
 
1866
- def jobs_service_list_deployment_events(self, project_id: 'str', id: 'str', **kwargs) -> 'V1ListDeploymentEventsResponse': # noqa: E501
1867
- """Deployment events # noqa: E501
2072
+ def jobs_service_get_multi_machine_job(self, project_id: 'str', id: 'str', **kwargs) -> 'V1MultiMachineJob': # noqa: E501
2073
+ """jobs_service_get_multi_machine_job # noqa: E501
1868
2074
 
1869
2075
  This method makes a synchronous HTTP request by default. To make an
1870
2076
  asynchronous HTTP request, please pass async_req=True
1871
- >>> thread = api.jobs_service_list_deployment_events(project_id, id, async_req=True)
2077
+ >>> thread = api.jobs_service_get_multi_machine_job(project_id, id, async_req=True)
1872
2078
  >>> result = thread.get()
1873
2079
 
1874
2080
  :param async_req bool
1875
2081
  :param str project_id: (required)
1876
2082
  :param str id: (required)
1877
- :param str release_id:
1878
- :param str limit:
1879
- :return: V1ListDeploymentEventsResponse
2083
+ :return: V1MultiMachineJob
1880
2084
  If the method is called asynchronously,
1881
2085
  returns the request thread.
1882
2086
  """
1883
2087
  kwargs['_return_http_data_only'] = True
1884
2088
  if kwargs.get('async_req'):
1885
- return self.jobs_service_list_deployment_events_with_http_info(project_id, id, **kwargs) # noqa: E501
2089
+ return self.jobs_service_get_multi_machine_job_with_http_info(project_id, id, **kwargs) # noqa: E501
1886
2090
  else:
1887
- (data) = self.jobs_service_list_deployment_events_with_http_info(project_id, id, **kwargs) # noqa: E501
2091
+ (data) = self.jobs_service_get_multi_machine_job_with_http_info(project_id, id, **kwargs) # noqa: E501
1888
2092
  return data
1889
2093
 
1890
- def jobs_service_list_deployment_events_with_http_info(self, project_id: 'str', id: 'str', **kwargs) -> 'V1ListDeploymentEventsResponse': # noqa: E501
1891
- """Deployment events # noqa: E501
2094
+ def jobs_service_get_multi_machine_job_with_http_info(self, project_id: 'str', id: 'str', **kwargs) -> 'V1MultiMachineJob': # noqa: E501
2095
+ """jobs_service_get_multi_machine_job # noqa: E501
1892
2096
 
1893
2097
  This method makes a synchronous HTTP request by default. To make an
1894
2098
  asynchronous HTTP request, please pass async_req=True
1895
- >>> thread = api.jobs_service_list_deployment_events_with_http_info(project_id, id, async_req=True)
2099
+ >>> thread = api.jobs_service_get_multi_machine_job_with_http_info(project_id, id, async_req=True)
1896
2100
  >>> result = thread.get()
1897
2101
 
1898
2102
  :param async_req bool
1899
2103
  :param str project_id: (required)
1900
2104
  :param str id: (required)
1901
- :param str release_id:
1902
- :param str limit:
1903
- :return: V1ListDeploymentEventsResponse
2105
+ :return: V1MultiMachineJob
1904
2106
  If the method is called asynchronously,
1905
2107
  returns the request thread.
1906
2108
  """
1907
2109
 
1908
- all_params = ['project_id', 'id', 'release_id', 'limit'] # noqa: E501
2110
+ all_params = ['project_id', 'id'] # noqa: E501
1909
2111
  all_params.append('async_req')
1910
2112
  all_params.append('_return_http_data_only')
1911
2113
  all_params.append('_preload_content')
@@ -1916,18 +2118,18 @@ class JobsServiceApi(object):
1916
2118
  if key not in all_params:
1917
2119
  raise TypeError(
1918
2120
  "Got an unexpected keyword argument '%s'"
1919
- " to method jobs_service_list_deployment_events" % key
2121
+ " to method jobs_service_get_multi_machine_job" % key
1920
2122
  )
1921
2123
  params[key] = val
1922
2124
  del params['kwargs']
1923
2125
  # verify the required parameter 'project_id' is set
1924
2126
  if ('project_id' not in params or
1925
2127
  params['project_id'] is None):
1926
- raise ValueError("Missing the required parameter `project_id` when calling `jobs_service_list_deployment_events`") # noqa: E501
2128
+ raise ValueError("Missing the required parameter `project_id` when calling `jobs_service_get_multi_machine_job`") # noqa: E501
1927
2129
  # verify the required parameter 'id' is set
1928
2130
  if ('id' not in params or
1929
2131
  params['id'] is None):
1930
- raise ValueError("Missing the required parameter `id` when calling `jobs_service_list_deployment_events`") # noqa: E501
2132
+ raise ValueError("Missing the required parameter `id` when calling `jobs_service_get_multi_machine_job`") # noqa: E501
1931
2133
 
1932
2134
  collection_formats = {}
1933
2135
 
@@ -1938,10 +2140,6 @@ class JobsServiceApi(object):
1938
2140
  path_params['id'] = params['id'] # noqa: E501
1939
2141
 
1940
2142
  query_params = []
1941
- if 'release_id' in params:
1942
- query_params.append(('releaseId', params['release_id'])) # noqa: E501
1943
- if 'limit' in params:
1944
- query_params.append(('limit', params['limit'])) # noqa: E501
1945
2143
 
1946
2144
  header_params = {}
1947
2145
 
@@ -1957,14 +2155,14 @@ class JobsServiceApi(object):
1957
2155
  auth_settings = [] # noqa: E501
1958
2156
 
1959
2157
  return self.api_client.call_api(
1960
- '/v1/projects/{projectId}/deployments/{id}/events', 'GET',
2158
+ '/v1/projects/{projectId}/multi-machine-jobs/{id}', 'GET',
1961
2159
  path_params,
1962
2160
  query_params,
1963
2161
  header_params,
1964
2162
  body=body_params,
1965
2163
  post_params=form_params,
1966
2164
  files=local_var_files,
1967
- response_type='V1ListDeploymentEventsResponse', # noqa: E501
2165
+ response_type='V1MultiMachineJob', # noqa: E501
1968
2166
  auth_settings=auth_settings,
1969
2167
  async_req=params.get('async_req'),
1970
2168
  _return_http_data_only=params.get('_return_http_data_only'),
@@ -1972,47 +2170,45 @@ class JobsServiceApi(object):
1972
2170
  _request_timeout=params.get('_request_timeout'),
1973
2171
  collection_formats=collection_formats)
1974
2172
 
1975
- def jobs_service_list_deployment_releases(self, project_id: 'str', deployment_id: 'str', **kwargs) -> 'V1ListDeploymentReleasesResponse': # noqa: E501
1976
- """jobs_service_list_deployment_releases # noqa: E501
2173
+ def jobs_service_get_multi_machine_job_by_name(self, project_id: 'str', name: 'str', **kwargs) -> 'V1MultiMachineJob': # noqa: E501
2174
+ """jobs_service_get_multi_machine_job_by_name # noqa: E501
1977
2175
 
1978
2176
  This method makes a synchronous HTTP request by default. To make an
1979
2177
  asynchronous HTTP request, please pass async_req=True
1980
- >>> thread = api.jobs_service_list_deployment_releases(project_id, deployment_id, async_req=True)
2178
+ >>> thread = api.jobs_service_get_multi_machine_job_by_name(project_id, name, async_req=True)
1981
2179
  >>> result = thread.get()
1982
2180
 
1983
2181
  :param async_req bool
1984
2182
  :param str project_id: (required)
1985
- :param str deployment_id: (required)
1986
- :param bool include_archived:
1987
- :return: V1ListDeploymentReleasesResponse
2183
+ :param str name: (required)
2184
+ :return: V1MultiMachineJob
1988
2185
  If the method is called asynchronously,
1989
2186
  returns the request thread.
1990
2187
  """
1991
2188
  kwargs['_return_http_data_only'] = True
1992
2189
  if kwargs.get('async_req'):
1993
- return self.jobs_service_list_deployment_releases_with_http_info(project_id, deployment_id, **kwargs) # noqa: E501
2190
+ return self.jobs_service_get_multi_machine_job_by_name_with_http_info(project_id, name, **kwargs) # noqa: E501
1994
2191
  else:
1995
- (data) = self.jobs_service_list_deployment_releases_with_http_info(project_id, deployment_id, **kwargs) # noqa: E501
2192
+ (data) = self.jobs_service_get_multi_machine_job_by_name_with_http_info(project_id, name, **kwargs) # noqa: E501
1996
2193
  return data
1997
2194
 
1998
- def jobs_service_list_deployment_releases_with_http_info(self, project_id: 'str', deployment_id: 'str', **kwargs) -> 'V1ListDeploymentReleasesResponse': # noqa: E501
1999
- """jobs_service_list_deployment_releases # noqa: E501
2195
+ def jobs_service_get_multi_machine_job_by_name_with_http_info(self, project_id: 'str', name: 'str', **kwargs) -> 'V1MultiMachineJob': # noqa: E501
2196
+ """jobs_service_get_multi_machine_job_by_name # noqa: E501
2000
2197
 
2001
2198
  This method makes a synchronous HTTP request by default. To make an
2002
2199
  asynchronous HTTP request, please pass async_req=True
2003
- >>> thread = api.jobs_service_list_deployment_releases_with_http_info(project_id, deployment_id, async_req=True)
2200
+ >>> thread = api.jobs_service_get_multi_machine_job_by_name_with_http_info(project_id, name, async_req=True)
2004
2201
  >>> result = thread.get()
2005
2202
 
2006
2203
  :param async_req bool
2007
2204
  :param str project_id: (required)
2008
- :param str deployment_id: (required)
2009
- :param bool include_archived:
2010
- :return: V1ListDeploymentReleasesResponse
2205
+ :param str name: (required)
2206
+ :return: V1MultiMachineJob
2011
2207
  If the method is called asynchronously,
2012
2208
  returns the request thread.
2013
2209
  """
2014
2210
 
2015
- all_params = ['project_id', 'deployment_id', 'include_archived'] # noqa: E501
2211
+ all_params = ['project_id', 'name'] # noqa: E501
2016
2212
  all_params.append('async_req')
2017
2213
  all_params.append('_return_http_data_only')
2018
2214
  all_params.append('_preload_content')
@@ -2023,30 +2219,28 @@ class JobsServiceApi(object):
2023
2219
  if key not in all_params:
2024
2220
  raise TypeError(
2025
2221
  "Got an unexpected keyword argument '%s'"
2026
- " to method jobs_service_list_deployment_releases" % key
2222
+ " to method jobs_service_get_multi_machine_job_by_name" % key
2027
2223
  )
2028
2224
  params[key] = val
2029
2225
  del params['kwargs']
2030
2226
  # verify the required parameter 'project_id' is set
2031
2227
  if ('project_id' not in params or
2032
2228
  params['project_id'] is None):
2033
- raise ValueError("Missing the required parameter `project_id` when calling `jobs_service_list_deployment_releases`") # noqa: E501
2034
- # verify the required parameter 'deployment_id' is set
2035
- if ('deployment_id' not in params or
2036
- params['deployment_id'] is None):
2037
- raise ValueError("Missing the required parameter `deployment_id` when calling `jobs_service_list_deployment_releases`") # noqa: E501
2229
+ raise ValueError("Missing the required parameter `project_id` when calling `jobs_service_get_multi_machine_job_by_name`") # noqa: E501
2230
+ # verify the required parameter 'name' is set
2231
+ if ('name' not in params or
2232
+ params['name'] is None):
2233
+ raise ValueError("Missing the required parameter `name` when calling `jobs_service_get_multi_machine_job_by_name`") # noqa: E501
2038
2234
 
2039
2235
  collection_formats = {}
2040
2236
 
2041
2237
  path_params = {}
2042
2238
  if 'project_id' in params:
2043
2239
  path_params['projectId'] = params['project_id'] # noqa: E501
2044
- if 'deployment_id' in params:
2045
- path_params['deploymentId'] = params['deployment_id'] # noqa: E501
2240
+ if 'name' in params:
2241
+ path_params['name'] = params['name'] # noqa: E501
2046
2242
 
2047
2243
  query_params = []
2048
- if 'include_archived' in params:
2049
- query_params.append(('includeArchived', params['include_archived'])) # noqa: E501
2050
2244
 
2051
2245
  header_params = {}
2052
2246
 
@@ -2062,14 +2256,14 @@ class JobsServiceApi(object):
2062
2256
  auth_settings = [] # noqa: E501
2063
2257
 
2064
2258
  return self.api_client.call_api(
2065
- '/v1/projects/{projectId}/deployments/{deploymentId}/releases', 'GET',
2259
+ '/v1/projects/{projectId}/multi-machine-jobs/{name}/getbyname', 'GET',
2066
2260
  path_params,
2067
2261
  query_params,
2068
2262
  header_params,
2069
2263
  body=body_params,
2070
2264
  post_params=form_params,
2071
2265
  files=local_var_files,
2072
- response_type='V1ListDeploymentReleasesResponse', # noqa: E501
2266
+ response_type='V1MultiMachineJob', # noqa: E501
2073
2267
  auth_settings=auth_settings,
2074
2268
  async_req=params.get('async_req'),
2075
2269
  _return_http_data_only=params.get('_return_http_data_only'),
@@ -2077,35 +2271,249 @@ class JobsServiceApi(object):
2077
2271
  _request_timeout=params.get('_request_timeout'),
2078
2272
  collection_formats=collection_formats)
2079
2273
 
2080
- def jobs_service_list_deployments(self, project_id: 'str', **kwargs) -> 'V1ListDeploymentsResponse': # noqa: E501
2081
- """jobs_service_list_deployments # noqa: E501
2274
+ def jobs_service_list_deployment_events(self, project_id: 'str', id: 'str', **kwargs) -> 'V1ListDeploymentEventsResponse': # noqa: E501
2275
+ """Deployment events # noqa: E501
2082
2276
 
2083
2277
  This method makes a synchronous HTTP request by default. To make an
2084
2278
  asynchronous HTTP request, please pass async_req=True
2085
- >>> thread = api.jobs_service_list_deployments(project_id, async_req=True)
2279
+ >>> thread = api.jobs_service_list_deployment_events(project_id, id, async_req=True)
2086
2280
  >>> result = thread.get()
2087
2281
 
2088
2282
  :param async_req bool
2089
2283
  :param str project_id: (required)
2090
- :param str cloudspace_id:
2091
- :param list[str] user_ids:
2092
- :return: V1ListDeploymentsResponse
2284
+ :param str id: (required)
2285
+ :param str release_id:
2286
+ :param str limit:
2287
+ :return: V1ListDeploymentEventsResponse
2093
2288
  If the method is called asynchronously,
2094
2289
  returns the request thread.
2095
2290
  """
2096
2291
  kwargs['_return_http_data_only'] = True
2097
2292
  if kwargs.get('async_req'):
2098
- return self.jobs_service_list_deployments_with_http_info(project_id, **kwargs) # noqa: E501
2293
+ return self.jobs_service_list_deployment_events_with_http_info(project_id, id, **kwargs) # noqa: E501
2099
2294
  else:
2100
- (data) = self.jobs_service_list_deployments_with_http_info(project_id, **kwargs) # noqa: E501
2295
+ (data) = self.jobs_service_list_deployment_events_with_http_info(project_id, id, **kwargs) # noqa: E501
2101
2296
  return data
2102
2297
 
2103
- def jobs_service_list_deployments_with_http_info(self, project_id: 'str', **kwargs) -> 'V1ListDeploymentsResponse': # noqa: E501
2104
- """jobs_service_list_deployments # noqa: E501
2298
+ def jobs_service_list_deployment_events_with_http_info(self, project_id: 'str', id: 'str', **kwargs) -> 'V1ListDeploymentEventsResponse': # noqa: E501
2299
+ """Deployment events # noqa: E501
2105
2300
 
2106
2301
  This method makes a synchronous HTTP request by default. To make an
2107
2302
  asynchronous HTTP request, please pass async_req=True
2108
- >>> thread = api.jobs_service_list_deployments_with_http_info(project_id, async_req=True)
2303
+ >>> thread = api.jobs_service_list_deployment_events_with_http_info(project_id, id, async_req=True)
2304
+ >>> result = thread.get()
2305
+
2306
+ :param async_req bool
2307
+ :param str project_id: (required)
2308
+ :param str id: (required)
2309
+ :param str release_id:
2310
+ :param str limit:
2311
+ :return: V1ListDeploymentEventsResponse
2312
+ If the method is called asynchronously,
2313
+ returns the request thread.
2314
+ """
2315
+
2316
+ all_params = ['project_id', 'id', 'release_id', 'limit'] # noqa: E501
2317
+ all_params.append('async_req')
2318
+ all_params.append('_return_http_data_only')
2319
+ all_params.append('_preload_content')
2320
+ all_params.append('_request_timeout')
2321
+
2322
+ params = locals()
2323
+ for key, val in six.iteritems(params['kwargs']):
2324
+ if key not in all_params:
2325
+ raise TypeError(
2326
+ "Got an unexpected keyword argument '%s'"
2327
+ " to method jobs_service_list_deployment_events" % key
2328
+ )
2329
+ params[key] = val
2330
+ del params['kwargs']
2331
+ # verify the required parameter 'project_id' is set
2332
+ if ('project_id' not in params or
2333
+ params['project_id'] is None):
2334
+ raise ValueError("Missing the required parameter `project_id` when calling `jobs_service_list_deployment_events`") # noqa: E501
2335
+ # verify the required parameter 'id' is set
2336
+ if ('id' not in params or
2337
+ params['id'] is None):
2338
+ raise ValueError("Missing the required parameter `id` when calling `jobs_service_list_deployment_events`") # noqa: E501
2339
+
2340
+ collection_formats = {}
2341
+
2342
+ path_params = {}
2343
+ if 'project_id' in params:
2344
+ path_params['projectId'] = params['project_id'] # noqa: E501
2345
+ if 'id' in params:
2346
+ path_params['id'] = params['id'] # noqa: E501
2347
+
2348
+ query_params = []
2349
+ if 'release_id' in params:
2350
+ query_params.append(('releaseId', params['release_id'])) # noqa: E501
2351
+ if 'limit' in params:
2352
+ query_params.append(('limit', params['limit'])) # noqa: E501
2353
+
2354
+ header_params = {}
2355
+
2356
+ form_params = []
2357
+ local_var_files = {}
2358
+
2359
+ body_params = None
2360
+ # HTTP header `Accept`
2361
+ header_params['Accept'] = self.api_client.select_header_accept(
2362
+ ['application/json']) # noqa: E501
2363
+
2364
+ # Authentication setting
2365
+ auth_settings = [] # noqa: E501
2366
+
2367
+ return self.api_client.call_api(
2368
+ '/v1/projects/{projectId}/deployments/{id}/events', 'GET',
2369
+ path_params,
2370
+ query_params,
2371
+ header_params,
2372
+ body=body_params,
2373
+ post_params=form_params,
2374
+ files=local_var_files,
2375
+ response_type='V1ListDeploymentEventsResponse', # noqa: E501
2376
+ auth_settings=auth_settings,
2377
+ async_req=params.get('async_req'),
2378
+ _return_http_data_only=params.get('_return_http_data_only'),
2379
+ _preload_content=params.get('_preload_content', True),
2380
+ _request_timeout=params.get('_request_timeout'),
2381
+ collection_formats=collection_formats)
2382
+
2383
+ def jobs_service_list_deployment_releases(self, project_id: 'str', deployment_id: 'str', **kwargs) -> 'V1ListDeploymentReleasesResponse': # noqa: E501
2384
+ """jobs_service_list_deployment_releases # noqa: E501
2385
+
2386
+ This method makes a synchronous HTTP request by default. To make an
2387
+ asynchronous HTTP request, please pass async_req=True
2388
+ >>> thread = api.jobs_service_list_deployment_releases(project_id, deployment_id, async_req=True)
2389
+ >>> result = thread.get()
2390
+
2391
+ :param async_req bool
2392
+ :param str project_id: (required)
2393
+ :param str deployment_id: (required)
2394
+ :param bool include_archived:
2395
+ :return: V1ListDeploymentReleasesResponse
2396
+ If the method is called asynchronously,
2397
+ returns the request thread.
2398
+ """
2399
+ kwargs['_return_http_data_only'] = True
2400
+ if kwargs.get('async_req'):
2401
+ return self.jobs_service_list_deployment_releases_with_http_info(project_id, deployment_id, **kwargs) # noqa: E501
2402
+ else:
2403
+ (data) = self.jobs_service_list_deployment_releases_with_http_info(project_id, deployment_id, **kwargs) # noqa: E501
2404
+ return data
2405
+
2406
+ def jobs_service_list_deployment_releases_with_http_info(self, project_id: 'str', deployment_id: 'str', **kwargs) -> 'V1ListDeploymentReleasesResponse': # noqa: E501
2407
+ """jobs_service_list_deployment_releases # noqa: E501
2408
+
2409
+ This method makes a synchronous HTTP request by default. To make an
2410
+ asynchronous HTTP request, please pass async_req=True
2411
+ >>> thread = api.jobs_service_list_deployment_releases_with_http_info(project_id, deployment_id, async_req=True)
2412
+ >>> result = thread.get()
2413
+
2414
+ :param async_req bool
2415
+ :param str project_id: (required)
2416
+ :param str deployment_id: (required)
2417
+ :param bool include_archived:
2418
+ :return: V1ListDeploymentReleasesResponse
2419
+ If the method is called asynchronously,
2420
+ returns the request thread.
2421
+ """
2422
+
2423
+ all_params = ['project_id', 'deployment_id', 'include_archived'] # noqa: E501
2424
+ all_params.append('async_req')
2425
+ all_params.append('_return_http_data_only')
2426
+ all_params.append('_preload_content')
2427
+ all_params.append('_request_timeout')
2428
+
2429
+ params = locals()
2430
+ for key, val in six.iteritems(params['kwargs']):
2431
+ if key not in all_params:
2432
+ raise TypeError(
2433
+ "Got an unexpected keyword argument '%s'"
2434
+ " to method jobs_service_list_deployment_releases" % key
2435
+ )
2436
+ params[key] = val
2437
+ del params['kwargs']
2438
+ # verify the required parameter 'project_id' is set
2439
+ if ('project_id' not in params or
2440
+ params['project_id'] is None):
2441
+ raise ValueError("Missing the required parameter `project_id` when calling `jobs_service_list_deployment_releases`") # noqa: E501
2442
+ # verify the required parameter 'deployment_id' is set
2443
+ if ('deployment_id' not in params or
2444
+ params['deployment_id'] is None):
2445
+ raise ValueError("Missing the required parameter `deployment_id` when calling `jobs_service_list_deployment_releases`") # noqa: E501
2446
+
2447
+ collection_formats = {}
2448
+
2449
+ path_params = {}
2450
+ if 'project_id' in params:
2451
+ path_params['projectId'] = params['project_id'] # noqa: E501
2452
+ if 'deployment_id' in params:
2453
+ path_params['deploymentId'] = params['deployment_id'] # noqa: E501
2454
+
2455
+ query_params = []
2456
+ if 'include_archived' in params:
2457
+ query_params.append(('includeArchived', params['include_archived'])) # noqa: E501
2458
+
2459
+ header_params = {}
2460
+
2461
+ form_params = []
2462
+ local_var_files = {}
2463
+
2464
+ body_params = None
2465
+ # HTTP header `Accept`
2466
+ header_params['Accept'] = self.api_client.select_header_accept(
2467
+ ['application/json']) # noqa: E501
2468
+
2469
+ # Authentication setting
2470
+ auth_settings = [] # noqa: E501
2471
+
2472
+ return self.api_client.call_api(
2473
+ '/v1/projects/{projectId}/deployments/{deploymentId}/releases', 'GET',
2474
+ path_params,
2475
+ query_params,
2476
+ header_params,
2477
+ body=body_params,
2478
+ post_params=form_params,
2479
+ files=local_var_files,
2480
+ response_type='V1ListDeploymentReleasesResponse', # noqa: E501
2481
+ auth_settings=auth_settings,
2482
+ async_req=params.get('async_req'),
2483
+ _return_http_data_only=params.get('_return_http_data_only'),
2484
+ _preload_content=params.get('_preload_content', True),
2485
+ _request_timeout=params.get('_request_timeout'),
2486
+ collection_formats=collection_formats)
2487
+
2488
+ def jobs_service_list_deployments(self, project_id: 'str', **kwargs) -> 'V1ListDeploymentsResponse': # noqa: E501
2489
+ """jobs_service_list_deployments # noqa: E501
2490
+
2491
+ This method makes a synchronous HTTP request by default. To make an
2492
+ asynchronous HTTP request, please pass async_req=True
2493
+ >>> thread = api.jobs_service_list_deployments(project_id, async_req=True)
2494
+ >>> result = thread.get()
2495
+
2496
+ :param async_req bool
2497
+ :param str project_id: (required)
2498
+ :param str cloudspace_id:
2499
+ :param list[str] user_ids:
2500
+ :return: V1ListDeploymentsResponse
2501
+ If the method is called asynchronously,
2502
+ returns the request thread.
2503
+ """
2504
+ kwargs['_return_http_data_only'] = True
2505
+ if kwargs.get('async_req'):
2506
+ return self.jobs_service_list_deployments_with_http_info(project_id, **kwargs) # noqa: E501
2507
+ else:
2508
+ (data) = self.jobs_service_list_deployments_with_http_info(project_id, **kwargs) # noqa: E501
2509
+ return data
2510
+
2511
+ def jobs_service_list_deployments_with_http_info(self, project_id: 'str', **kwargs) -> 'V1ListDeploymentsResponse': # noqa: E501
2512
+ """jobs_service_list_deployments # noqa: E501
2513
+
2514
+ This method makes a synchronous HTTP request by default. To make an
2515
+ asynchronous HTTP request, please pass async_req=True
2516
+ >>> thread = api.jobs_service_list_deployments_with_http_info(project_id, async_req=True)
2109
2517
  >>> result = thread.get()
2110
2518
 
2111
2519
  :param async_req bool
@@ -2300,6 +2708,103 @@ class JobsServiceApi(object):
2300
2708
  _request_timeout=params.get('_request_timeout'),
2301
2709
  collection_formats=collection_formats)
2302
2710
 
2711
+ def jobs_service_list_multi_machine_jobs(self, project_id: 'str', **kwargs) -> 'V1ListMultiMachineJobsResponse': # noqa: E501
2712
+ """jobs_service_list_multi_machine_jobs # noqa: E501
2713
+
2714
+ This method makes a synchronous HTTP request by default. To make an
2715
+ asynchronous HTTP request, please pass async_req=True
2716
+ >>> thread = api.jobs_service_list_multi_machine_jobs(project_id, async_req=True)
2717
+ >>> result = thread.get()
2718
+
2719
+ :param async_req bool
2720
+ :param str project_id: (required)
2721
+ :param str cloudspace_id:
2722
+ :return: V1ListMultiMachineJobsResponse
2723
+ If the method is called asynchronously,
2724
+ returns the request thread.
2725
+ """
2726
+ kwargs['_return_http_data_only'] = True
2727
+ if kwargs.get('async_req'):
2728
+ return self.jobs_service_list_multi_machine_jobs_with_http_info(project_id, **kwargs) # noqa: E501
2729
+ else:
2730
+ (data) = self.jobs_service_list_multi_machine_jobs_with_http_info(project_id, **kwargs) # noqa: E501
2731
+ return data
2732
+
2733
+ def jobs_service_list_multi_machine_jobs_with_http_info(self, project_id: 'str', **kwargs) -> 'V1ListMultiMachineJobsResponse': # noqa: E501
2734
+ """jobs_service_list_multi_machine_jobs # noqa: E501
2735
+
2736
+ This method makes a synchronous HTTP request by default. To make an
2737
+ asynchronous HTTP request, please pass async_req=True
2738
+ >>> thread = api.jobs_service_list_multi_machine_jobs_with_http_info(project_id, async_req=True)
2739
+ >>> result = thread.get()
2740
+
2741
+ :param async_req bool
2742
+ :param str project_id: (required)
2743
+ :param str cloudspace_id:
2744
+ :return: V1ListMultiMachineJobsResponse
2745
+ If the method is called asynchronously,
2746
+ returns the request thread.
2747
+ """
2748
+
2749
+ all_params = ['project_id', 'cloudspace_id'] # noqa: E501
2750
+ all_params.append('async_req')
2751
+ all_params.append('_return_http_data_only')
2752
+ all_params.append('_preload_content')
2753
+ all_params.append('_request_timeout')
2754
+
2755
+ params = locals()
2756
+ for key, val in six.iteritems(params['kwargs']):
2757
+ if key not in all_params:
2758
+ raise TypeError(
2759
+ "Got an unexpected keyword argument '%s'"
2760
+ " to method jobs_service_list_multi_machine_jobs" % key
2761
+ )
2762
+ params[key] = val
2763
+ del params['kwargs']
2764
+ # verify the required parameter 'project_id' is set
2765
+ if ('project_id' not in params or
2766
+ params['project_id'] is None):
2767
+ raise ValueError("Missing the required parameter `project_id` when calling `jobs_service_list_multi_machine_jobs`") # noqa: E501
2768
+
2769
+ collection_formats = {}
2770
+
2771
+ path_params = {}
2772
+ if 'project_id' in params:
2773
+ path_params['projectId'] = params['project_id'] # noqa: E501
2774
+
2775
+ query_params = []
2776
+ if 'cloudspace_id' in params:
2777
+ query_params.append(('cloudspaceId', params['cloudspace_id'])) # noqa: E501
2778
+
2779
+ header_params = {}
2780
+
2781
+ form_params = []
2782
+ local_var_files = {}
2783
+
2784
+ body_params = None
2785
+ # HTTP header `Accept`
2786
+ header_params['Accept'] = self.api_client.select_header_accept(
2787
+ ['application/json']) # noqa: E501
2788
+
2789
+ # Authentication setting
2790
+ auth_settings = [] # noqa: E501
2791
+
2792
+ return self.api_client.call_api(
2793
+ '/v1/projects/{projectId}/multi-machine-jobs', 'GET',
2794
+ path_params,
2795
+ query_params,
2796
+ header_params,
2797
+ body=body_params,
2798
+ post_params=form_params,
2799
+ files=local_var_files,
2800
+ response_type='V1ListMultiMachineJobsResponse', # noqa: E501
2801
+ auth_settings=auth_settings,
2802
+ async_req=params.get('async_req'),
2803
+ _return_http_data_only=params.get('_return_http_data_only'),
2804
+ _preload_content=params.get('_preload_content', True),
2805
+ _request_timeout=params.get('_request_timeout'),
2806
+ collection_formats=collection_formats)
2807
+
2303
2808
  def jobs_service_report_logs_activity(self, body: 'IdReportlogsactivityBody', project_id: 'str', id: 'str', **kwargs) -> 'V1ReportLogsActivityResponse': # noqa: E501
2304
2809
  """The tired proxy collects the time at which the user logs started and inform the CP # noqa: E501
2305
2810
 
@@ -2993,3 +3498,116 @@ class JobsServiceApi(object):
2993
3498
  _preload_content=params.get('_preload_content', True),
2994
3499
  _request_timeout=params.get('_request_timeout'),
2995
3500
  collection_formats=collection_formats)
3501
+
3502
+ def jobs_service_update_multi_machine_job(self, body: 'MultimachinejobsIdBody', project_id: 'str', id: 'str', **kwargs) -> 'V1MultiMachineJob': # noqa: E501
3503
+ """jobs_service_update_multi_machine_job # noqa: E501
3504
+
3505
+ This method makes a synchronous HTTP request by default. To make an
3506
+ asynchronous HTTP request, please pass async_req=True
3507
+ >>> thread = api.jobs_service_update_multi_machine_job(body, project_id, id, async_req=True)
3508
+ >>> result = thread.get()
3509
+
3510
+ :param async_req bool
3511
+ :param MultimachinejobsIdBody body: (required)
3512
+ :param str project_id: (required)
3513
+ :param str id: (required)
3514
+ :return: V1MultiMachineJob
3515
+ If the method is called asynchronously,
3516
+ returns the request thread.
3517
+ """
3518
+ kwargs['_return_http_data_only'] = True
3519
+ if kwargs.get('async_req'):
3520
+ return self.jobs_service_update_multi_machine_job_with_http_info(body, project_id, id, **kwargs) # noqa: E501
3521
+ else:
3522
+ (data) = self.jobs_service_update_multi_machine_job_with_http_info(body, project_id, id, **kwargs) # noqa: E501
3523
+ return data
3524
+
3525
+ def jobs_service_update_multi_machine_job_with_http_info(self, body: 'MultimachinejobsIdBody', project_id: 'str', id: 'str', **kwargs) -> 'V1MultiMachineJob': # noqa: E501
3526
+ """jobs_service_update_multi_machine_job # noqa: E501
3527
+
3528
+ This method makes a synchronous HTTP request by default. To make an
3529
+ asynchronous HTTP request, please pass async_req=True
3530
+ >>> thread = api.jobs_service_update_multi_machine_job_with_http_info(body, project_id, id, async_req=True)
3531
+ >>> result = thread.get()
3532
+
3533
+ :param async_req bool
3534
+ :param MultimachinejobsIdBody body: (required)
3535
+ :param str project_id: (required)
3536
+ :param str id: (required)
3537
+ :return: V1MultiMachineJob
3538
+ If the method is called asynchronously,
3539
+ returns the request thread.
3540
+ """
3541
+
3542
+ all_params = ['body', 'project_id', 'id'] # noqa: E501
3543
+ all_params.append('async_req')
3544
+ all_params.append('_return_http_data_only')
3545
+ all_params.append('_preload_content')
3546
+ all_params.append('_request_timeout')
3547
+
3548
+ params = locals()
3549
+ for key, val in six.iteritems(params['kwargs']):
3550
+ if key not in all_params:
3551
+ raise TypeError(
3552
+ "Got an unexpected keyword argument '%s'"
3553
+ " to method jobs_service_update_multi_machine_job" % key
3554
+ )
3555
+ params[key] = val
3556
+ del params['kwargs']
3557
+ # verify the required parameter 'body' is set
3558
+ if ('body' not in params or
3559
+ params['body'] is None):
3560
+ raise ValueError("Missing the required parameter `body` when calling `jobs_service_update_multi_machine_job`") # noqa: E501
3561
+ # verify the required parameter 'project_id' is set
3562
+ if ('project_id' not in params or
3563
+ params['project_id'] is None):
3564
+ raise ValueError("Missing the required parameter `project_id` when calling `jobs_service_update_multi_machine_job`") # noqa: E501
3565
+ # verify the required parameter 'id' is set
3566
+ if ('id' not in params or
3567
+ params['id'] is None):
3568
+ raise ValueError("Missing the required parameter `id` when calling `jobs_service_update_multi_machine_job`") # noqa: E501
3569
+
3570
+ collection_formats = {}
3571
+
3572
+ path_params = {}
3573
+ if 'project_id' in params:
3574
+ path_params['projectId'] = params['project_id'] # noqa: E501
3575
+ if 'id' in params:
3576
+ path_params['id'] = params['id'] # noqa: E501
3577
+
3578
+ query_params = []
3579
+
3580
+ header_params = {}
3581
+
3582
+ form_params = []
3583
+ local_var_files = {}
3584
+
3585
+ body_params = None
3586
+ if 'body' in params:
3587
+ body_params = params['body']
3588
+ # HTTP header `Accept`
3589
+ header_params['Accept'] = self.api_client.select_header_accept(
3590
+ ['application/json']) # noqa: E501
3591
+
3592
+ # HTTP header `Content-Type`
3593
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
3594
+ ['application/json']) # noqa: E501
3595
+
3596
+ # Authentication setting
3597
+ auth_settings = [] # noqa: E501
3598
+
3599
+ return self.api_client.call_api(
3600
+ '/v1/projects/{projectId}/multi-machine-jobs/{id}', 'PUT',
3601
+ path_params,
3602
+ query_params,
3603
+ header_params,
3604
+ body=body_params,
3605
+ post_params=form_params,
3606
+ files=local_var_files,
3607
+ response_type='V1MultiMachineJob', # noqa: E501
3608
+ auth_settings=auth_settings,
3609
+ async_req=params.get('async_req'),
3610
+ _return_http_data_only=params.get('_return_http_data_only'),
3611
+ _preload_content=params.get('_preload_content', True),
3612
+ _request_timeout=params.get('_request_timeout'),
3613
+ collection_formats=collection_formats)