daytona_api_client 0.216.1 → 1.0.0

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 (230) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +9 -0
  3. data/Gemfile.lock +101 -0
  4. data/daytona_api_client.gemspec +4 -4
  5. data/lib/daytona_api_client/api/api_keys_api.rb +2 -2
  6. data/lib/daytona_api_client/api/audit_api.rb +102 -59
  7. data/lib/daytona_api_client/api/config_api.rb +1 -1
  8. data/lib/daytona_api_client/api/docker_registry_api.rb +67 -6
  9. data/lib/daytona_api_client/api/health_api.rb +3 -54
  10. data/lib/daytona_api_client/api/object_storage_api.rb +1 -1
  11. data/lib/daytona_api_client/api/organizations_api.rb +279 -1591
  12. data/lib/daytona_api_client/api/preview_api.rb +8 -202
  13. data/lib/daytona_api_client/api/runners_api.rb +22 -470
  14. data/lib/daytona_api_client/api/sandbox_api.rb +429 -2200
  15. data/lib/daytona_api_client/api/snapshots_api.rb +117 -46
  16. data/lib/daytona_api_client/api/toolbox_api.rb +5108 -0
  17. data/lib/daytona_api_client/api/users_api.rb +172 -100
  18. data/lib/daytona_api_client/api/volumes_api.rb +2 -2
  19. data/lib/daytona_api_client/api/webhooks_api.rb +164 -27
  20. data/lib/daytona_api_client/api/workspace_api.rb +955 -0
  21. data/lib/daytona_api_client/api_client.rb +4 -8
  22. data/lib/daytona_api_client/api_error.rb +1 -1
  23. data/lib/daytona_api_client/configuration.rb +2 -5
  24. data/lib/daytona_api_client/models/account_provider.rb +93 -51
  25. data/lib/daytona_api_client/models/announcement.rb +74 -3
  26. data/lib/daytona_api_client/models/api_key_list.rb +78 -17
  27. data/lib/daytona_api_client/models/api_key_response.rb +74 -3
  28. data/lib/daytona_api_client/models/audit_log.rb +75 -22
  29. data/lib/daytona_api_client/models/build_info.rb +78 -34
  30. data/lib/daytona_api_client/models/{create_runner_response.rb → command.rb} +104 -23
  31. data/lib/daytona_api_client/models/completion_context.rb +244 -0
  32. data/lib/daytona_api_client/models/completion_item.rb +289 -0
  33. data/lib/daytona_api_client/models/{paginated_traces.rb → completion_list.rb} +106 -91
  34. data/lib/daytona_api_client/models/compressed_screenshot_response.rb +256 -0
  35. data/lib/daytona_api_client/models/computer_use_start_response.rb +263 -0
  36. data/lib/daytona_api_client/models/{audit_target_scenario.rb → computer_use_status_response.rb} +96 -44
  37. data/lib/daytona_api_client/models/computer_use_stop_response.rb +263 -0
  38. data/lib/daytona_api_client/models/create_api_key.rb +75 -4
  39. data/lib/daytona_api_client/models/create_audit_log.rb +350 -0
  40. data/lib/daytona_api_client/models/create_build_info.rb +74 -3
  41. data/lib/daytona_api_client/models/create_docker_registry.rb +139 -7
  42. data/lib/daytona_api_client/models/create_linked_account.rb +74 -3
  43. data/lib/daytona_api_client/models/create_organization.rb +78 -34
  44. data/lib/daytona_api_client/models/create_organization_invitation.rb +76 -5
  45. data/lib/daytona_api_client/models/create_organization_quota.rb +290 -0
  46. data/lib/daytona_api_client/models/create_organization_role.rb +74 -3
  47. data/lib/daytona_api_client/models/create_runner.rb +361 -51
  48. data/lib/daytona_api_client/models/create_sandbox.rb +117 -108
  49. data/lib/daytona_api_client/models/{signed_port_preview_url.rb → create_session_request.rb} +93 -103
  50. data/lib/daytona_api_client/models/create_snapshot.rb +88 -61
  51. data/lib/daytona_api_client/models/{volume_created_webhook.rb → create_user.rb} +113 -131
  52. data/lib/daytona_api_client/models/create_volume.rb +74 -3
  53. data/lib/daytona_api_client/models/create_workspace.rb +411 -0
  54. data/lib/daytona_api_client/models/daytona_configuration.rb +78 -140
  55. data/lib/daytona_api_client/models/{runner_service_health.rb → display_info_response.rb} +95 -59
  56. data/lib/daytona_api_client/models/docker_registry.rb +76 -5
  57. data/lib/daytona_api_client/models/{oidc_id_p_config.rb → download_files.rb} +95 -86
  58. data/lib/daytona_api_client/models/{create_warm_pool.rb → execute_request.rb} +106 -62
  59. data/lib/daytona_api_client/models/{metric_data_point.rb → execute_response.rb} +109 -38
  60. data/lib/daytona_api_client/models/file_info.rb +417 -0
  61. data/lib/daytona_api_client/models/{snapshot_removed_webhook.rb → file_status.rb} +133 -142
  62. data/lib/daytona_api_client/models/git_add_request.rb +264 -0
  63. data/lib/daytona_api_client/models/{create_secret.rb → git_branch_request.rb} +106 -59
  64. data/lib/daytona_api_client/models/git_checkout_request.rb +261 -0
  65. data/lib/daytona_api_client/models/{toolbox_proxy_url.rb → git_clone_request.rb} +142 -10
  66. data/lib/daytona_api_client/models/{snapshot_created_webhook.rb → git_commit_info.rb} +151 -161
  67. data/lib/daytona_api_client/models/git_commit_request.rb +325 -0
  68. data/lib/daytona_api_client/models/{runner_healthcheck.rb → git_commit_response.rb} +92 -74
  69. data/lib/daytona_api_client/models/{create_region.rb → git_delete_branch_request.rb} +106 -54
  70. data/lib/daytona_api_client/models/{snapshot_manager_credentials.rb → git_repo_request.rb} +96 -35
  71. data/lib/daytona_api_client/models/git_status.rb +290 -0
  72. data/lib/daytona_api_client/models/health_controller_check200_response.rb +74 -3
  73. data/lib/daytona_api_client/models/health_controller_check200_response_info_value.rb +74 -3
  74. data/lib/daytona_api_client/models/health_controller_check503_response.rb +74 -3
  75. data/lib/daytona_api_client/models/{oidc_id_p_config_response.rb → keyboard_hotkey_request.rb} +93 -59
  76. data/lib/daytona_api_client/models/{create_region_response.rb → keyboard_press_request.rb} +102 -63
  77. data/lib/daytona_api_client/models/keyboard_type_request.rb +246 -0
  78. data/lib/daytona_api_client/models/list_branch_response.rb +237 -0
  79. data/lib/daytona_api_client/models/lsp_completion_params.rb +325 -0
  80. data/lib/daytona_api_client/models/lsp_document_request.rb +290 -0
  81. data/lib/daytona_api_client/models/lsp_location.rb +261 -0
  82. data/lib/daytona_api_client/models/{gpu_capacity.rb → lsp_server_request.rb} +109 -104
  83. data/lib/daytona_api_client/models/{secret.rb → lsp_symbol.rb} +121 -146
  84. data/lib/daytona_api_client/models/match.rb +287 -0
  85. data/lib/daytona_api_client/models/mouse_click_request.rb +283 -0
  86. data/lib/daytona_api_client/models/mouse_click_response.rb +263 -0
  87. data/lib/daytona_api_client/models/mouse_drag_request.rb +327 -0
  88. data/lib/daytona_api_client/models/mouse_drag_response.rb +263 -0
  89. data/lib/daytona_api_client/models/mouse_move_request.rb +263 -0
  90. data/lib/daytona_api_client/models/mouse_move_response.rb +263 -0
  91. data/lib/daytona_api_client/models/{available_sandbox_class.rb → mouse_position.rb} +109 -95
  92. data/lib/daytona_api_client/models/mouse_scroll_request.rb +300 -0
  93. data/lib/daytona_api_client/models/{test_identity_provider_connection_response.rb → mouse_scroll_response.rb} +81 -30
  94. data/lib/daytona_api_client/models/oidc_config.rb +78 -68
  95. data/lib/daytona_api_client/models/organization.rb +159 -307
  96. data/lib/daytona_api_client/models/organization_invitation.rb +78 -7
  97. data/lib/daytona_api_client/models/organization_role.rb +74 -3
  98. data/lib/daytona_api_client/models/organization_sandbox_default_limited_network_egress.rb +236 -0
  99. data/lib/daytona_api_client/models/organization_suspension.rb +290 -0
  100. data/lib/daytona_api_client/models/organization_usage_overview.rb +220 -21
  101. data/lib/daytona_api_client/models/organization_user.rb +76 -5
  102. data/lib/daytona_api_client/models/paginated_audit_logs.rb +80 -19
  103. data/lib/daytona_api_client/models/{paginated_jobs.rb → paginated_sandboxes.rb} +80 -9
  104. data/lib/daytona_api_client/models/paginated_snapshots.rb +77 -6
  105. data/lib/daytona_api_client/models/{paginated_logs.rb → paginated_snapshots_dto.rb} +80 -13
  106. data/lib/daytona_api_client/models/port_preview_url.rb +88 -34
  107. data/lib/daytona_api_client/models/position.rb +261 -0
  108. data/lib/daytona_api_client/models/posthog_config.rb +74 -3
  109. data/lib/daytona_api_client/models/process_errors_response.rb +263 -0
  110. data/lib/daytona_api_client/models/process_logs_response.rb +263 -0
  111. data/lib/daytona_api_client/models/process_restart_response.rb +263 -0
  112. data/lib/daytona_api_client/models/process_status_response.rb +263 -0
  113. data/lib/daytona_api_client/models/{update_last_activity.rb → project_dir_response.rb} +83 -13
  114. data/lib/daytona_api_client/models/{pending_sso_link.rb → pty_create_request.rb} +114 -109
  115. data/lib/daytona_api_client/models/pty_create_response.rb +236 -0
  116. data/lib/daytona_api_client/models/{sandbox_identity.rb → pty_list_response.rb} +95 -49
  117. data/lib/daytona_api_client/models/pty_resize_request.rb +263 -0
  118. data/lib/daytona_api_client/models/pty_session_info.rb +425 -0
  119. data/lib/daytona_api_client/models/range.rb +261 -0
  120. data/lib/daytona_api_client/models/region.rb +78 -192
  121. data/lib/daytona_api_client/models/{regenerate_api_key_response.rb → region_screenshot_response.rb} +113 -22
  122. data/lib/daytona_api_client/models/registry_push_access_dto.rb +74 -3
  123. data/lib/daytona_api_client/models/replace_request.rb +289 -0
  124. data/lib/daytona_api_client/models/replace_result.rb +236 -0
  125. data/lib/daytona_api_client/models/runner.rb +215 -155
  126. data/lib/daytona_api_client/models/runner_snapshot_dto.rb +91 -3
  127. data/lib/daytona_api_client/models/runner_state.rb +3 -4
  128. data/lib/daytona_api_client/models/sandbox.rb +105 -210
  129. data/lib/daytona_api_client/models/sandbox_class.rb +6 -8
  130. data/lib/daytona_api_client/models/sandbox_desired_state.rb +3 -5
  131. data/lib/daytona_api_client/models/{create_sandbox_snapshot.rb → sandbox_info.rb} +113 -17
  132. data/lib/daytona_api_client/models/sandbox_labels.rb +74 -3
  133. data/lib/daytona_api_client/models/sandbox_state.rb +3 -10
  134. data/lib/daytona_api_client/models/sandbox_volume.rb +79 -18
  135. data/lib/daytona_api_client/models/screenshot_response.rb +256 -0
  136. data/lib/daytona_api_client/models/{gpu_capacity_response.rb → search_files_response.rb} +93 -49
  137. data/lib/daytona_api_client/models/send_webhook_dto.rb +273 -0
  138. data/lib/daytona_api_client/models/session.rb +251 -0
  139. data/lib/daytona_api_client/models/{list_sandboxes_response.rb → session_execute_request.rb} +110 -34
  140. data/lib/daytona_api_client/models/session_execute_response.rb +239 -0
  141. data/lib/daytona_api_client/models/{generate_workos_admin_portal_link.rb → set_snapshot_general_status_dto.rb} +93 -44
  142. data/lib/daytona_api_client/models/snapshot_dto.rb +78 -84
  143. data/lib/daytona_api_client/models/snapshot_state.rb +6 -5
  144. data/lib/daytona_api_client/models/ssh_access_dto.rb +78 -34
  145. data/lib/daytona_api_client/models/ssh_access_validation_dto.rb +98 -7
  146. data/lib/daytona_api_client/models/storage_access_dto.rb +78 -34
  147. data/lib/daytona_api_client/models/update_docker_registry.rb +74 -3
  148. data/lib/daytona_api_client/models/update_organization_invitation.rb +76 -5
  149. data/lib/daytona_api_client/models/update_organization_member_access.rb +76 -5
  150. data/lib/daytona_api_client/models/update_organization_quota.rb +317 -0
  151. data/lib/daytona_api_client/models/update_organization_role.rb +74 -3
  152. data/lib/daytona_api_client/models/update_sandbox_state_dto.rb +80 -29
  153. data/lib/daytona_api_client/models/user.rb +75 -51
  154. data/lib/daytona_api_client/models/{list_secrets_response.rb → user_home_dir_response.rb} +83 -72
  155. data/lib/daytona_api_client/models/user_public_key.rb +74 -3
  156. data/lib/daytona_api_client/models/volume_dto.rb +74 -3
  157. data/lib/daytona_api_client/models/volume_state.rb +3 -4
  158. data/lib/daytona_api_client/models/webhook_app_portal_access.rb +75 -31
  159. data/lib/daytona_api_client/models/{preview_warning.rb → webhook_controller_get_status200_response.rb} +76 -23
  160. data/lib/daytona_api_client/models/webhook_initialization_status.rb +74 -3
  161. data/lib/daytona_api_client/models/windows_response.rb +265 -0
  162. data/lib/daytona_api_client/models/{update_job_status.rb → work_dir_response.rb} +83 -72
  163. data/lib/daytona_api_client/models/{sandbox_list_item.rb → workspace.rb} +303 -226
  164. data/lib/daytona_api_client/version.rb +2 -2
  165. data/lib/daytona_api_client.rb +83 -93
  166. data/project.json +13 -38
  167. metadata +88 -102
  168. data/.gitignore +0 -39
  169. data/.openapi-generator/FILES +0 -175
  170. data/.openapi-generator/VERSION +0 -1
  171. data/.openapi-generator-ignore +0 -31
  172. data/.rspec +0 -2
  173. data/.rubocop.yml +0 -148
  174. data/fix-gemspec.sh +0 -11
  175. data/lib/daytona_api_client/api/jobs_api.rb +0 -299
  176. data/lib/daytona_api_client/api/regions_api.rb +0 -77
  177. data/lib/daytona_api_client/api/secret_api.rb +0 -441
  178. data/lib/daytona_api_client/api/warm_pools_api.rb +0 -286
  179. data/lib/daytona_api_client/api_model_base.rb +0 -88
  180. data/lib/daytona_api_client/models/audit_scenarios.rb +0 -167
  181. data/lib/daytona_api_client/models/create_identity_provider.rb +0 -269
  182. data/lib/daytona_api_client/models/create_runner_sandbox_class.rb +0 -42
  183. data/lib/daytona_api_client/models/date_filter.rb +0 -178
  184. data/lib/daytona_api_client/models/fork_sandbox.rb +0 -148
  185. data/lib/daytona_api_client/models/gpu_type.rb +0 -45
  186. data/lib/daytona_api_client/models/identity_provider.rb +0 -439
  187. data/lib/daytona_api_client/models/int_filter.rb +0 -222
  188. data/lib/daytona_api_client/models/job.rb +0 -366
  189. data/lib/daytona_api_client/models/job_status.rb +0 -43
  190. data/lib/daytona_api_client/models/job_type.rb +0 -55
  191. data/lib/daytona_api_client/models/log_entry.rb +0 -334
  192. data/lib/daytona_api_client/models/metric_series.rb +0 -194
  193. data/lib/daytona_api_client/models/metrics_response.rb +0 -167
  194. data/lib/daytona_api_client/models/otel_config.rb +0 -188
  195. data/lib/daytona_api_client/models/poll_jobs_response.rb +0 -167
  196. data/lib/daytona_api_client/models/rate_limit_config.rb +0 -188
  197. data/lib/daytona_api_client/models/rate_limit_entry.rb +0 -158
  198. data/lib/daytona_api_client/models/region_quota.rb +0 -453
  199. data/lib/daytona_api_client/models/region_type.rb +0 -42
  200. data/lib/daytona_api_client/models/region_usage_overview.rb +0 -518
  201. data/lib/daytona_api_client/models/resize_sandbox.rb +0 -225
  202. data/lib/daytona_api_client/models/resolve_sandbox_secrets200_response_inner.rb +0 -176
  203. data/lib/daytona_api_client/models/runner_class.rb +0 -40
  204. data/lib/daytona_api_client/models/runner_full.rb +0 -757
  205. data/lib/daytona_api_client/models/runner_health_metrics.rb +0 -482
  206. data/lib/daytona_api_client/models/sandbox_created_webhook.rb +0 -349
  207. data/lib/daytona_api_client/models/sandbox_list_sort_direction.rb +0 -41
  208. data/lib/daytona_api_client/models/sandbox_list_sort_field.rb +0 -45
  209. data/lib/daytona_api_client/models/sandbox_state_updated_webhook.rb +0 -349
  210. data/lib/daytona_api_client/models/snapshot_state_updated_webhook.rb +0 -376
  211. data/lib/daytona_api_client/models/sso_oidc_config.rb +0 -192
  212. data/lib/daytona_api_client/models/string_filter.rb +0 -182
  213. data/lib/daytona_api_client/models/test_identity_provider_connection.rb +0 -165
  214. data/lib/daytona_api_client/models/trace_span.rb +0 -332
  215. data/lib/daytona_api_client/models/trace_summary.rb +0 -310
  216. data/lib/daytona_api_client/models/update_identity_provider.rb +0 -212
  217. data/lib/daytona_api_client/models/update_oidc_id_p_config.rb +0 -178
  218. data/lib/daytona_api_client/models/update_organization_default_region.rb +0 -165
  219. data/lib/daytona_api_client/models/update_region.rb +0 -182
  220. data/lib/daytona_api_client/models/update_sandbox_network_settings.rb +0 -168
  221. data/lib/daytona_api_client/models/update_sandbox_secrets.rb +0 -167
  222. data/lib/daytona_api_client/models/update_secret.rb +0 -170
  223. data/lib/daytona_api_client/models/update_warm_pool.rb +0 -174
  224. data/lib/daytona_api_client/models/url.rb +0 -165
  225. data/lib/daytona_api_client/models/volume_state_updated_webhook.rb +0 -376
  226. data/lib/daytona_api_client/models/warm_pool.rb +0 -490
  227. data/lib/daytona_api_client/models/webhook_event.rb +0 -46
  228. data/lib/daytona_api_client/models/workos_admin_portal_intent.rb +0 -41
  229. data/lib/daytona_api_client/models/workos_admin_portal_link.rb +0 -165
  230. data/lib/daytona_api_client/models/workos_sso_connection.rb +0 -329
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0
7
7
  Contact: support@daytona.com
