lightning-sdk 2025.7.17__py3-none-any.whl → 2025.7.30rc0__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 (99) hide show
  1. lightning_sdk/__init__.py +3 -2
  2. lightning_sdk/api/cloud_account_api.py +204 -0
  3. lightning_sdk/api/deployment_api.py +11 -0
  4. lightning_sdk/api/job_api.py +82 -10
  5. lightning_sdk/api/llm_api.py +1 -1
  6. lightning_sdk/api/mmt_api.py +44 -5
  7. lightning_sdk/api/pipeline_api.py +4 -3
  8. lightning_sdk/api/studio_api.py +51 -8
  9. lightning_sdk/api/utils.py +6 -2
  10. lightning_sdk/cli/clusters_menu.py +3 -3
  11. lightning_sdk/cli/create.py +25 -11
  12. lightning_sdk/cli/deploy/_auth.py +19 -3
  13. lightning_sdk/cli/deploy/serve.py +21 -5
  14. lightning_sdk/cli/download.py +25 -1
  15. lightning_sdk/cli/entrypoint.py +4 -2
  16. lightning_sdk/cli/list.py +5 -1
  17. lightning_sdk/cli/run.py +3 -1
  18. lightning_sdk/cli/start.py +40 -8
  19. lightning_sdk/cli/switch.py +3 -1
  20. lightning_sdk/deployment/deployment.py +8 -0
  21. lightning_sdk/job/base.py +27 -3
  22. lightning_sdk/job/job.py +28 -4
  23. lightning_sdk/job/v1.py +10 -1
  24. lightning_sdk/job/v2.py +22 -2
  25. lightning_sdk/job/work.py +5 -1
  26. lightning_sdk/lightning_cloud/openapi/__init__.py +14 -1
  27. lightning_sdk/lightning_cloud/openapi/api/assistants_service_api.py +428 -0
  28. lightning_sdk/lightning_cloud/openapi/api/billing_service_api.py +153 -48
  29. lightning_sdk/lightning_cloud/openapi/api/cloudy_service_api.py +295 -0
  30. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +93 -0
  31. lightning_sdk/lightning_cloud/openapi/models/__init__.py +14 -1
  32. lightning_sdk/lightning_cloud/openapi/models/agentmanagedendpoints_id_body.py +27 -1
  33. lightning_sdk/lightning_cloud/openapi/models/blogposts_id_body.py +53 -1
  34. lightning_sdk/lightning_cloud/openapi/models/conversations_id_body1.py +123 -0
  35. lightning_sdk/lightning_cloud/openapi/models/messages_id_body.py +123 -0
  36. lightning_sdk/lightning_cloud/openapi/models/metricsstream_id_body.py +27 -1
  37. lightning_sdk/lightning_cloud/openapi/models/project_id_schedules_body.py +81 -3
  38. lightning_sdk/lightning_cloud/openapi/models/schedules_id_body.py +79 -1
  39. lightning_sdk/lightning_cloud/openapi/models/user_id_upgradetrigger_body.py +201 -0
  40. lightning_sdk/lightning_cloud/openapi/models/user_user_id_body.py +201 -0
  41. lightning_sdk/lightning_cloud/openapi/models/v1_billing_subscription.py +27 -1
  42. lightning_sdk/lightning_cloud/openapi/models/v1_blog_post.py +53 -1
  43. lightning_sdk/lightning_cloud/openapi/models/v1_cloudy_settings.py +227 -0
  44. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +27 -1
  45. lightning_sdk/lightning_cloud/openapi/models/v1_conversation.py +27 -1
  46. lightning_sdk/lightning_cloud/openapi/models/v1_conversation_response_chunk.py +27 -1
  47. lightning_sdk/lightning_cloud/openapi/models/v1_create_billing_upgrade_trigger_record_response.py +97 -0
  48. lightning_sdk/lightning_cloud/openapi/models/v1_create_blog_post_request.py +53 -1
  49. lightning_sdk/lightning_cloud/openapi/models/v1_create_checkout_session_request.py +27 -1
  50. lightning_sdk/lightning_cloud/openapi/models/v1_create_subscription_checkout_session_request.py +55 -3
  51. lightning_sdk/lightning_cloud/openapi/models/v1_function_call.py +149 -0
  52. lightning_sdk/lightning_cloud/openapi/models/{v1_get_clickhouse_assistant_session_daily_aggregated_response.py → v1_get_assistant_session_daily_aggregated_response.py} +22 -22
  53. lightning_sdk/lightning_cloud/openapi/models/v1_get_cluster_health_response.py +149 -0
  54. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_response.py +27 -1
  55. lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +27 -1
  56. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1.py +105 -1
  57. lightning_sdk/lightning_cloud/openapi/models/v1_like_status.py +104 -0
  58. lightning_sdk/lightning_cloud/openapi/models/v1_list_published_managed_endpoints_response.py +123 -0
  59. lightning_sdk/lightning_cloud/openapi/models/v1_managed_endpoint.py +27 -1
  60. lightning_sdk/lightning_cloud/openapi/models/v1_managed_model.py +95 -17
  61. lightning_sdk/lightning_cloud/openapi/models/v1_message.py +27 -1
  62. lightning_sdk/lightning_cloud/openapi/models/v1_quote_subscription_response.py +27 -1
  63. lightning_sdk/lightning_cloud/openapi/models/v1_resource_visibility.py +27 -1
  64. lightning_sdk/lightning_cloud/openapi/models/v1_response_choice.py +29 -3
  65. lightning_sdk/lightning_cloud/openapi/models/v1_schedule.py +79 -1
  66. lightning_sdk/lightning_cloud/openapi/models/v1_service_health.py +27 -1
  67. lightning_sdk/lightning_cloud/openapi/models/v1_slurm_v1.py +79 -1
  68. lightning_sdk/lightning_cloud/openapi/models/v1_slurm_v1_status.py +79 -1
  69. lightning_sdk/lightning_cloud/openapi/models/v1_tool_call.py +175 -0
  70. lightning_sdk/lightning_cloud/openapi/models/v1_update_conversation_like_response.py +149 -0
  71. lightning_sdk/lightning_cloud/openapi/models/v1_update_conversation_message_like_response.py +149 -0
  72. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +79 -313
  73. lightning_sdk/lightning_cloud/openapi/models/v1_volume_state.py +1 -0
  74. lightning_sdk/llm/llm.py +69 -11
  75. lightning_sdk/llm/public_assistants.json +32 -8
  76. lightning_sdk/machine.py +151 -43
  77. lightning_sdk/mmt/base.py +20 -2
  78. lightning_sdk/mmt/mmt.py +25 -3
  79. lightning_sdk/mmt/v1.py +7 -1
  80. lightning_sdk/mmt/v2.py +27 -3
  81. lightning_sdk/models.py +1 -1
  82. lightning_sdk/organization.py +4 -0
  83. lightning_sdk/pipeline/pipeline.py +16 -5
  84. lightning_sdk/pipeline/printer.py +5 -3
  85. lightning_sdk/pipeline/schedule.py +844 -1
  86. lightning_sdk/pipeline/steps.py +19 -4
  87. lightning_sdk/sandbox.py +4 -1
  88. lightning_sdk/serve.py +2 -0
  89. lightning_sdk/studio.py +91 -44
  90. lightning_sdk/teamspace.py +19 -10
  91. lightning_sdk/utils/resolve.py +37 -2
  92. {lightning_sdk-2025.7.17.dist-info → lightning_sdk-2025.7.30rc0.dist-info}/METADATA +7 -5
  93. {lightning_sdk-2025.7.17.dist-info → lightning_sdk-2025.7.30rc0.dist-info}/RECORD +98 -85
  94. lightning_sdk/api/cluster_api.py +0 -119
  95. /lightning_sdk/cli/{inspect.py → inspection.py} +0 -0
  96. {lightning_sdk-2025.7.17.dist-info → lightning_sdk-2025.7.30rc0.dist-info}/LICENSE +0 -0
  97. {lightning_sdk-2025.7.17.dist-info → lightning_sdk-2025.7.30rc0.dist-info}/WHEEL +0 -0
  98. {lightning_sdk-2025.7.17.dist-info → lightning_sdk-2025.7.30rc0.dist-info}/entry_points.txt +0 -0
  99. {lightning_sdk-2025.7.17.dist-info → lightning_sdk-2025.7.30rc0.dist-info}/top_level.txt +0 -0
