lightning-sdk 2025.8.6rc2__py3-none-any.whl → 2025.11.5__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 (330) hide show
  1. lightning_sdk/__init__.py +13 -7
  2. lightning_sdk/__version__.py +3 -0
  3. lightning_sdk/agents.py +2 -1
  4. lightning_sdk/ai_hub.py +2 -1
  5. lightning_sdk/api/__init__.py +2 -0
  6. lightning_sdk/api/base_studio_api.py +13 -9
  7. lightning_sdk/api/cloud_account_api.py +31 -10
  8. lightning_sdk/api/deployment_api.py +27 -1
  9. lightning_sdk/api/job_api.py +16 -12
  10. lightning_sdk/api/license_api.py +26 -59
  11. lightning_sdk/api/llm_api.py +25 -2
  12. lightning_sdk/api/mmt_api.py +5 -2
  13. lightning_sdk/api/studio_api.py +252 -55
  14. lightning_sdk/api/teamspace_api.py +106 -30
  15. lightning_sdk/api/user_api.py +56 -2
  16. lightning_sdk/api/utils.py +108 -18
  17. lightning_sdk/base_studio.py +51 -27
  18. lightning_sdk/cli/__init__.py +1 -0
  19. lightning_sdk/cli/base_studio/__init__.py +10 -0
  20. lightning_sdk/cli/base_studio/list.py +43 -0
  21. lightning_sdk/cli/config/__init__.py +14 -0
  22. lightning_sdk/cli/config/get.py +57 -0
  23. lightning_sdk/cli/config/set.py +92 -0
  24. lightning_sdk/cli/config/show.py +9 -0
  25. lightning_sdk/cli/entrypoint.py +71 -71
  26. lightning_sdk/cli/groups.py +56 -0
  27. lightning_sdk/cli/job/__init__.py +7 -0
  28. lightning_sdk/cli/{clusters_menu.py → legacy/clusters_menu.py} +9 -6
  29. lightning_sdk/cli/{configure.py → legacy/configure.py} +2 -2
  30. lightning_sdk/cli/{connect.py → legacy/connect.py} +2 -2
  31. lightning_sdk/cli/{create.py → legacy/create.py} +12 -14
  32. lightning_sdk/cli/{delete.py → legacy/delete.py} +5 -5
  33. lightning_sdk/cli/legacy/deploy/__init__.py +0 -0
  34. lightning_sdk/cli/{deploy → legacy/deploy}/_auth.py +5 -6
  35. lightning_sdk/cli/{deploy → legacy/deploy}/devbox.py +8 -2
  36. lightning_sdk/cli/{deploy → legacy/deploy}/serve.py +19 -8
  37. lightning_sdk/cli/{download.py → legacy/download.py} +14 -15
  38. lightning_sdk/cli/legacy/entrypoint.py +110 -0
  39. lightning_sdk/cli/{generate.py → legacy/generate.py} +1 -1
  40. lightning_sdk/cli/{inspection.py → legacy/inspection.py} +1 -1
  41. lightning_sdk/cli/{job_and_mmt_action.py → legacy/job_and_mmt_action.py} +6 -6
  42. lightning_sdk/cli/{jobs_menu.py → legacy/jobs_menu.py} +1 -1
  43. lightning_sdk/cli/{list.py → legacy/list.py} +12 -13
  44. lightning_sdk/cli/{mmts_menu.py → legacy/mmts_menu.py} +1 -1
  45. lightning_sdk/cli/{open.py → legacy/open.py} +4 -4
  46. lightning_sdk/cli/{start.py → legacy/start.py} +1 -0
  47. lightning_sdk/cli/{stop.py → legacy/stop.py} +1 -1
  48. lightning_sdk/cli/{switch.py → legacy/switch.py} +1 -0
  49. lightning_sdk/cli/{teamspace_menu.py → legacy/teamspace_menu.py} +1 -1
  50. lightning_sdk/cli/{upload.py → legacy/upload.py} +7 -8
  51. lightning_sdk/cli/license/__init__.py +14 -0
  52. lightning_sdk/cli/license/get.py +15 -0
  53. lightning_sdk/cli/license/list.py +45 -0
  54. lightning_sdk/cli/license/set.py +13 -0
  55. lightning_sdk/cli/mmt/__init__.py +7 -0
  56. lightning_sdk/cli/studio/__init__.py +24 -0
  57. lightning_sdk/cli/studio/connect.py +139 -0
  58. lightning_sdk/cli/studio/create.py +96 -0
  59. lightning_sdk/cli/studio/delete.py +49 -0
  60. lightning_sdk/cli/studio/list.py +85 -0
  61. lightning_sdk/cli/studio/ssh.py +64 -0
  62. lightning_sdk/cli/studio/start.py +115 -0
  63. lightning_sdk/cli/studio/stop.py +45 -0
  64. lightning_sdk/cli/studio/switch.py +66 -0
  65. lightning_sdk/cli/utils/__init__.py +7 -0
  66. lightning_sdk/cli/utils/cloud_account_map.py +10 -0
  67. lightning_sdk/cli/utils/get_base_studio.py +24 -0
  68. lightning_sdk/cli/utils/handle_machine_and_gpus_args.py +69 -0
  69. lightning_sdk/cli/utils/logging.py +122 -0
  70. lightning_sdk/cli/utils/owner_selection.py +110 -0
  71. lightning_sdk/cli/utils/resolve.py +28 -0
  72. lightning_sdk/cli/utils/richt_print.py +35 -0
  73. lightning_sdk/cli/utils/save_to_config.py +27 -0
  74. lightning_sdk/cli/utils/ssh_connection.py +59 -0
  75. lightning_sdk/cli/utils/studio_selection.py +113 -0
  76. lightning_sdk/cli/utils/teamspace_selection.py +125 -0
  77. lightning_sdk/cli/vm/__init__.py +20 -0
  78. lightning_sdk/cli/vm/create.py +33 -0
  79. lightning_sdk/cli/vm/delete.py +25 -0
  80. lightning_sdk/cli/vm/list.py +30 -0
  81. lightning_sdk/cli/vm/ssh.py +31 -0
  82. lightning_sdk/cli/vm/start.py +60 -0
  83. lightning_sdk/cli/vm/stop.py +25 -0
  84. lightning_sdk/cli/vm/switch.py +38 -0
  85. lightning_sdk/constants.py +1 -0
  86. lightning_sdk/deployment/__init__.py +2 -0
  87. lightning_sdk/deployment/deployment.py +17 -2
  88. lightning_sdk/helpers.py +56 -37
  89. lightning_sdk/job/base.py +21 -6
  90. lightning_sdk/job/job.py +13 -0
  91. lightning_sdk/job/v1.py +11 -0
  92. lightning_sdk/job/v2.py +12 -0
  93. lightning_sdk/lightning_cloud/login.py +320 -10
  94. lightning_sdk/lightning_cloud/openapi/__init__.py +113 -3
  95. lightning_sdk/lightning_cloud/openapi/api/__init__.py +3 -0
  96. lightning_sdk/lightning_cloud/openapi/api/assistants_service_api.py +713 -75
  97. lightning_sdk/lightning_cloud/openapi/api/auth_service_api.py +376 -0
  98. lightning_sdk/lightning_cloud/openapi/api/billing_service_api.py +191 -1
  99. lightning_sdk/lightning_cloud/openapi/api/cloud_space_environment_template_service_api.py +5 -1
  100. lightning_sdk/lightning_cloud/openapi/api/cloud_space_service_api.py +420 -0
  101. lightning_sdk/lightning_cloud/openapi/api/cloudy_service_api.py +0 -97
  102. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +420 -0
  103. lightning_sdk/lightning_cloud/openapi/api/data_connection_service_api.py +101 -0
  104. lightning_sdk/lightning_cloud/openapi/api/incidents_service_api.py +1058 -0
  105. lightning_sdk/lightning_cloud/openapi/api/jobs_service_api.py +121 -0
  106. lightning_sdk/lightning_cloud/openapi/api/k8_s_cluster_service_api.py +1742 -94
  107. lightning_sdk/lightning_cloud/openapi/api/markets_service_api.py +145 -0
  108. lightning_sdk/lightning_cloud/openapi/api/models_store_api.py +4 -4
  109. lightning_sdk/lightning_cloud/openapi/api/product_license_service_api.py +108 -108
  110. lightning_sdk/lightning_cloud/openapi/api/projects_service_api.py +105 -0
  111. lightning_sdk/lightning_cloud/openapi/api/schedules_service_api.py +347 -0
  112. lightning_sdk/lightning_cloud/openapi/api/sdk_command_history_service_api.py +141 -0
  113. lightning_sdk/lightning_cloud/openapi/api/storage_service_api.py +761 -1
  114. lightning_sdk/lightning_cloud/openapi/configuration.py +3 -19
  115. lightning_sdk/lightning_cloud/openapi/models/__init__.py +110 -3
  116. lightning_sdk/lightning_cloud/openapi/models/assistant_id_conversations_body.py +15 -15
  117. lightning_sdk/lightning_cloud/openapi/models/cloudspace_id_visibility_body.py +27 -1
  118. lightning_sdk/lightning_cloud/openapi/models/cluster_id_kubernetestemplates_body.py +201 -0
  119. lightning_sdk/lightning_cloud/openapi/models/cluster_id_metrics_body.py +131 -1
  120. lightning_sdk/lightning_cloud/openapi/models/create.py +27 -1
  121. lightning_sdk/lightning_cloud/openapi/models/create_machine_request_represents_the_request_to_create_a_machine.py +461 -0
  122. lightning_sdk/lightning_cloud/openapi/models/deployments_id_body.py +27 -1
  123. lightning_sdk/lightning_cloud/openapi/models/externalv1_cloud_space_instance_status.py +105 -1
  124. lightning_sdk/lightning_cloud/openapi/models/externalv1_user_status.py +27 -1
  125. lightning_sdk/lightning_cloud/openapi/models/id_codeconfig_body.py +3 -81
  126. lightning_sdk/lightning_cloud/openapi/models/id_fork_body1.py +27 -1
  127. lightning_sdk/lightning_cloud/openapi/models/id_render_body.py +123 -0
  128. lightning_sdk/lightning_cloud/openapi/models/id_sleepconfig_body.py +175 -0
  129. lightning_sdk/lightning_cloud/openapi/models/id_transfer_body.py +53 -1
  130. lightning_sdk/lightning_cloud/openapi/models/incident_id_messages_body.py +123 -0
  131. lightning_sdk/lightning_cloud/openapi/models/incidents_id_body.py +279 -0
  132. lightning_sdk/lightning_cloud/openapi/models/job_id_reportroutingtelemetry_body.py +123 -0
  133. lightning_sdk/lightning_cloud/openapi/models/kubernetestemplates_id_body.py +201 -0
  134. lightning_sdk/lightning_cloud/openapi/models/license_key_validate_body.py +123 -0
  135. lightning_sdk/lightning_cloud/openapi/models/message_id_actions_body.py +201 -0
  136. lightning_sdk/lightning_cloud/openapi/models/messages_message_id_body.py +123 -0
  137. lightning_sdk/lightning_cloud/openapi/models/metricsstream_create_body.py +27 -1
  138. lightning_sdk/lightning_cloud/openapi/models/models_model_id_body.py +109 -31
  139. lightning_sdk/lightning_cloud/openapi/models/models_model_id_body1.py +149 -0
  140. lightning_sdk/lightning_cloud/openapi/models/orgs_id_body.py +53 -1
  141. lightning_sdk/lightning_cloud/openapi/models/project_id_storage_body.py +27 -1
  142. lightning_sdk/lightning_cloud/openapi/models/project_id_storagetransfers_body.py +175 -0
  143. lightning_sdk/lightning_cloud/openapi/models/project_tab_management_messages.py +123 -0
  144. lightning_sdk/lightning_cloud/openapi/models/projects_id_body.py +79 -1
  145. lightning_sdk/lightning_cloud/openapi/models/storage_complete_body.py +41 -15
  146. lightning_sdk/lightning_cloud/openapi/models/storagetransfers_validate_body.py +149 -0
  147. lightning_sdk/lightning_cloud/openapi/models/update1.py +27 -1
  148. lightning_sdk/lightning_cloud/openapi/models/uploads_upload_id_body1.py +27 -1
  149. lightning_sdk/lightning_cloud/openapi/models/user_id_affiliatelinks_body.py +107 -3
  150. lightning_sdk/lightning_cloud/openapi/models/v1_abort_storage_transfer_response.py +97 -0
  151. lightning_sdk/lightning_cloud/openapi/models/v1_aggregated_pod_metrics.py +799 -0
  152. lightning_sdk/lightning_cloud/openapi/models/v1_ai_pod_v1.py +53 -1
  153. lightning_sdk/lightning_cloud/openapi/models/v1_assistant_session_daily_aggregated.py +27 -1
  154. lightning_sdk/lightning_cloud/openapi/models/v1_billing_tier.py +0 -1
  155. lightning_sdk/lightning_cloud/openapi/models/v1_cancel_running_cloud_space_instance_transfer_response.py +97 -0
  156. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_provider.py +2 -0
  157. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_template_config.py +27 -1
  158. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_specialized_view.py +1 -0
  159. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_transfer_metadata.py +147 -17
  160. lightning_sdk/lightning_cloud/openapi/models/v1_cloudflare_v1.py +3 -29
  161. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_accelerator.py +53 -1
  162. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_capacity_reservation.py +27 -1
  163. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_metrics.py +1527 -0
  164. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_security_options.py +27 -1
  165. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +53 -1
  166. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_type.py +1 -0
  167. lightning_sdk/lightning_cloud/openapi/models/v1_container_metrics.py +21 -21
  168. lightning_sdk/lightning_cloud/openapi/models/v1_create_incident_request.py +305 -0
  169. lightning_sdk/lightning_cloud/openapi/models/v1_create_license_request.py +175 -0
  170. lightning_sdk/lightning_cloud/openapi/models/v1_create_machine_response.py +123 -0
  171. lightning_sdk/lightning_cloud/openapi/models/v1_create_model_metrics_response.py +97 -0
  172. lightning_sdk/lightning_cloud/openapi/models/v1_create_project_request.py +79 -1
  173. lightning_sdk/lightning_cloud/openapi/models/v1_create_sdk_command_history_request.py +253 -0
  174. lightning_sdk/lightning_cloud/openapi/models/v1_create_sdk_command_history_response.py +97 -0
  175. lightning_sdk/lightning_cloud/openapi/models/v1_daily_model_metrics.py +149 -0
  176. lightning_sdk/lightning_cloud/openapi/models/v1_data_connection.py +53 -1
  177. lightning_sdk/lightning_cloud/openapi/models/v1_delete_incident_message_response.py +97 -0
  178. lightning_sdk/lightning_cloud/openapi/models/v1_delete_incident_response.py +97 -0
  179. lightning_sdk/lightning_cloud/openapi/models/v1_delete_kubernetes_template_response.py +97 -0
  180. lightning_sdk/lightning_cloud/openapi/models/v1_delete_license_response.py +97 -0
  181. lightning_sdk/lightning_cloud/openapi/models/v1_delete_machine_response.py +97 -0
  182. lightning_sdk/lightning_cloud/openapi/models/v1_deployment.py +27 -1
  183. lightning_sdk/lightning_cloud/openapi/models/v1_external_cluster_spec.py +53 -1
  184. lightning_sdk/lightning_cloud/openapi/models/v1_external_search_user.py +27 -1
  185. lightning_sdk/lightning_cloud/openapi/models/v1_filestore_data_connection.py +27 -1
  186. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_metric.py +201 -0
  187. lightning_sdk/lightning_cloud/openapi/models/v1_firewall_rule.py +175 -0
  188. lightning_sdk/lightning_cloud/openapi/models/v1_get_cloud_space_required_balance_status_response.py +149 -0
  189. lightning_sdk/lightning_cloud/openapi/models/v1_get_cloud_space_transfer_estimate_response.py +149 -0
  190. lightning_sdk/lightning_cloud/openapi/models/v1_get_latest_model_metrics_response.py +123 -0
  191. lightning_sdk/lightning_cloud/openapi/models/v1_get_machine_response.py +123 -0
  192. lightning_sdk/lightning_cloud/openapi/models/v1_get_market_pricing_response.py +201 -0
  193. lightning_sdk/lightning_cloud/openapi/models/v1_get_model_metrics_response.py +123 -0
  194. lightning_sdk/lightning_cloud/openapi/models/v1_get_temp_bucket_credentials_response.py +201 -0
  195. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_response.py +41 -15
  196. lightning_sdk/lightning_cloud/openapi/models/v1_google_cloud_direct_v1.py +27 -1
  197. lightning_sdk/lightning_cloud/openapi/models/v1_group_node_metrics.py +1215 -0
  198. lightning_sdk/lightning_cloud/openapi/models/v1_group_pod_metrics.py +1241 -0
  199. lightning_sdk/lightning_cloud/openapi/models/v1_guest_login_request.py +177 -0
  200. lightning_sdk/lightning_cloud/openapi/models/v1_guest_login_response.py +149 -0
  201. lightning_sdk/lightning_cloud/openapi/models/v1_guest_user.py +201 -0
  202. lightning_sdk/lightning_cloud/openapi/models/v1_incident.py +565 -0
  203. lightning_sdk/lightning_cloud/openapi/models/v1_incident_detail.py +149 -0
  204. lightning_sdk/lightning_cloud/openapi/models/v1_incident_event.py +591 -0
  205. lightning_sdk/lightning_cloud/openapi/models/v1_incident_message.py +253 -0
  206. lightning_sdk/lightning_cloud/openapi/models/v1_incident_severity.py +105 -0
  207. lightning_sdk/lightning_cloud/openapi/models/v1_incident_type.py +108 -0
  208. lightning_sdk/lightning_cloud/openapi/models/v1_job.py +53 -1
  209. lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +27 -1
  210. lightning_sdk/lightning_cloud/openapi/models/v1_k8s_incident_indexes.py +149 -0
  211. lightning_sdk/lightning_cloud/openapi/models/v1_kai_scheduler_queue_metrics.py +627 -0
  212. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_aws_config.py +279 -0
  213. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_settings_v1.py +253 -0
  214. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1.py +107 -3
  215. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_template.py +357 -0
  216. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_template_property.py +227 -0
  217. lightning_sdk/lightning_cloud/openapi/models/v1_lambda_labs_direct_v1.py +29 -3
  218. lightning_sdk/lightning_cloud/openapi/models/v1_license.py +227 -0
  219. lightning_sdk/lightning_cloud/openapi/models/v1_lightning_elastic_cluster_v1.py +97 -0
  220. lightning_sdk/lightning_cloud/openapi/models/v1_list_aggregated_pod_metrics_response.py +123 -0
  221. lightning_sdk/lightning_cloud/openapi/models/v1_list_cluster_metric_timestamps_response.py +123 -0
  222. lightning_sdk/lightning_cloud/openapi/models/v1_list_cluster_metrics_response.py +123 -0
  223. lightning_sdk/lightning_cloud/openapi/models/v1_list_cluster_namespace_metrics_response.py +123 -0
  224. lightning_sdk/lightning_cloud/openapi/models/v1_list_cluster_namespace_user_metrics_response.py +123 -0
  225. lightning_sdk/lightning_cloud/openapi/models/v1_list_conversation_message_actions_response.py +123 -0
  226. lightning_sdk/lightning_cloud/openapi/models/v1_list_filesystem_metrics_response.py +123 -0
  227. lightning_sdk/lightning_cloud/openapi/models/v1_list_group_pod_metrics_response.py +123 -0
  228. lightning_sdk/lightning_cloud/openapi/models/v1_list_incident_events_response.py +123 -0
  229. lightning_sdk/lightning_cloud/openapi/models/v1_list_incident_messages_response.py +149 -0
  230. lightning_sdk/lightning_cloud/openapi/models/v1_list_incidents_response.py +149 -0
  231. lightning_sdk/lightning_cloud/openapi/models/v1_list_kai_scheduler_queues_metrics_response.py +123 -0
  232. lightning_sdk/lightning_cloud/openapi/models/v1_list_kubernetes_templates_response.py +123 -0
  233. lightning_sdk/lightning_cloud/openapi/models/{v1_list_product_licenses_response.py → v1_list_license_response.py} +16 -16
  234. lightning_sdk/lightning_cloud/openapi/models/v1_list_machines_response.py +149 -0
  235. lightning_sdk/lightning_cloud/openapi/models/v1_list_platform_notifications_response.py +123 -0
  236. lightning_sdk/lightning_cloud/openapi/models/v1_list_schedule_runs_response.py +123 -0
  237. lightning_sdk/lightning_cloud/openapi/models/v1_list_storage_transfers_response.py +123 -0
  238. lightning_sdk/lightning_cloud/openapi/models/v1_lustre_data_connection.py +149 -0
  239. lightning_sdk/lightning_cloud/openapi/models/v1_machine.py +617 -0
  240. lightning_sdk/lightning_cloud/openapi/models/v1_machine_direct_v1.py +123 -0
  241. lightning_sdk/lightning_cloud/openapi/models/v1_magic_link_login_request.py +1 -27
  242. lightning_sdk/lightning_cloud/openapi/models/v1_magic_link_login_response.py +27 -1
  243. lightning_sdk/lightning_cloud/openapi/models/v1_managed_model.py +29 -3
  244. lightning_sdk/lightning_cloud/openapi/models/v1_market_price.py +149 -0
  245. lightning_sdk/lightning_cloud/openapi/models/v1_membership.py +53 -1
  246. lightning_sdk/lightning_cloud/openapi/models/v1_message_action.py +279 -0
  247. lightning_sdk/lightning_cloud/openapi/models/v1_metrics_stream.py +27 -1
  248. lightning_sdk/lightning_cloud/openapi/models/v1_model_metrics.py +175 -0
  249. lightning_sdk/lightning_cloud/openapi/models/v1_namespace_metrics.py +591 -0
  250. lightning_sdk/lightning_cloud/openapi/models/v1_namespace_user_metrics.py +435 -0
  251. lightning_sdk/lightning_cloud/openapi/models/v1_nebius_direct_v1.py +29 -3
  252. lightning_sdk/lightning_cloud/openapi/models/v1_node_metrics.py +361 -23
  253. lightning_sdk/lightning_cloud/openapi/models/v1_notification_type.py +1 -0
  254. lightning_sdk/lightning_cloud/openapi/models/v1_organization.py +53 -1
  255. lightning_sdk/lightning_cloud/openapi/models/v1_pause_storage_transfer_response.py +97 -0
  256. lightning_sdk/lightning_cloud/openapi/models/v1_platform_notification.py +279 -0
  257. lightning_sdk/lightning_cloud/openapi/models/v1_pod_metrics.py +335 -23
  258. lightning_sdk/lightning_cloud/openapi/models/v1_project.py +27 -1
  259. lightning_sdk/lightning_cloud/openapi/models/v1_project_cluster_binding.py +27 -1
  260. lightning_sdk/lightning_cloud/openapi/models/v1_project_membership.py +53 -1
  261. lightning_sdk/lightning_cloud/openapi/models/v1_project_settings.py +53 -1
  262. lightning_sdk/lightning_cloud/openapi/models/v1_project_tab.py +149 -0
  263. lightning_sdk/lightning_cloud/openapi/models/{v1_product_license_check_response.py → v1_purchase_annual_upsell_request.py} +23 -23
  264. lightning_sdk/lightning_cloud/openapi/models/v1_purchase_annual_upsell_response.py +123 -0
  265. lightning_sdk/lightning_cloud/openapi/models/v1_quote_annual_upsell_response.py +227 -0
  266. lightning_sdk/lightning_cloud/openapi/models/v1_render_kubernetes_template_response.py +123 -0
  267. lightning_sdk/lightning_cloud/openapi/models/v1_report_deployment_routing_telemetry_response.py +97 -0
  268. lightning_sdk/lightning_cloud/openapi/models/v1_required_balance_reason.py +107 -0
  269. lightning_sdk/lightning_cloud/openapi/models/v1_reset_api_key_request.py +97 -0
  270. lightning_sdk/lightning_cloud/openapi/models/v1_reset_api_key_response.py +123 -0
  271. lightning_sdk/lightning_cloud/openapi/models/v1_resource_visibility.py +1 -27
  272. lightning_sdk/lightning_cloud/openapi/models/v1_resume_storage_transfer_response.py +97 -0
  273. lightning_sdk/lightning_cloud/openapi/models/v1_routing_telemetry.py +79 -1
  274. lightning_sdk/lightning_cloud/openapi/models/v1_rule_resource.py +1 -0
  275. lightning_sdk/lightning_cloud/openapi/models/v1_schedule_run.py +357 -0
  276. lightning_sdk/lightning_cloud/openapi/models/v1_sdk_command_history_severity.py +104 -0
  277. lightning_sdk/lightning_cloud/openapi/models/v1_sdk_command_history_type.py +104 -0
  278. lightning_sdk/lightning_cloud/openapi/models/v1_secret_type.py +1 -0
  279. lightning_sdk/lightning_cloud/openapi/models/v1_server_alert_type.py +1 -0
  280. lightning_sdk/lightning_cloud/openapi/models/v1_slack_notifier.py +201 -0
  281. lightning_sdk/lightning_cloud/openapi/models/v1_slack_notifier_type.py +105 -0
  282. lightning_sdk/lightning_cloud/openapi/models/v1_storage_asset.py +133 -3
  283. lightning_sdk/lightning_cloud/openapi/models/v1_storage_transfer.py +435 -0
  284. lightning_sdk/lightning_cloud/openapi/models/v1_storage_transfer_status.py +108 -0
  285. lightning_sdk/lightning_cloud/openapi/models/v1_token_login_request.py +123 -0
  286. lightning_sdk/lightning_cloud/openapi/models/v1_token_login_response.py +123 -0
  287. lightning_sdk/lightning_cloud/openapi/models/v1_token_owner_type.py +104 -0
  288. lightning_sdk/lightning_cloud/openapi/models/v1_update_cloud_space_instance_config_request.py +3 -81
  289. lightning_sdk/lightning_cloud/openapi/models/v1_update_project_tab_order_response.py +123 -0
  290. lightning_sdk/lightning_cloud/openapi/models/v1_update_user_request.py +41 -15
  291. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +444 -600
  292. lightning_sdk/lightning_cloud/openapi/models/v1_validate_license_response.py +123 -0
  293. lightning_sdk/lightning_cloud/openapi/models/v1_validate_storage_transfer_response.py +123 -0
  294. lightning_sdk/lightning_cloud/openapi/models/v1_voltage_park_direct_v1.py +29 -3
  295. lightning_sdk/lightning_cloud/rest_client.py +48 -45
  296. lightning_sdk/lightning_cloud/utils/data_connection.py +51 -1
  297. lightning_sdk/llm/llm.py +175 -56
  298. lightning_sdk/llm/public_assistants.py +44 -7
  299. lightning_sdk/machine.py +21 -2
  300. lightning_sdk/mmt/base.py +7 -0
  301. lightning_sdk/mmt/mmt.py +11 -3
  302. lightning_sdk/mmt/v1.py +3 -1
  303. lightning_sdk/mmt/v2.py +4 -0
  304. lightning_sdk/owner.py +2 -1
  305. lightning_sdk/pipeline/steps.py +6 -0
  306. lightning_sdk/plugin.py +6 -1
  307. lightning_sdk/studio.py +294 -53
  308. lightning_sdk/teamspace.py +167 -7
  309. lightning_sdk/user.py +19 -1
  310. lightning_sdk/utils/config.py +179 -0
  311. lightning_sdk/utils/license.py +13 -0
  312. lightning_sdk/utils/logging.py +79 -0
  313. lightning_sdk/utils/names.py +1179 -0
  314. lightning_sdk/utils/progress.py +283 -0
  315. lightning_sdk/utils/resolve.py +82 -7
  316. {lightning_sdk-2025.8.6rc2.dist-info → lightning_sdk-2025.11.5.dist-info}/METADATA +2 -1
  317. {lightning_sdk-2025.8.6rc2.dist-info → lightning_sdk-2025.11.5.dist-info}/RECORD +328 -169
  318. {lightning_sdk-2025.8.6rc2.dist-info → lightning_sdk-2025.11.5.dist-info}/entry_points.txt +1 -0
  319. lightning_sdk/lightning_cloud/openapi/models/v1_product_license.py +0 -435
  320. lightning_sdk/services/license.py +0 -363
  321. /lightning_sdk/cli/{deploy → legacy}/__init__.py +0 -0
  322. /lightning_sdk/cli/{ai_hub.py → legacy/ai_hub.py} +0 -0
  323. /lightning_sdk/cli/{docker_cli.py → legacy/docker_cli.py} +0 -0
  324. /lightning_sdk/cli/{exceptions.py → legacy/exceptions.py} +0 -0
  325. /lightning_sdk/cli/{run.py → legacy/run.py} +0 -0
  326. /lightning_sdk/cli/{studios_menu.py → legacy/studios_menu.py} +0 -0
  327. /lightning_sdk/cli/{coloring.py → utils/coloring.py} +0 -0
  328. {lightning_sdk-2025.8.6rc2.dist-info → lightning_sdk-2025.11.5.dist-info}/LICENSE +0 -0
  329. {lightning_sdk-2025.8.6rc2.dist-info → lightning_sdk-2025.11.5.dist-info}/WHEEL +0 -0
  330. {lightning_sdk-2025.8.6rc2.dist-info → lightning_sdk-2025.11.5.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,279 @@
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 V1KubernetesAWSConfig(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
+ 'ami': 'str',
45
+ 'cloud_init': 'str',
46
+ 'cluster_id': 'str',
47
+ 'name': 'str',
48
+ 'region': 'str',
49
+ 'role': 'str',
50
+ 'security_groups': 'list[str]'
51
+ }
52
+
53
+ attribute_map = {
54
+ 'ami': 'ami',
55
+ 'cloud_init': 'cloudInit',
56
+ 'cluster_id': 'clusterId',
57
+ 'name': 'name',
58
+ 'region': 'region',
59
+ 'role': 'role',
60
+ 'security_groups': 'securityGroups'
61
+ }
62
+
63
+ def __init__(self, ami: 'str' =None, cloud_init: 'str' =None, cluster_id: 'str' =None, name: 'str' =None, region: 'str' =None, role: 'str' =None, security_groups: 'list[str]' =None): # noqa: E501
64
+ """V1KubernetesAWSConfig - a model defined in Swagger""" # noqa: E501
65
+ self._ami = None
66
+ self._cloud_init = None
67
+ self._cluster_id = None
68
+ self._name = None
69
+ self._region = None
70
+ self._role = None
71
+ self._security_groups = None
72
+ self.discriminator = None
73
+ if ami is not None:
74
+ self.ami = ami
75
+ if cloud_init is not None:
76
+ self.cloud_init = cloud_init
77
+ if cluster_id is not None:
78
+ self.cluster_id = cluster_id
79
+ if name is not None:
80
+ self.name = name
81
+ if region is not None:
82
+ self.region = region
83
+ if role is not None:
84
+ self.role = role
85
+ if security_groups is not None:
86
+ self.security_groups = security_groups
87
+
88
+ @property
89
+ def ami(self) -> 'str':
90
+ """Gets the ami of this V1KubernetesAWSConfig. # noqa: E501
91
+
92
+
93
+ :return: The ami of this V1KubernetesAWSConfig. # noqa: E501
94
+ :rtype: str
95
+ """
96
+ return self._ami
97
+
98
+ @ami.setter
99
+ def ami(self, ami: 'str'):
100
+ """Sets the ami of this V1KubernetesAWSConfig.
101
+
102
+
103
+ :param ami: The ami of this V1KubernetesAWSConfig. # noqa: E501
104
+ :type: str
105
+ """
106
+
107
+ self._ami = ami
108
+
109
+ @property
110
+ def cloud_init(self) -> 'str':
111
+ """Gets the cloud_init of this V1KubernetesAWSConfig. # noqa: E501
112
+
113
+
114
+ :return: The cloud_init of this V1KubernetesAWSConfig. # noqa: E501
115
+ :rtype: str
116
+ """
117
+ return self._cloud_init
118
+
119
+ @cloud_init.setter
120
+ def cloud_init(self, cloud_init: 'str'):
121
+ """Sets the cloud_init of this V1KubernetesAWSConfig.
122
+
123
+
124
+ :param cloud_init: The cloud_init of this V1KubernetesAWSConfig. # noqa: E501
125
+ :type: str
126
+ """
127
+
128
+ self._cloud_init = cloud_init
129
+
130
+ @property
131
+ def cluster_id(self) -> 'str':
132
+ """Gets the cluster_id of this V1KubernetesAWSConfig. # noqa: E501
133
+
134
+
135
+ :return: The cluster_id of this V1KubernetesAWSConfig. # noqa: E501
136
+ :rtype: str
137
+ """
138
+ return self._cluster_id
139
+
140
+ @cluster_id.setter
141
+ def cluster_id(self, cluster_id: 'str'):
142
+ """Sets the cluster_id of this V1KubernetesAWSConfig.
143
+
144
+
145
+ :param cluster_id: The cluster_id of this V1KubernetesAWSConfig. # noqa: E501
146
+ :type: str
147
+ """
148
+
149
+ self._cluster_id = cluster_id
150
+
151
+ @property
152
+ def name(self) -> 'str':
153
+ """Gets the name of this V1KubernetesAWSConfig. # noqa: E501
154
+
155
+
156
+ :return: The name of this V1KubernetesAWSConfig. # noqa: E501
157
+ :rtype: str
158
+ """
159
+ return self._name
160
+
161
+ @name.setter
162
+ def name(self, name: 'str'):
163
+ """Sets the name of this V1KubernetesAWSConfig.
164
+
165
+
166
+ :param name: The name of this V1KubernetesAWSConfig. # noqa: E501
167
+ :type: str
168
+ """
169
+
170
+ self._name = name
171
+
172
+ @property
173
+ def region(self) -> 'str':
174
+ """Gets the region of this V1KubernetesAWSConfig. # noqa: E501
175
+
176
+
177
+ :return: The region of this V1KubernetesAWSConfig. # noqa: E501
178
+ :rtype: str
179
+ """
180
+ return self._region
181
+
182
+ @region.setter
183
+ def region(self, region: 'str'):
184
+ """Sets the region of this V1KubernetesAWSConfig.
185
+
186
+
187
+ :param region: The region of this V1KubernetesAWSConfig. # noqa: E501
188
+ :type: str
189
+ """
190
+
191
+ self._region = region
192
+
193
+ @property
194
+ def role(self) -> 'str':
195
+ """Gets the role of this V1KubernetesAWSConfig. # noqa: E501
196
+
197
+
198
+ :return: The role of this V1KubernetesAWSConfig. # noqa: E501
199
+ :rtype: str
200
+ """
201
+ return self._role
202
+
203
+ @role.setter
204
+ def role(self, role: 'str'):
205
+ """Sets the role of this V1KubernetesAWSConfig.
206
+
207
+
208
+ :param role: The role of this V1KubernetesAWSConfig. # noqa: E501
209
+ :type: str
210
+ """
211
+
212
+ self._role = role
213
+
214
+ @property
215
+ def security_groups(self) -> 'list[str]':
216
+ """Gets the security_groups of this V1KubernetesAWSConfig. # noqa: E501
217
+
218
+
219
+ :return: The security_groups of this V1KubernetesAWSConfig. # noqa: E501
220
+ :rtype: list[str]
221
+ """
222
+ return self._security_groups
223
+
224
+ @security_groups.setter
225
+ def security_groups(self, security_groups: 'list[str]'):
226
+ """Sets the security_groups of this V1KubernetesAWSConfig.
227
+
228
+
229
+ :param security_groups: The security_groups of this V1KubernetesAWSConfig. # noqa: E501
230
+ :type: list[str]
231
+ """
232
+
233
+ self._security_groups = security_groups
234
+
235
+ def to_dict(self) -> dict:
236
+ """Returns the model properties as a dict"""
237
+ result = {}
238
+
239
+ for attr, _ in six.iteritems(self.swagger_types):
240
+ value = getattr(self, attr)
241
+ if isinstance(value, list):
242
+ result[attr] = list(map(
243
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
244
+ value
245
+ ))
246
+ elif hasattr(value, "to_dict"):
247
+ result[attr] = value.to_dict()
248
+ elif isinstance(value, dict):
249
+ result[attr] = dict(map(
250
+ lambda item: (item[0], item[1].to_dict())
251
+ if hasattr(item[1], "to_dict") else item,
252
+ value.items()
253
+ ))
254
+ else:
255
+ result[attr] = value
256
+ if issubclass(V1KubernetesAWSConfig, dict):
257
+ for key, value in self.items():
258
+ result[key] = value
259
+
260
+ return result
261
+
262
+ def to_str(self) -> str:
263
+ """Returns the string representation of the model"""
264
+ return pprint.pformat(self.to_dict())
265
+
266
+ def __repr__(self) -> str:
267
+ """For `print` and `pprint`"""
268
+ return self.to_str()
269
+
270
+ def __eq__(self, other: 'V1KubernetesAWSConfig') -> bool:
271
+ """Returns true if both objects are equal"""
272
+ if not isinstance(other, V1KubernetesAWSConfig):
273
+ return False
274
+
275
+ return self.__dict__ == other.__dict__
276
+
277
+ def __ne__(self, other: 'V1KubernetesAWSConfig') -> bool:
278
+ """Returns true if both objects are not equal"""
279
+ return not self == other
@@ -0,0 +1,253 @@
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 V1KubernetesDirectSettingsV1(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
+ 'daily_usage_report': 'bool',
45
+ 'monthly_usage_report': 'bool',
46
+ 'nfs_storage_threshold': 'float',
47
+ 'slack_channel_id': 'str',
48
+ 'temperature_threshold': 'float',
49
+ 'weekly_usage_report': 'bool'
50
+ }
51
+
52
+ attribute_map = {
53
+ 'daily_usage_report': 'dailyUsageReport',
54
+ 'monthly_usage_report': 'monthlyUsageReport',
55
+ 'nfs_storage_threshold': 'nfsStorageThreshold',
56
+ 'slack_channel_id': 'slackChannelId',
57
+ 'temperature_threshold': 'temperatureThreshold',
58
+ 'weekly_usage_report': 'weeklyUsageReport'
59
+ }
60
+
61
+ def __init__(self, daily_usage_report: 'bool' =None, monthly_usage_report: 'bool' =None, nfs_storage_threshold: 'float' =None, slack_channel_id: 'str' =None, temperature_threshold: 'float' =None, weekly_usage_report: 'bool' =None): # noqa: E501
62
+ """V1KubernetesDirectSettingsV1 - a model defined in Swagger""" # noqa: E501
63
+ self._daily_usage_report = None
64
+ self._monthly_usage_report = None
65
+ self._nfs_storage_threshold = None
66
+ self._slack_channel_id = None
67
+ self._temperature_threshold = None
68
+ self._weekly_usage_report = None
69
+ self.discriminator = None
70
+ if daily_usage_report is not None:
71
+ self.daily_usage_report = daily_usage_report
72
+ if monthly_usage_report is not None:
73
+ self.monthly_usage_report = monthly_usage_report
74
+ if nfs_storage_threshold is not None:
75
+ self.nfs_storage_threshold = nfs_storage_threshold
76
+ if slack_channel_id is not None:
77
+ self.slack_channel_id = slack_channel_id
78
+ if temperature_threshold is not None:
79
+ self.temperature_threshold = temperature_threshold
80
+ if weekly_usage_report is not None:
81
+ self.weekly_usage_report = weekly_usage_report
82
+
83
+ @property
84
+ def daily_usage_report(self) -> 'bool':
85
+ """Gets the daily_usage_report of this V1KubernetesDirectSettingsV1. # noqa: E501
86
+
87
+
88
+ :return: The daily_usage_report of this V1KubernetesDirectSettingsV1. # noqa: E501
89
+ :rtype: bool
90
+ """
91
+ return self._daily_usage_report
92
+
93
+ @daily_usage_report.setter
94
+ def daily_usage_report(self, daily_usage_report: 'bool'):
95
+ """Sets the daily_usage_report of this V1KubernetesDirectSettingsV1.
96
+
97
+
98
+ :param daily_usage_report: The daily_usage_report of this V1KubernetesDirectSettingsV1. # noqa: E501
99
+ :type: bool
100
+ """
101
+
102
+ self._daily_usage_report = daily_usage_report
103
+
104
+ @property
105
+ def monthly_usage_report(self) -> 'bool':
106
+ """Gets the monthly_usage_report of this V1KubernetesDirectSettingsV1. # noqa: E501
107
+
108
+
109
+ :return: The monthly_usage_report of this V1KubernetesDirectSettingsV1. # noqa: E501
110
+ :rtype: bool
111
+ """
112
+ return self._monthly_usage_report
113
+
114
+ @monthly_usage_report.setter
115
+ def monthly_usage_report(self, monthly_usage_report: 'bool'):
116
+ """Sets the monthly_usage_report of this V1KubernetesDirectSettingsV1.
117
+
118
+
119
+ :param monthly_usage_report: The monthly_usage_report of this V1KubernetesDirectSettingsV1. # noqa: E501
120
+ :type: bool
121
+ """
122
+
123
+ self._monthly_usage_report = monthly_usage_report
124
+
125
+ @property
126
+ def nfs_storage_threshold(self) -> 'float':
127
+ """Gets the nfs_storage_threshold of this V1KubernetesDirectSettingsV1. # noqa: E501
128
+
129
+
130
+ :return: The nfs_storage_threshold of this V1KubernetesDirectSettingsV1. # noqa: E501
131
+ :rtype: float
132
+ """
133
+ return self._nfs_storage_threshold
134
+
135
+ @nfs_storage_threshold.setter
136
+ def nfs_storage_threshold(self, nfs_storage_threshold: 'float'):
137
+ """Sets the nfs_storage_threshold of this V1KubernetesDirectSettingsV1.
138
+
139
+
140
+ :param nfs_storage_threshold: The nfs_storage_threshold of this V1KubernetesDirectSettingsV1. # noqa: E501
141
+ :type: float
142
+ """
143
+
144
+ self._nfs_storage_threshold = nfs_storage_threshold
145
+
146
+ @property
147
+ def slack_channel_id(self) -> 'str':
148
+ """Gets the slack_channel_id of this V1KubernetesDirectSettingsV1. # noqa: E501
149
+
150
+
151
+ :return: The slack_channel_id of this V1KubernetesDirectSettingsV1. # noqa: E501
152
+ :rtype: str
153
+ """
154
+ return self._slack_channel_id
155
+
156
+ @slack_channel_id.setter
157
+ def slack_channel_id(self, slack_channel_id: 'str'):
158
+ """Sets the slack_channel_id of this V1KubernetesDirectSettingsV1.
159
+
160
+
161
+ :param slack_channel_id: The slack_channel_id of this V1KubernetesDirectSettingsV1. # noqa: E501
162
+ :type: str
163
+ """
164
+
165
+ self._slack_channel_id = slack_channel_id
166
+
167
+ @property
168
+ def temperature_threshold(self) -> 'float':
169
+ """Gets the temperature_threshold of this V1KubernetesDirectSettingsV1. # noqa: E501
170
+
171
+
172
+ :return: The temperature_threshold of this V1KubernetesDirectSettingsV1. # noqa: E501
173
+ :rtype: float
174
+ """
175
+ return self._temperature_threshold
176
+
177
+ @temperature_threshold.setter
178
+ def temperature_threshold(self, temperature_threshold: 'float'):
179
+ """Sets the temperature_threshold of this V1KubernetesDirectSettingsV1.
180
+
181
+
182
+ :param temperature_threshold: The temperature_threshold of this V1KubernetesDirectSettingsV1. # noqa: E501
183
+ :type: float
184
+ """
185
+
186
+ self._temperature_threshold = temperature_threshold
187
+
188
+ @property
189
+ def weekly_usage_report(self) -> 'bool':
190
+ """Gets the weekly_usage_report of this V1KubernetesDirectSettingsV1. # noqa: E501
191
+
192
+
193
+ :return: The weekly_usage_report of this V1KubernetesDirectSettingsV1. # noqa: E501
194
+ :rtype: bool
195
+ """
196
+ return self._weekly_usage_report
197
+
198
+ @weekly_usage_report.setter
199
+ def weekly_usage_report(self, weekly_usage_report: 'bool'):
200
+ """Sets the weekly_usage_report of this V1KubernetesDirectSettingsV1.
201
+
202
+
203
+ :param weekly_usage_report: The weekly_usage_report of this V1KubernetesDirectSettingsV1. # noqa: E501
204
+ :type: bool
205
+ """
206
+
207
+ self._weekly_usage_report = weekly_usage_report
208
+
209
+ def to_dict(self) -> dict:
210
+ """Returns the model properties as a dict"""
211
+ result = {}
212
+
213
+ for attr, _ in six.iteritems(self.swagger_types):
214
+ value = getattr(self, attr)
215
+ if isinstance(value, list):
216
+ result[attr] = list(map(
217
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
218
+ value
219
+ ))
220
+ elif hasattr(value, "to_dict"):
221
+ result[attr] = value.to_dict()
222
+ elif isinstance(value, dict):
223
+ result[attr] = dict(map(
224
+ lambda item: (item[0], item[1].to_dict())
225
+ if hasattr(item[1], "to_dict") else item,
226
+ value.items()
227
+ ))
228
+ else:
229
+ result[attr] = value
230
+ if issubclass(V1KubernetesDirectSettingsV1, dict):
231
+ for key, value in self.items():
232
+ result[key] = value
233
+
234
+ return result
235
+
236
+ def to_str(self) -> str:
237
+ """Returns the string representation of the model"""
238
+ return pprint.pformat(self.to_dict())
239
+
240
+ def __repr__(self) -> str:
241
+ """For `print` and `pprint`"""
242
+ return self.to_str()
243
+
244
+ def __eq__(self, other: 'V1KubernetesDirectSettingsV1') -> bool:
245
+ """Returns true if both objects are equal"""
246
+ if not isinstance(other, V1KubernetesDirectSettingsV1):
247
+ return False
248
+
249
+ return self.__dict__ == other.__dict__
250
+
251
+ def __ne__(self, other: 'V1KubernetesDirectSettingsV1') -> bool:
252
+ """Returns true if both objects are not equal"""
253
+ return not self == other
@@ -41,32 +41,46 @@ class V1KubernetesDirectV1(object):
41
41
  and the value is json key in definition.
42
42
  """
43
43
  swagger_types = {
44
+ 'aws': 'V1KubernetesAWSConfig',
44
45
  'grafana_dashboard_url': 'str',
45
46
  'grafana_namespace': 'str',
46
47
  'grafana_service_name': 'str',
47
48
  'grafana_service_port': 'str',
49
+ 'incident_slack_notifiers': 'list[V1SlackNotifier]',
48
50
  'kubeconfig': 'str',
49
- 'kubeconfig_elevated': 'str'
51
+ 'kubeconfig_elevated': 'str',
52
+ 'settings': 'V1KubernetesDirectSettingsV1',
53
+ 'skip_user_label_injection': 'bool'
50
54
  }
51
55
 
52
56
  attribute_map = {
57
+ 'aws': 'aws',
53
58
  'grafana_dashboard_url': 'grafanaDashboardUrl',
54
59
  'grafana_namespace': 'grafanaNamespace',
55
60
  'grafana_service_name': 'grafanaServiceName',
56
61
  'grafana_service_port': 'grafanaServicePort',
62
+ 'incident_slack_notifiers': 'incidentSlackNotifiers',
57
63
  'kubeconfig': 'kubeconfig',
58
- 'kubeconfig_elevated': 'kubeconfigElevated'
64
+ 'kubeconfig_elevated': 'kubeconfigElevated',
65
+ 'settings': 'settings',
66
+ 'skip_user_label_injection': 'skipUserLabelInjection'
59
67
  }
60
68
 
61
- def __init__(self, grafana_dashboard_url: 'str' =None, grafana_namespace: 'str' =None, grafana_service_name: 'str' =None, grafana_service_port: 'str' =None, kubeconfig: 'str' =None, kubeconfig_elevated: 'str' =None): # noqa: E501
69
+ def __init__(self, aws: 'V1KubernetesAWSConfig' =None, grafana_dashboard_url: 'str' =None, grafana_namespace: 'str' =None, grafana_service_name: 'str' =None, grafana_service_port: 'str' =None, incident_slack_notifiers: 'list[V1SlackNotifier]' =None, kubeconfig: 'str' =None, kubeconfig_elevated: 'str' =None, settings: 'V1KubernetesDirectSettingsV1' =None, skip_user_label_injection: 'bool' =None): # noqa: E501
62
70
  """V1KubernetesDirectV1 - a model defined in Swagger""" # noqa: E501
71
+ self._aws = None
63
72
  self._grafana_dashboard_url = None
64
73
  self._grafana_namespace = None
65
74
  self._grafana_service_name = None
66
75
  self._grafana_service_port = None
76
+ self._incident_slack_notifiers = None
67
77
  self._kubeconfig = None
68
78
  self._kubeconfig_elevated = None
79
+ self._settings = None
80
+ self._skip_user_label_injection = None
69
81
  self.discriminator = None
82
+ if aws is not None:
83
+ self.aws = aws
70
84
  if grafana_dashboard_url is not None:
71
85
  self.grafana_dashboard_url = grafana_dashboard_url
72
86
  if grafana_namespace is not None:
@@ -75,10 +89,37 @@ class V1KubernetesDirectV1(object):
75
89
  self.grafana_service_name = grafana_service_name
76
90
  if grafana_service_port is not None:
77
91
  self.grafana_service_port = grafana_service_port
92
+ if incident_slack_notifiers is not None:
93
+ self.incident_slack_notifiers = incident_slack_notifiers
78
94
  if kubeconfig is not None:
79
95
  self.kubeconfig = kubeconfig
80
96
  if kubeconfig_elevated is not None:
81
97
  self.kubeconfig_elevated = kubeconfig_elevated
98
+ if settings is not None:
99
+ self.settings = settings
100
+ if skip_user_label_injection is not None:
101
+ self.skip_user_label_injection = skip_user_label_injection
102
+
103
+ @property
104
+ def aws(self) -> 'V1KubernetesAWSConfig':
105
+ """Gets the aws of this V1KubernetesDirectV1. # noqa: E501
106
+
107
+
108
+ :return: The aws of this V1KubernetesDirectV1. # noqa: E501
109
+ :rtype: V1KubernetesAWSConfig
110
+ """
111
+ return self._aws
112
+
113
+ @aws.setter
114
+ def aws(self, aws: 'V1KubernetesAWSConfig'):
115
+ """Sets the aws of this V1KubernetesDirectV1.
116
+
117
+
118
+ :param aws: The aws of this V1KubernetesDirectV1. # noqa: E501
119
+ :type: V1KubernetesAWSConfig
120
+ """
121
+
122
+ self._aws = aws
82
123
 
83
124
  @property
84
125
  def grafana_dashboard_url(self) -> 'str':
@@ -164,6 +205,27 @@ class V1KubernetesDirectV1(object):
164
205
 
165
206
  self._grafana_service_port = grafana_service_port
166
207
 
208
+ @property
209
+ def incident_slack_notifiers(self) -> 'list[V1SlackNotifier]':
210
+ """Gets the incident_slack_notifiers of this V1KubernetesDirectV1. # noqa: E501
211
+
212
+
213
+ :return: The incident_slack_notifiers of this V1KubernetesDirectV1. # noqa: E501
214
+ :rtype: list[V1SlackNotifier]
215
+ """
216
+ return self._incident_slack_notifiers
217
+
218
+ @incident_slack_notifiers.setter
219
+ def incident_slack_notifiers(self, incident_slack_notifiers: 'list[V1SlackNotifier]'):
220
+ """Sets the incident_slack_notifiers of this V1KubernetesDirectV1.
221
+
222
+
223
+ :param incident_slack_notifiers: The incident_slack_notifiers of this V1KubernetesDirectV1. # noqa: E501
224
+ :type: list[V1SlackNotifier]
225
+ """
226
+
227
+ self._incident_slack_notifiers = incident_slack_notifiers
228
+
167
229
  @property
168
230
  def kubeconfig(self) -> 'str':
169
231
  """Gets the kubeconfig of this V1KubernetesDirectV1. # noqa: E501
@@ -206,6 +268,48 @@ class V1KubernetesDirectV1(object):
206
268
 
207
269
  self._kubeconfig_elevated = kubeconfig_elevated
208
270
 
271
+ @property
272
+ def settings(self) -> 'V1KubernetesDirectSettingsV1':
273
+ """Gets the settings of this V1KubernetesDirectV1. # noqa: E501
274
+
275
+
276
+ :return: The settings of this V1KubernetesDirectV1. # noqa: E501
277
+ :rtype: V1KubernetesDirectSettingsV1
278
+ """
279
+ return self._settings
280
+
281
+ @settings.setter
282
+ def settings(self, settings: 'V1KubernetesDirectSettingsV1'):
283
+ """Sets the settings of this V1KubernetesDirectV1.
284
+
285
+
286
+ :param settings: The settings of this V1KubernetesDirectV1. # noqa: E501
287
+ :type: V1KubernetesDirectSettingsV1
288
+ """
289
+
290
+ self._settings = settings
291
+
292
+ @property
293
+ def skip_user_label_injection(self) -> 'bool':
294
+ """Gets the skip_user_label_injection of this V1KubernetesDirectV1. # noqa: E501
295
+
296
+
297
+ :return: The skip_user_label_injection of this V1KubernetesDirectV1. # noqa: E501
298
+ :rtype: bool
299
+ """
300
+ return self._skip_user_label_injection
301
+
302
+ @skip_user_label_injection.setter
303
+ def skip_user_label_injection(self, skip_user_label_injection: 'bool'):
304
+ """Sets the skip_user_label_injection of this V1KubernetesDirectV1.
305
+
306
+
307
+ :param skip_user_label_injection: The skip_user_label_injection of this V1KubernetesDirectV1. # noqa: E501
308
+ :type: bool
309
+ """
310
+
311
+ self._skip_user_label_injection = skip_user_label_injection
312
+
209
313
  def to_dict(self) -> dict:
210
314
  """Returns the model properties as a dict"""
211
315
  result = {}