8
8
  Generated by: https://openapi-generator.tech
9
- Generator version: 7.21.0
9
+ Generator version: 7.12.0
10
10
 
11
11
  =end
12
12
 
@@ -14,7 +14,7 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module DaytonaApiClient
17
- class CreateOrganizationRole < ApiModelBase
17
+ class CreateOrganizationRole
18
18
  # The name of the role
19
19
  attr_accessor :name
20
20
 
@@ -212,6 +212,61 @@ module DaytonaApiClient
212
212
  new(transformed_hash)
213
213
  end
214
214
 
215
+ # Deserializes the data based on type
216
+ # @param string type Data type
217
+ # @param string value Value to be deserialized
218
+ # @return [Object] Deserialized data
219
+ def self._deserialize(type, value)
220
+ case type.to_sym
221
+ when :Time
222
+ Time.parse(value)
223
+ when :Date
224
+ Date.parse(value)
225
+ when :String
226
+ value.to_s
227
+ when :Integer
228
+ value.to_i
229
+ when :Float
230
+ value.to_f
231
+ when :Boolean
232
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
233
+ true
234
+ else
235
+ false
236
+ end
237
+ when :Object
238
+ # generic object (usually a Hash), return directly
239
+ value
240
+ when /\AArray<(?<inner_type>.+)>\z/
241
+ inner_type = Regexp.last_match[:inner_type]
242
+ value.map { |v| _deserialize(inner_type, v) }
243
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
244
+ k_type = Regexp.last_match[:k_type]
245
+ v_type = Regexp.last_match[:v_type]
246
+ {}.tap do |hash|
247
+ value.each do |k, v|
248
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
249
+ end
250
+ end
251
+ else # model
252
+ # models (e.g. Pet) or oneOf
253
+ klass = DaytonaApiClient.const_get(type)
254
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
255
+ end
256
+ end
257
+
258
+ # Returns the string representation of the object
259
+ # @return [String] String presentation of the object
260
+ def to_s
261
+ to_hash.to_s
262
+ end
263
+
264
+ # to_body is an alias to to_hash (backward compatibility)
265
+ # @return [Hash] Returns the object in the form of hash
266
+ def to_body
267
+ to_hash
268
+ end
269
+
215
270
  # Returns the object in the form of hash