@@ -42,17 +42,20 @@ class V1Schedule(object):
42
42
  """
43
43
  swagger_types = {
44
44
  'action_type': 'V1ScheduleActionType',
45
+ 'command': 'str',
45
46
  'created_at': 'datetime',
46
47
  'cron_expression': 'str',
47
48
  'display_name': 'str',
48
49
  'id': 'str',
49
50
  'name': 'str',
50
51
  'next': 'datetime',
52
+ 'parallel_runs': 'bool',
51
53
  'parent_resource_id': 'str',
52
54
  'project_id': 'str',
53
55
  'resource_id': 'str',
54
56
  'resource_type': 'V1ScheduleResourceType',
55
57
  'state': 'str',
58
+ 'timezone': 'str',
56
59
  'total': 'int',
57
60
  'updated_at': 'datetime',
58
61
  'user_id': 'str'
@@ -60,42 +63,50 @@ class V1Schedule(object):
60
63
 
61
64
  attribute_map = {
62
65
  'action_type': 'actionType',
66
+ 'command': 'command',
63
67
  'created_at': 'createdAt',
64
68
  'cron_expression': 'cronExpression',
65
69
  'display_name': 'displayName',
66
70
  'id': 'id',
67
71
  'name': 'name',
68
72
  'next': 'next',
73
+ 'parallel_runs': 'parallelRuns',
69
74
  'parent_resource_id': 'parentResourceId',
70
75
  'project_id': 'projectId',
71
76
  'resource_id': 'resourceId',
72
77
  'resource_type': 'resourceType',
73
78
  'state': 'state',
79
+ 'timezone': 'timezone',
74
80
  'total': 'total',
75
81
  'updated_at': 'updatedAt',
76
82
  'user_id': 'userId'
77
83
  }
78
84
 
79
- def __init__(self, action_type: 'V1ScheduleActionType' =None, created_at: 'datetime' =None, cron_expression: 'str' =None, display_name: 'str' =None, id: 'str' =None, name: 'str' =None, next: 'datetime' =None, parent_resource_id: 'str' =None, project_id: 'str' =None, resource_id: 'str' =None, resource_type: 'V1ScheduleResourceType' =None, state: 'str' =None, total: 'int' =None, updated_at: 'datetime' =None, user_id: 'str' =None): # noqa: E501
85
+ def __init__(self, action_type: 'V1ScheduleActionType' =None, command: 'str' =None, created_at: 'datetime' =None, cron_expression: 'str' =None, display_name: 'str' =None, id: 'str' =None, name: 'str' =None, next: 'datetime' =None, parallel_runs: 'bool' =None, parent_resource_id: 'str' =None, project_id: 'str' =None, resource_id: 'str' =None, resource_type: 'V1ScheduleResourceType' =None, state: 'str' =None, timezone: 'str' =None, total: 'int' =None, updated_at: 'datetime' =None, user_id: 'str' =None): # noqa: E501
80
86
  """V1Schedule - a model defined in Swagger""" # noqa: E501
81
87
  self._action_type = None
88
+ self._command = None
82
89
  self._created_at = None
83
90
  self._cron_expression = None
84
91
  self._display_name = None
85
92
  self._id = None
86
93
  self._name = None
87
94
  self._next = None
95
+ self._parallel_runs = None
88
96
  self._parent_resource_id = None
89
97
  self._project_id = None
90
98
  self._resource_id = None
91
99
  self._resource_type = None
92
100
  self._state = None
101
+ self._timezone = None
93
102
  self._total = None
94
103
  self._updated_at = None
95
104
  self._user_id = None
96
105
  self.discriminator = None
97
106
  if action_type is not None:
98
107
  self.action_type = action_type
108
+ if command is not None:
109
+ self.command = command
99
110
  if created_at is not None:
100
111
  self.created_at = created_at
101
112
  if cron_expression is not None:
@@ -108,6 +119,8 @@ class V1Schedule(object):
108
119
  self.name = name
109
120
  if next is not None:
110
121
  self.next = next
122
+ if parallel_runs is not None:
123
+ self.parallel_runs = parallel_runs
111
124
  if parent_resource_id is not None:
112
125
  self.parent_resource_id = parent_resource_id
113
126
  if project_id is not None:
@@ -118,6 +131,8 @@ class V1Schedule(object):
118
131
  self.resource_type = resource_type
119
132
  if state is not None:
120
133
  self.state = state
134
+ if timezone is not None:
135
+ self.timezone = timezone
121
136
  if total is not None:
122
137
  self.total = total
123
138
  if updated_at is not None:
@@ -146,6 +161,27 @@ class V1Schedule(object):
146
161
 
147
162
  self._action_type = action_type
148
163
 
164
+ @property
165
+ def command(self) -> 'str':
166
+ """Gets the command of this V1Schedule. # noqa: E501
167
+
168
+
169
+ :return: The command of this V1Schedule. # noqa: E501
170
+ :rtype: str
171
+ """
172
+ return self._command
173
+
174
+ @command.setter
175
+ def command(self, command: 'str'):
176
+ """Sets the command of this V1Schedule.
177
+
178
+
179
+ :param command: The command of this V1Schedule. # noqa: E501
180
+ :type: str
181
+ """
182
+
183
+ self._command = command
184
+
149
185
  @property
150
186
  def created_at(self) -> 'datetime':
151
187
  """Gets the created_at of this V1Schedule. # noqa: E501