216
271
  # @return [Hash] Returns the object in the form of hash
217
272
  def to_hash
@@ -228,6 +283,22 @@ module DaytonaApiClient
228
283
  hash
229
284
  end
230
285
 
286
+ # Outputs non-array value in the form of hash
287
+ # For object, use to_hash. Otherwise, just return the value
288
+ # @param [Object] value Any valid value
289
+ # @return [Hash] Returns the value in the form of hash
290
+ def _to_hash(value)
291
+ if value.is_a?(Array)
292
+ value.compact.map { |v| _to_hash(v) }
293
+ elsif value.is_a?(Hash)
294
+ {}.tap do |hash|
295
+ value.each { |k, v| hash[k] = _to_hash(v) }
296
+ end
297
+ elsif value.respond_to? :to_hash
298
+ value.to_hash
299
+ else
300
+ value
301
+ end
302
+ end
231
303
  end
232
-
233
304
  end
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0
7
7
  Contact: support@daytona.com
8
8
  Generated by: https://openapi-generator.tech
9
- Generator version: 7.21.0
9
+ Generator version: 7.12.0
10
10
 
11
11
  =end
12
12
 
@@ -14,16 +14,30 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module DaytonaApiClient
17
- class CreateRunner < ApiModelBase
18
- attr_accessor :region_id
17
+ class CreateRunner
18
+ attr_accessor :domain
19
19
 
20
- attr_accessor :name
20
+ attr_accessor :api_url
21
21
 
22
- # Tags to associate with the runner
23
- attr_accessor :tags
22
+ attr_accessor :proxy_url
24
23
 
25
- # The sandbox class supported by the runner. Defaults to container when omitted or null.
26
- attr_accessor :sandbox_class
24
+ attr_accessor :api_key
25
+
26
+ attr_accessor :cpu
27
+
28
+ attr_accessor :memory_gi_b
29
+
30
+ attr_accessor :disk_gi_b
31
+
32
+ attr_accessor :gpu
33
+
34
+ attr_accessor :gpu_type
35
+
36
+ attr_accessor :_class
37
+
38
+ attr_accessor :region
39
+
40
+ attr_accessor :version
27
41
 
28
42
  class EnumAttributeValidator
29
43
  attr_reader :datatype
@@ -50,10 +64,18 @@ module DaytonaApiClient
50
64
  # Attribute mapping from ruby-style variable name to JSON key.
51
65
  def self.attribute_map
52
66
  {
53
- :'region_id' => :'regionId',
54
- :'name' => :'name',
55
- :'tags' => :'tags',
56
- :'sandbox_class' => :'sandboxClass'
67
+ :'domain' => :'domain',
68
+ :'api_url' => :'apiUrl',
69
+ :'proxy_url' => :'proxyUrl',
70
+ :'api_key' => :'apiKey',
71
+ :'cpu' => :'cpu',
72
+ :'memory_gi_b' => :'memoryGiB',
73
+ :'disk_gi_b' => :'diskGiB',
74
+ :'gpu' => :'gpu',
75
+ :'gpu_type' => :'gpuType',
76
+ :'_class' => :'class',
77
+ :'region' => :'region',
78
+ :'version' => :'version'
57
79
  }