@@ -272,6 +308,27 @@ class V1Schedule(object):
272
308
 
273
309
  self._next = next
274
310
 
311
+ @property
312
+ def parallel_runs(self) -> 'bool':
313
+ """Gets the parallel_runs of this V1Schedule. # noqa: E501
314
+
315
+
316
+ :return: The parallel_runs of this V1Schedule. # noqa: E501
317
+ :rtype: bool
318
+ """
319
+ return self._parallel_runs
320
+
321
+ @parallel_runs.setter
322
+ def parallel_runs(self, parallel_runs: 'bool'):
323
+ """Sets the parallel_runs of this V1Schedule.
324
+
325
+
326
+ :param parallel_runs: The parallel_runs of this V1Schedule. # noqa: E501
327
+ :type: bool
328
+ """
329
+
330
+ self._parallel_runs = parallel_runs
331
+
275
332
  @property
276
333
  def parent_resource_id(self) -> 'str':
277
334
  """Gets the parent_resource_id of this V1Schedule. # noqa: E501
@@ -377,6 +434,27 @@ class V1Schedule(object):
377
434
 
378
435
  self._state = state
379
436
 
437
+ @property
438
+ def timezone(self) -> 'str':
439
+ """Gets the timezone of this V1Schedule. # noqa: E501
440
+
441
+
442
+ :return: The timezone of this V1Schedule. # noqa: E501
443
+ :rtype: str
444
+ """
445
+ return self._timezone
446
+
447
+ @timezone.setter
448
+ def timezone(self, timezone: 'str'):
449
+ """Sets the timezone of this V1Schedule.
450
+
451
+
452
+ :param timezone: The timezone of this V1Schedule. # noqa: E501
453
+ :type: str
454
+ """
455
+
456
+ self._timezone = timezone
457
+
380
458
  @property
381
459
  def total(self) -> 'int':
382
460
  """Gets the total of this V1Schedule. # noqa: E501