58
80
  end
59
81
 
@@ -70,17 +92,24 @@ module DaytonaApiClient
70
92
  # Attribute type mapping.
71
93
  def self.openapi_types
72
94
  {
73
- :'region_id' => :'String',
74
- :'name' => :'String',
75
- :'tags' => :'Array<String>',
76
- :'sandbox_class' => :'CreateRunnerSandboxClass'
95
+ :'domain' => :'String',
96
+ :'api_url' => :'String',
97
+ :'proxy_url' => :'String',
98
+ :'api_key' => :'String',
99
+ :'cpu' => :'Float',
100
+ :'memory_gi_b' => :'Float',
101
+ :'disk_gi_b' => :'Float',
102
+ :'gpu' => :'Float',
103
+ :'gpu_type' => :'String',
104
+ :'_class' => :'String',
105
+ :'region' => :'String',
106
+ :'version' => :'String'
77
107
  }
78
108
  end
79
109
 
80
110
  # List of attributes with nullable: true
81
111
  def self.openapi_nullable
82
112
  Set.new([
83
- :'sandbox_class'
84
113
  ])
85
114
  end
86
115
 
@@ -100,26 +129,76 @@ module DaytonaApiClient
100
129
  h[k.to_sym] = v
101
130
  }
102
131
 
103
- if attributes.key?(:'region_id')
104
- self.region_id = attributes[:'region_id']
132
+ if attributes.key?(:'domain')
133
+ self.domain = attributes[:'domain']
105
134
  else