@@ -41,25 +41,51 @@ class V1ServiceHealth(object):
41
41
  and the value is json key in definition.
42
42
  """
43
43
  swagger_types = {
44
+ 'is_fatal': 'bool',
44
45
  'name': 'str',
45
46
  'status': 'ServiceHealthServiceStatus'
46
47
  }
47
48
 
48
49
  attribute_map = {
50
+ 'is_fatal': 'isFatal',
49
51
  'name': 'name',
50
52
  'status': 'status'
51
53
  }
52
54
 
53
- def __init__(self, name: 'str' =None, status: 'ServiceHealthServiceStatus' =None): # noqa: E501
55
+ def __init__(self, is_fatal: 'bool' =None, name: 'str' =None, status: 'ServiceHealthServiceStatus' =None): # noqa: E501
54
56
  """V1ServiceHealth - a model defined in Swagger""" # noqa: E501
57
+ self._is_fatal = None
55
58
  self._name = None
56
59
  self._status = None
57
60
  self.discriminator = None
61
+ if is_fatal is not None:
62
+ self.is_fatal = is_fatal
58
63
  if name is not None:
59
64
  self.name = name
60
65
  if status is not None:
61
66
  self.status = status
62
67
 
68
+ @property
69
+ def is_fatal(self) -> 'bool':
70
+ """Gets the is_fatal of this V1ServiceHealth. # noqa: E501
71
+
72
+
73
+ :return: The is_fatal of this V1ServiceHealth. # noqa: E501
74
+ :rtype: bool
75
+ """
76
+ return self._is_fatal
77
+
78
+ @is_fatal.setter
79
+ def is_fatal(self, is_fatal: 'bool'):
80
+ """Sets the is_fatal of this V1ServiceHealth.
81
+
82
+
83
+ :param is_fatal: The is_fatal of this V1ServiceHealth. # noqa: E501
84
+ :type: bool
85
+ """
86
+
87
+ self._is_fatal = is_fatal
88
+
63
89
  @property
64
90
  def name(self) -> 'str':
65
91
  """Gets the name of this V1ServiceHealth. # noqa: E501