106
- self.region_id = nil
135
+ self.domain = nil
107
136
  end
108
137
 
109
- if attributes.key?(:'name')
110
- self.name = attributes[:'name']
138
+ if attributes.key?(:'api_url')
139
+ self.api_url = attributes[:'api_url']
111
140
  else
112
- self.name = nil
141
+ self.api_url = nil
113
142
  end
114
143
 
115
- if attributes.key?(:'tags')
116
- if (value = attributes[:'tags']).is_a?(Array)
117
- self.tags = value
118
- end
144
+ if attributes.key?(:'proxy_url')
145
+ self.proxy_url = attributes[:'proxy_url']
146
+ else
147
+ self.proxy_url = nil
148
+ end
149
+
150
+ if attributes.key?(:'api_key')
151
+ self.api_key = attributes[:'api_key']
152
+ else
153
+ self.api_key = nil
154
+ end
155
+
156
+ if attributes.key?(:'cpu')
157
+ self.cpu = attributes[:'cpu']
158
+ else
159
+ self.cpu = nil
160
+ end
161
+
162
+ if attributes.key?(:'memory_gi_b')
163
+ self.memory_gi_b = attributes[:'memory_gi_b']
164
+ else
165
+ self.memory_gi_b = nil
166
+ end
167
+
168
+ if attributes.key?(:'disk_gi_b')
169
+ self.disk_gi_b = attributes[:'disk_gi_b']
170
+ else
171
+ self.disk_gi_b = nil
172
+ end
173
+
174
+ if attributes.key?(:'gpu')
175
+ self.gpu = attributes[:'gpu']
176
+ else
177
+ self.gpu = nil
178
+ end
179
+
180
+ if attributes.key?(:'gpu_type')
181
+ self.gpu_type = attributes[:'gpu_type']
182
+ else
183
+ self.gpu_type = nil
184
+ end
185
+
186
+ if attributes.key?(:'_class')
187
+ self._class = attributes[:'_class']
188
+ else
189
+ self._class = nil
190
+ end
191
+
192
+ if attributes.key?(:'region')
193
+ self.region = attributes[:'region']
194
+ else
195
+ self.region = nil
119
196
  end
120
197
 
121
- if attributes.key?(:'sandbox_class')
122
- self.sandbox_class = attributes[:'sandbox_class']
198
+ if attributes.key?(:'version')
199
+ self.version = attributes[:'version']
200
+ else
201
+ self.version = nil
123
202
  end
124
203
  end
125
204
 
@@ -128,12 +207,52 @@ module DaytonaApiClient
128
207
  def list_invalid_properties
129
208
  warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
130
209
  invalid_properties = Array.new
131
- if @region_id.nil?
132
- invalid_properties.push('invalid value for "region_id", region_id cannot be nil.')
210
+ if @domain.nil?
211
+ invalid_properties.push('invalid value for "domain", domain cannot be nil.')
212
+ end
213
+
214
+ if @api_url.nil?
215
+ invalid_properties.push('invalid value for "api_url", api_url cannot be nil.')
216
+ end
217
+
218
+ if @proxy_url.nil?
219
+ invalid_properties.push('invalid value for "proxy_url", proxy_url cannot be nil.')
220
+ end
221
+
222
+ if @api_key.nil?
223
+ invalid_properties.push('invalid value for "api_key", api_key cannot be nil.')
224
+ end
225
+
226
+ if @cpu.nil?
227
+ invalid_properties.push('invalid value for "cpu", cpu cannot be nil.')
228
+ end
229
+
230
+ if @memory_gi_b.nil?
231
+ invalid_properties.push('invalid value for "memory_gi_b", memory_gi_b cannot be nil.')
133
232
  end
134
233
 
135
- if @name.nil?
136
- invalid_properties.push('invalid value for "name", name cannot be nil.')
234
+ if @disk_gi_b.nil?
235
+ invalid_properties.push('invalid value for "disk_gi_b", disk_gi_b cannot be nil.')
236
+ end
237
+
238
+ if @gpu.nil?
239
+ invalid_properties.push('invalid value for "gpu", gpu cannot be nil.')
240
+ end
241
+
242
+ if @gpu_type.nil?
243
+ invalid_properties.push('invalid value for "gpu_type", gpu_type cannot be nil.')
244
+ end
245
+
246
+ if @_class.nil?
247
+ invalid_properties.push('invalid value for "_class", _class cannot be nil.')
248
+ end
249
+
250
+ if @region.nil?
251
+ invalid_properties.push('invalid value for "region", region cannot be nil.')
252
+ end
253
+
254
+ if @version.nil?
255
+ invalid_properties.push('invalid value for "version", version cannot be nil.')
137
256
  end
138
257
 
139
258
  invalid_properties
@@ -143,29 +262,141 @@ module DaytonaApiClient
143
262
  # @return true if the model is valid
144
263
  def valid?
145
264
  warn '[DEPRECATED] the `valid?` method is obsolete'
146
- return false if @region_id.nil?
147
- return false if @name.nil?
265
+ return false if @domain.nil?
266
+ return false if @api_url.nil?
267
+ return false if @proxy_url.nil?
268
+ return false if @api_key.nil?
269
+ return false if @cpu.nil?
270
+ return false if @memory_gi_b.nil?
271
+ return false if @disk_gi_b.nil?
272
+ return false if @gpu.nil?
273
+ return false if @gpu_type.nil?
274
+ return false if @_class.nil?
275
+ _class_validator = EnumAttributeValidator.new('String', ["small", "medium", "large"])
276
+ return false unless _class_validator.valid?(@_class)
277
+ return false if @region.nil?
278
+ return false if @version.nil?
148
279
  true
149
280
  end
150
281
 
151
282
  # Custom attribute writer method with validation
152
- # @param [Object] region_id Value to be assigned
153
- def region_id=(region_id)
154
- if region_id.nil?
155
- fail ArgumentError, 'region_id cannot be nil'
283
+ # @param [Object] domain Value to be assigned
284
+ def domain=(domain)
285
+ if domain.nil?
286
+ fail ArgumentError, 'domain cannot be nil'
287
+ end
288
+
289
+ @domain = domain
290
+ end
291
+
292
+ # Custom attribute writer method with validation
293
+ # @param [Object] api_url Value to be assigned
294
+ def api_url=(api_url)
295
+ if api_url.nil?
296
+ fail ArgumentError, 'api_url cannot be nil'
156
297
  end
157
298
 
158
- @region_id = region_id
299
+ @api_url = api_url
159
300
  end
160
301
 
161
302
  # Custom attribute writer method with validation
162
- # @param [Object] name Value to be assigned
163
- def name=(name)
164
- if name.nil?
165
- fail ArgumentError, 'name cannot be nil'
303
+ # @param [Object] proxy_url Value to be assigned
304
+ def proxy_url=(proxy_url)
305
+ if proxy_url.nil?
306
+ fail ArgumentError, 'proxy_url cannot be nil'
166
307
  end
167
308
 
168
- @name = name
309
+ @proxy_url = proxy_url
310
+ end
311
+
312
+ # Custom attribute writer method with validation
313
+ # @param [Object] api_key Value to be assigned
314
+ def api_key=(api_key)
315
+ if api_key.nil?
316
+ fail ArgumentError, 'api_key cannot be nil'
317
+ end
318
+
319
+ @api_key = api_key
320
+ end
321
+
322
+ # Custom attribute writer method with validation
323
+ # @param [Object] cpu Value to be assigned
324
+ def cpu=(cpu)
325
+ if cpu.nil?
326
+ fail ArgumentError, 'cpu cannot be nil'
327
+ end
328
+
329
+ @cpu = cpu
330
+ end
331
+
332
+ # Custom attribute writer method with validation
333
+ # @param [Object] memory_gi_b Value to be assigned
334
+ def memory_gi_b=(memory_gi_b)
335
+ if memory_gi_b.nil?
336
+ fail ArgumentError, 'memory_gi_b cannot be nil'
337
+ end
338
+
339
+ @memory_gi_b = memory_gi_b
340
+ end
341
+
342
+ # Custom attribute writer method with validation
343
+ # @param [Object] disk_gi_b Value to be assigned
344
+ def disk_gi_b=(disk_gi_b)
345
+ if disk_gi_b.nil?
346
+ fail ArgumentError, 'disk_gi_b cannot be nil'
347
+ end
348
+
349
+ @disk_gi_b = disk_gi_b
350
+ end
351
+
352
+ # Custom attribute writer method with validation
353
+ # @param [Object] gpu Value to be assigned
354
+ def gpu=(gpu)
355
+ if gpu.nil?
356
+ fail ArgumentError, 'gpu cannot be nil'
357
+ end
358
+
359
+ @gpu = gpu
360
+ end
361
+
362
+ # Custom attribute writer method with validation
363
+ # @param [Object] gpu_type Value to be assigned
364
+ def gpu_type=(gpu_type)
365
+ if gpu_type.nil?
366
+ fail ArgumentError, 'gpu_type cannot be nil'
367
+ end
368
+
369
+ @gpu_type = gpu_type
370
+ end
371
+
372
+ # Custom attribute writer method checking allowed values (enum).
373
+ # @param [Object] _class Object to be assigned
374
+ def _class=(_class)
375
+ validator = EnumAttributeValidator.new('String', ["small", "medium", "large"])
376
+ unless validator.valid?(_class)
377
+ fail ArgumentError, "invalid value for \"_class\", must be one of #{validator.allowable_values}."
378
+ end
379
+ @_class = _class
380
+ end
381
+
382
+ # Custom attribute writer method with validation
383
+ # @param [Object] region Value to be assigned
384
+ def region=(region)
385
+ if region.nil?
386
+ fail ArgumentError, 'region cannot be nil'
387
+ end
388
+
389
+ @region = region
390
+ end
391
+
392
+ # Custom attribute writer method with validation
393
+ # @param [Object] version Value to be assigned
394
+ def version=(version)
395
+ if version.nil?
396
+ fail ArgumentError, 'version cannot be nil'
397
+ end
398
+
399
+ @version = version
169
400
  end