@@ -41,20 +41,98 @@ class V1SlurmV1(object):
41
41
  and the value is json key in definition.
42
42
  """
43
43
  swagger_types = {
44
+ 'login_node_ip': 'str',
45
+ 'ssh_port': 'int',
46
+ 'ssh_user': 'str',
44
47
  'work_dir': 'str'
45
48
  }
46
49
 
47
50
  attribute_map = {
51
+ 'login_node_ip': 'loginNodeIp',
52
+ 'ssh_port': 'sshPort',
53
+ 'ssh_user': 'sshUser',
48
54
  'work_dir': 'workDir'
49
55
  }
50
56
 
51
- def __init__(self, work_dir: 'str' =None): # noqa: E501
57
+ def __init__(self, login_node_ip: 'str' =None, ssh_port: 'int' =None, ssh_user: 'str' =None, work_dir: 'str' =None): # noqa: E501
52
58
  """V1SlurmV1 - a model defined in Swagger""" # noqa: E501
59
+ self._login_node_ip = None
60
+ self._ssh_port = None
61
+ self._ssh_user = None
53
62
  self._work_dir = None
54
63
  self.discriminator = None
64
+ if login_node_ip is not None:
65
+ self.login_node_ip = login_node_ip
66
+ if ssh_port is not None:
67
+ self.ssh_port = ssh_port
68
+ if ssh_user is not None:
69
+ self.ssh_user = ssh_user
55
70
  if work_dir is not None:
56
71
  self.work_dir = work_dir
57
72
 
73
+ @property
74
+ def login_node_ip(self) -> 'str':
75
+ """Gets the login_node_ip of this V1SlurmV1. # noqa: E501
76
+
77
+
78
+ :return: The login_node_ip of this V1SlurmV1. # noqa: E501
79
+ :rtype: str
80
+ """
81
+ return self._login_node_ip
82
+
83
+ @login_node_ip.setter
84
+ def login_node_ip(self, login_node_ip: 'str'):
85
+ """Sets the login_node_ip of this V1SlurmV1.
86
+
87
+
88
+ :param login_node_ip: The login_node_ip of this V1SlurmV1. # noqa: E501
89
+ :type: str
90
+ """
91
+
92
+ self._login_node_ip = login_node_ip
93
+
94
+ @property
95
+ def ssh_port(self) -> 'int':
96
+ """Gets the ssh_port of this V1SlurmV1. # noqa: E501
97
+
98
+
99
+ :return: The ssh_port of this V1SlurmV1. # noqa: E501
100
+ :rtype: int
101
+ """
102
+ return self._ssh_port
103
+
104
+ @ssh_port.setter
105
+ def ssh_port(self, ssh_port: 'int'):
106
+ """Sets the ssh_port of this V1SlurmV1.
107
+
108
+
109
+ :param ssh_port: The ssh_port of this V1SlurmV1. # noqa: E501
110
+ :type: int
111
+ """
112
+
113
+ self._ssh_port = ssh_port
114
+
115
+ @property
116
+ def ssh_user(self) -> 'str':
117
+ """Gets the ssh_user of this V1SlurmV1. # noqa: E501
118
+
119
+
120
+ :return: The ssh_user of this V1SlurmV1. # noqa: E501
121
+ :rtype: str
122
+ """
123
+ return self._ssh_user
124
+
125
+ @ssh_user.setter
126
+ def ssh_user(self, ssh_user: 'str'):
127
+ """Sets the ssh_user of this V1SlurmV1.
128
+
129
+
130
+ :param ssh_user: The ssh_user of this V1SlurmV1. # noqa: E501
131
+ :type: str
132
+ """
133
+
134
+ self._ssh_user = ssh_user
135
+
58
136
  @property
59
137
  def work_dir(self) -> 'str':
60
138
  """Gets the work_dir of this V1SlurmV1. # noqa: E501