170
401
 
171
402
  # Checks equality by comparing each attribute.
@@ -173,10 +404,18 @@ module DaytonaApiClient
173
404
  def ==(o)
174
405
  return true if self.equal?(o)
175
406
  self.class == o.class &&
176
- region_id == o.region_id &&
177
- name == o.name &&
178
- tags == o.tags &&
179
- sandbox_class == o.sandbox_class
407
+ domain == o.domain &&
408
+ api_url == o.api_url &&
409
+ proxy_url == o.proxy_url &&
410
+ api_key == o.api_key &&
411
+ cpu == o.cpu &&
412
+ memory_gi_b == o.memory_gi_b &&
413
+ disk_gi_b == o.disk_gi_b &&
414
+ gpu == o.gpu &&
415
+ gpu_type == o.gpu_type &&
416
+ _class == o._class &&
417
+ region == o.region &&
418
+ version == o.version
180
419
  end
181
420
 
182
421
  # @see the `==` method
@@ -188,7 +427,7 @@ module DaytonaApiClient
188
427
  # Calculates hash code according to all attributes.
189
428
  # @return [Integer] Hash code
190
429
  def hash
191
- [region_id, name, tags, sandbox_class].hash
430
+ [domain, api_url, proxy_url, api_key, cpu, memory_gi_b, disk_gi_b, gpu, gpu_type, _class, region, version].hash
192
431
  end
193
432
 
194
433
  # Builds the object from hash
@@ -214,6 +453,61 @@ module DaytonaApiClient
214
453
  new(transformed_hash)
215
454
  end
216
455
 
456
+ # Deserializes the data based on type
457
+ # @param string type Data type
458
+ # @param string value Value to be deserialized
459
+ # @return [Object] Deserialized data
460
+ def self._deserialize(type, value)
461
+ case type.to_sym
462
+ when :Time
463
+ Time.parse(value)
464
+ when :Date
465
+ Date.parse(value)
466
+ when :String
467
+ value.to_s
468
+ when :Integer
469
+ value.to_i
470
+ when :Float
471
+ value.to_f
472
+ when :Boolean
473
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
474
+ true
475
+ else
476
+ false
477
+ end
478
+ when :Object
479
+ # generic object (usually a Hash), return directly
480
+ value
481
+ when /\AArray<(?<inner_type>.+)>\z/
482
+ inner_type = Regexp.last_match[:inner_type]
483
+ value.map { |v| _deserialize(inner_type, v) }
484
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
485
+ k_type = Regexp.last_match[:k_type]
486
+ v_type = Regexp.last_match[:v_type]
487
+ {}.tap do |hash|
488
+ value.each do |k, v|
489
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
490
+ end
491
+ end
492
+ else # model
493
+ # models (e.g. Pet) or oneOf
494
+ klass = DaytonaApiClient.const_get(type)
495
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
496
+ end
497
+ end
498
+
499
+ # Returns the string representation of the object
500
+ # @return [String] String presentation of the object
501
+ def to_s
502
+ to_hash.to_s
503
+ end
504
+
505
+ # to_body is an alias to to_hash (backward compatibility)
506
+ # @return [Hash] Returns the object in the form of hash
507
+ def to_body
508
+ to_hash
509
+ end
510
+
217
511
  # Returns the object in the form of hash
218
512
  # @return [Hash] Returns the object in the form of hash
219
513
  def to_hash
@@ -230,6 +524,22 @@ module DaytonaApiClient
230
524
  hash
231
525
  end
232
526
 
527
+ # Outputs non-array value in the form of hash
528
+ # For object, use to_hash. Otherwise, just return the value
529
+ # @param [Object] value Any valid value
530
+ # @return [Hash] Returns the value in the form of hash
531
+ def _to_hash(value)
532
+ if value.is_a?(Array)
533
+ value.compact.map { |v| _to_hash(v) }
534
+ elsif value.is_a?(Hash)
535
+ {}.tap do |hash|
536
+ value.each { |k, v| hash[k] = _to_hash(v) }
537
+ end
538
+ elsif value.respond_to? :to_hash
539
+ value.to_hash
540
+ else
541
+ value
542
+ end
543
+ end
233
544
  end
234
-
235
545
  end