@@ -42,21 +42,36 @@ class V1SlurmV1Status(object):
42
42
  """
43
43
  swagger_types = {
44
44
  'nodes': 'list[V1SlurmNode]',
45
+ 'ssh_host': 'str',
46
+ 'ssh_port': 'int',
47
+ 'ssh_username': 'str',
45
48
  'version': 'str'
46
49
  }
47
50
 
48
51
  attribute_map = {
49
52
  'nodes': 'nodes',
53
+ 'ssh_host': 'sshHost',
54
+ 'ssh_port': 'sshPort',
55
+ 'ssh_username': 'sshUsername',
50
56
  'version': 'version'
51
57
  }
52
58
 
53
- def __init__(self, nodes: 'list[V1SlurmNode]' =None, version: 'str' =None): # noqa: E501
59
+ def __init__(self, nodes: 'list[V1SlurmNode]' =None, ssh_host: 'str' =None, ssh_port: 'int' =None, ssh_username: 'str' =None, version: 'str' =None): # noqa: E501
54
60
  """V1SlurmV1Status - a model defined in Swagger""" # noqa: E501
55
61
  self._nodes = None
62
+ self._ssh_host = None
63
+ self._ssh_port = None
64
+ self._ssh_username = None
56
65
  self._version = None
57
66
  self.discriminator = None
58
67
  if nodes is not None:
59
68
  self.nodes = nodes
69
+ if ssh_host is not None:
70
+ self.ssh_host = ssh_host
71
+ if ssh_port is not None:
72
+ self.ssh_port = ssh_port
73
+ if ssh_username is not None:
74
+ self.ssh_username = ssh_username
60
75
  if version is not None:
61
76
  self.version = version
62
77
 
@@ -81,6 +96,69 @@ class V1SlurmV1Status(object):
81
96
 
82
97
  self._nodes = nodes
83
98
 
99
+ @property
100
+ def ssh_host(self) -> 'str':
101
+ """Gets the ssh_host of this V1SlurmV1Status. # noqa: E501
102
+
103
+
104
+ :return: The ssh_host of this V1SlurmV1Status. # noqa: E501
105
+ :rtype: str
106
+ """
107
+ return self._ssh_host
108
+
109
+ @ssh_host.setter
110
+ def ssh_host(self, ssh_host: 'str'):
111
+ """Sets the ssh_host of this V1SlurmV1Status.
112
+
113
+
114
+ :param ssh_host: The ssh_host of this V1SlurmV1Status. # noqa: E501
115
+ :type: str
116
+ """
117
+
118
+ self._ssh_host = ssh_host
119
+
120
+ @property
121
+ def ssh_port(self) -> 'int':
122
+ """Gets the ssh_port of this V1SlurmV1Status. # noqa: E501
123
+
124
+
125
+ :return: The ssh_port of this V1SlurmV1Status. # noqa: E501
126
+ :rtype: int
127
+ """
128
+ return self._ssh_port
129
+
130
+ @ssh_port.setter
131
+ def ssh_port(self, ssh_port: 'int'):
132
+ """Sets the ssh_port of this V1SlurmV1Status.
133
+
134
+
135
+ :param ssh_port: The ssh_port of this V1SlurmV1Status. # noqa: E501
136
+ :type: int
137
+ """
138
+
139
+ self._ssh_port = ssh_port
140
+
141
+ @property
142
+ def ssh_username(self) -> 'str':
143
+ """Gets the ssh_username of this V1SlurmV1Status. # noqa: E501
144
+
145
+
146
+ :return: The ssh_username of this V1SlurmV1Status. # noqa: E501
147
+ :rtype: str
148
+ """
149
+ return self._ssh_username
150
+
151
+ @ssh_username.setter
152
+ def ssh_username(self, ssh_username: 'str'):
153
+ """Sets the ssh_username of this V1SlurmV1Status.
154
+
155
+
156
+ :param ssh_username: The ssh_username of this V1SlurmV1Status. # noqa: E501
157
+ :type: str
158
+ """
159
+
160
+ self._ssh_username = ssh_username
161
+
84
162
  @property
85
163
  def version(self) -> 'str':
86
164
  """Gets the version of this V1SlurmV1Status. # noqa: E501
@@ -0,0 +1,175 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ external/v1/auth_service.proto
5
+
6
+ No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501
7
+
8
+ OpenAPI spec version: version not set
9
+
10
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
11
+
12
+ NOTE
13
+ ----
14
+ standard swagger-codegen-cli for this python client has been modified
15
+ by custom templates. The purpose of these templates is to include
16
+ typing information in the API and Model code. Please refer to the
17
+ main grid repository for more info
18
+ """
19
+
20
+ import pprint
21
+ import re # noqa: F401
22
+
23
+ from typing import TYPE_CHECKING
24
+
25
+ import six
26
+
27
+ if TYPE_CHECKING:
28
+ from datetime import datetime
29
+ from lightning_sdk.lightning_cloud.openapi.models import *
30
+
31
+ class V1ToolCall(object):
32
+ """NOTE: This class is auto generated by the swagger code generator program.
33
+
34
+ Do not edit the class manually.
35
+ """
36
+ """
37
+ Attributes:
38
+ swagger_types (dict): The key is attribute name
39
+ and the value is attribute type.
40
+ attribute_map (dict): The key is attribute name
41
+ and the value is json key in definition.
42
+ """
43
+ swagger_types = {
44
+ 'function': 'V1FunctionCall',
45
+ 'id': 'str',
46
+ 'type': 'str'
47
+ }
48
+
49
+ attribute_map = {
50
+ 'function': 'function',
51
+ 'id': 'id',
52
+ 'type': 'type'
53
+ }
54
+
55
+ def __init__(self, function: 'V1FunctionCall' =None, id: 'str' =None, type: 'str' =None): # noqa: E501
56
+ """V1ToolCall - a model defined in Swagger""" # noqa: E501
57
+ self._function = None
58
+ self._id = None
59
+ self._type = None
60
+ self.discriminator = None
61
+ if function is not None:
62
+ self.function = function
63
+ if id is not None:
64
+ self.id = id
65
+ if type is not None:
66
+ self.type = type
67
+
68
+ @property
69
+ def function(self) -> 'V1FunctionCall':
70
+ """Gets the function of this V1ToolCall. # noqa: E501
71
+
72
+
73
+ :return: The function of this V1ToolCall. # noqa: E501
74
+ :rtype: V1FunctionCall
75
+ """
76
+ return self._function
77
+
78
+ @function.setter
79
+ def function(self, function: 'V1FunctionCall'):
80
+ """Sets the function of this V1ToolCall.
81
+
82
+
83
+ :param function: The function of this V1ToolCall. # noqa: E501
84
+ :type: V1FunctionCall
85
+ """
86
+
87
+ self._function = function
88
+
89
+ @property
90
+ def id(self) -> 'str':
91
+ """Gets the id of this V1ToolCall. # noqa: E501
92
+
93
+
94
+ :return: The id of this V1ToolCall. # noqa: E501
95
+ :rtype: str
96
+ """
97
+ return self._id
98
+
99
+ @id.setter
100
+ def id(self, id: 'str'):
101
+ """Sets the id of this V1ToolCall.
102
+
103
+
104
+ :param id: The id of this V1ToolCall. # noqa: E501
105
+ :type: str
106
+ """
107
+
108
+ self._id = id
109
+
110
+ @property
111
+ def type(self) -> 'str':
112
+ """Gets the type of this V1ToolCall. # noqa: E501
113
+
114
+
115
+ :return: The type of this V1ToolCall. # noqa: E501
116
+ :rtype: str
117
+ """
118
+ return self._type
119
+
120
+ @type.setter
121
+ def type(self, type: 'str'):
122
+ """Sets the type of this V1ToolCall.
123
+
124
+
125
+ :param type: The type of this V1ToolCall. # noqa: E501
126
+ :type: str
127
+ """
128
+
129
+ self._type = type
130
+
131
+ def to_dict(self) -> dict:
132
+ """Returns the model properties as a dict"""
133
+ result = {}
134
+
135
+ for attr, _ in six.iteritems(self.swagger_types):
136
+ value = getattr(self, attr)
137
+ if isinstance(value, list):
138
+ result[attr] = list(map(
139
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
140
+ value
141
+ ))
142
+ elif hasattr(value, "to_dict"):
143
+ result[attr] = value.to_dict()
144
+ elif isinstance(value, dict):
145
+ result[attr] = dict(map(
146
+ lambda item: (item[0], item[1].to_dict())
147
+ if hasattr(item[1], "to_dict") else item,
148
+ value.items()
149
+ ))
150
+ else:
151
+ result[attr] = value
152
+ if issubclass(V1ToolCall, dict):
153
+ for key, value in self.items():
154
+ result[key] = value
155
+
156
+ return result
157
+
158
+ def to_str(self) -> str:
159
+ """Returns the string representation of the model"""
160
+ return pprint.pformat(self.to_dict())
161
+
162
+ def __repr__(self) -> str:
163
+ """For `print` and `pprint`"""
164
+ return self.to_str()
165
+
166
+ def __eq__(self, other: 'V1ToolCall') -> bool:
167
+ """Returns true if both objects are equal"""
168
+ if not isinstance(other, V1ToolCall):
169
+ return False
170
+
171
+ return self.__dict__ == other.__dict__
172
+
173
+ def __ne__(self, other: 'V1ToolCall') -> bool:
174
+ """Returns true if both objects are not equal"""
175
+ return not self == other