daytona_api_client 0.205.0 → 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 (227) 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 +98 -55
  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 +310 -1846
  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 +434 -2354
  15. data/lib/daytona_api_client/api/snapshots_api.rb +113 -42
  16. data/lib/daytona_api_client/api/toolbox_api.rb +5108 -0
  17. data/lib/daytona_api_client/api/users_api.rb +153 -89
  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 +74 -3
  25. data/lib/daytona_api_client/models/announcement.rb +74 -3
  26. data/lib/daytona_api_client/models/api_key_list.rb +74 -3
  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/{available_sandbox_class.rb → computer_use_status_response.rb} +97 -86
  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 +78 -26
  46. data/lib/daytona_api_client/models/create_organization_role.rb +74 -3
  47. data/lib/daytona_api_client/models/create_runner.rb +386 -43
  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/create_user.rb +97 -40
  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 -96
  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/{paginated_jobs.rb → download_files.rb} +94 -100
  58. data/lib/daytona_api_client/models/{create_warm_pool.rb → execute_request.rb} +106 -62
  59. data/lib/daytona_api_client/models/execute_response.rb +263 -0
  60. data/lib/daytona_api_client/models/file_info.rb +417 -0
  61. data/lib/daytona_api_client/models/{secret.rb → file_status.rb} +122 -121
  62. data/lib/daytona_api_client/models/git_add_request.rb +264 -0
  63. data/lib/daytona_api_client/models/{admin_create_organization.rb → git_branch_request.rb} +95 -53
  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/{trace_span.rb → git_commit_info.rb} +148 -141
  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_secret.rb → git_delete_branch_request.rb} +106 -59
  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/lsp_server_request.rb +263 -0
  83. data/lib/daytona_api_client/models/{create_sandbox_snapshot.rb → lsp_symbol.rb} +132 -22
  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/mouse_position.rb +263 -0
  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 +74 -3
  95. data/lib/daytona_api_client/models/organization.rb +159 -270
  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 +74 -3
  99. data/lib/daytona_api_client/models/organization_suspension.rb +79 -10
  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 +78 -17
  103. data/lib/daytona_api_client/models/{paginated_sandboxes_deprecated.rb → paginated_sandboxes.rb} +76 -5
  104. data/lib/daytona_api_client/models/paginated_snapshots.rb +74 -3
  105. data/lib/daytona_api_client/models/{paginated_logs.rb → paginated_snapshots_dto.rb} +77 -10
  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/{metric_data_point.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/{oidc_id_p_config.rb → replace_result.rb} +95 -88
  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 +101 -206
  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_region.rb → sandbox_info.rb} +113 -49
  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/{audit_target_scenario.rb → search_files_response.rb} +95 -66
  137. data/lib/daytona_api_client/models/send_webhook_dto.rb +75 -26
  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/{organization_sso_enabled.rb → session_execute_response.rb} +104 -30
  141. data/lib/daytona_api_client/models/set_snapshot_general_status_dto.rb +74 -3
  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 +115 -131
  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 -41
  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} +299 -222
  164. data/lib/daytona_api_client/version.rb +2 -2
  165. data/lib/daytona_api_client.rb +76 -87
  166. data/project.json +13 -38
  167. metadata +83 -98
  168. data/.gitignore +0 -39
  169. data/.openapi-generator/FILES +0 -176
  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/admin_api.rb +0 -1618
  176. data/lib/daytona_api_client/api/jobs_api.rb +0 -299
  177. data/lib/daytona_api_client/api/regions_api.rb +0 -77
  178. data/lib/daytona_api_client/api/secret_api.rb +0 -441
  179. data/lib/daytona_api_client/api/warm_pools_api.rb +0 -286
  180. data/lib/daytona_api_client/api_model_base.rb +0 -88
  181. data/lib/daytona_api_client/models/admin_create_runner.rb +0 -326
  182. data/lib/daytona_api_client/models/admin_get_webhook_status200_response.rb +0 -147
  183. data/lib/daytona_api_client/models/audit_scenarios.rb +0 -167
  184. data/lib/daytona_api_client/models/create_identity_provider.rb +0 -269
  185. data/lib/daytona_api_client/models/create_organization_region_quota.rb +0 -386
  186. data/lib/daytona_api_client/models/date_filter.rb +0 -178
  187. data/lib/daytona_api_client/models/fork_sandbox.rb +0 -148
  188. data/lib/daytona_api_client/models/gpu_type.rb +0 -44
  189. data/lib/daytona_api_client/models/identity_provider.rb +0 -439
  190. data/lib/daytona_api_client/models/int_filter.rb +0 -222
  191. data/lib/daytona_api_client/models/job.rb +0 -366
  192. data/lib/daytona_api_client/models/job_status.rb +0 -43
  193. data/lib/daytona_api_client/models/job_type.rb +0 -55
  194. data/lib/daytona_api_client/models/log_entry.rb +0 -334
  195. data/lib/daytona_api_client/models/metric_series.rb +0 -194
  196. data/lib/daytona_api_client/models/metrics_response.rb +0 -167
  197. data/lib/daytona_api_client/models/organization_preview_warning.rb +0 -165
  198. data/lib/daytona_api_client/models/otel_config.rb +0 -188
  199. data/lib/daytona_api_client/models/poll_jobs_response.rb +0 -167
  200. data/lib/daytona_api_client/models/rate_limit_config.rb +0 -188
  201. data/lib/daytona_api_client/models/rate_limit_entry.rb +0 -158
  202. data/lib/daytona_api_client/models/region_quota.rb +0 -453
  203. data/lib/daytona_api_client/models/region_type.rb +0 -42
  204. data/lib/daytona_api_client/models/region_usage_overview.rb +0 -518
  205. data/lib/daytona_api_client/models/resize_sandbox.rb +0 -225
  206. data/lib/daytona_api_client/models/resolve_sandbox_secrets200_response_inner.rb +0 -176
  207. data/lib/daytona_api_client/models/runner_class.rb +0 -40
  208. data/lib/daytona_api_client/models/runner_full.rb +0 -757
  209. data/lib/daytona_api_client/models/runner_health_metrics.rb +0 -482
  210. data/lib/daytona_api_client/models/sandbox_list_sort_direction.rb +0 -41
  211. data/lib/daytona_api_client/models/sandbox_list_sort_field.rb +0 -45
  212. data/lib/daytona_api_client/models/sso_oidc_config.rb +0 -192
  213. data/lib/daytona_api_client/models/string_filter.rb +0 -182
  214. data/lib/daytona_api_client/models/test_identity_provider_connection.rb +0 -165
  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_organization_region_quota.rb +0 -313
  220. data/lib/daytona_api_client/models/update_region.rb +0 -182
  221. data/lib/daytona_api_client/models/update_sandbox_network_settings.rb +0 -168
  222. data/lib/daytona_api_client/models/update_sandbox_secrets.rb +0 -167
  223. data/lib/daytona_api_client/models/update_secret.rb +0 -170
  224. data/lib/daytona_api_client/models/update_warm_pool.rb +0 -174
  225. data/lib/daytona_api_client/models/url.rb +0 -165
  226. data/lib/daytona_api_client/models/warm_pool.rb +0 -490
  227. data/lib/daytona_api_client/models/webhook_event.rb +0 -46
@@ -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,42 +14,24 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module DaytonaApiClient
17
- class SandboxListItem < ApiModelBase
17
+ class Workspace
18
18
  # The ID of the sandbox
19
19
  attr_accessor :id
20
20
 
21
21
  # The organization ID of the sandbox
22
22
  attr_accessor :organization_id
23
23
 
24
- # The name of the sandbox
25
- attr_accessor :name
26
-
27
- # The target environment for the sandbox
28
- attr_accessor :target
29
-
30
- # The runner ID of the sandbox
31
- attr_accessor :runner_id
32
-
33
- # The class of the sandbox
34
- attr_accessor :sandbox_class
35
-
36
- # The state of the sandbox
37
- attr_accessor :state
38
-
39
- # The desired state of the sandbox
40
- attr_accessor :desired_state
41
-
42
24
  # The snapshot used for the sandbox
43
25
  attr_accessor :snapshot
44
26
 
45
27
  # The user associated with the project
46
28
  attr_accessor :user
47
29
 
48
- # The error reason of the sandbox
49
- attr_accessor :error_reason
30
+ # Environment variables for the sandbox
31
+ attr_accessor :env
50
32
 
51
- # Whether the sandbox error is recoverable.
52
- attr_accessor :recoverable
33
+ # Labels for the sandbox
34
+ attr_accessor :labels
53
35
 
54
36
  # Whether the sandbox http preview is public
55
37
  attr_accessor :public
@@ -60,8 +42,8 @@ module DaytonaApiClient
60
42
  # Comma-separated list of allowed CIDR network addresses for the sandbox
61
43
  attr_accessor :network_allow_list
62
44
 
63
- # Comma-separated list of allowed domains for the sandbox
64
- attr_accessor :domain_allow_list
45
+ # The target environment for the sandbox
46
+ attr_accessor :target
65
47
 
66
48
  # The CPU quota for the sandbox
67
49
  attr_accessor :cpu
@@ -69,41 +51,44 @@ module DaytonaApiClient
69
51
  # The GPU quota for the sandbox
70
52
  attr_accessor :gpu
71
53
 
72
- # Whether this is a spot GPU sandbox. Spot sandboxes may be instantly terminated to free capacity for on-demand GPU sandboxes. Absent on APIs that predate this field; treat as false.
73
- attr_accessor :spot
74
-
75
- # When this sandbox was evicted by spot preemption. Set as soon as the sandbox is marked for eviction, so it is already present while the sandbox is still winding down.
76
- attr_accessor :spot_evicted_at
77
-
78
- # The GPU type assigned to the sandbox
79
- attr_accessor :gpu_type
80
-
81
54
  # The memory quota for the sandbox
82
55
  attr_accessor :memory
83
56
 
84
57
  # The disk quota for the sandbox
85
58
  attr_accessor :disk
86
59
 
87
- # Labels for the sandbox
88
- attr_accessor :labels
60
+ # The state of the sandbox
61
+ attr_accessor :state
62
+
63
+ # The desired state of the sandbox
64
+ attr_accessor :desired_state
65
+
66
+ # The error reason of the sandbox
67
+ attr_accessor :error_reason
89
68
 
90
69
  # The state of the backup
91
70
  attr_accessor :backup_state
92
71
 
72
+ # The creation timestamp of the last backup
73
+ attr_accessor :backup_created_at
74
+
93
75
  # Auto-stop interval in minutes (0 means disabled)
94
76
  attr_accessor :auto_stop_interval
95
77
 
96
- # Auto-pause interval in minutes (0 means disabled)
97
- attr_accessor :auto_pause_interval
98
-
99
78
  # Auto-archive interval in minutes
100
79
  attr_accessor :auto_archive_interval
101
80
 
102
81
  # Auto-delete interval in minutes (negative value means disabled, 0 means delete immediately upon stopping)
103
82
  attr_accessor :auto_delete_interval
104
83
 
105
- # When the sandbox will be automatically destroyed, regardless of its state (only set when a TTL is configured)
106
- attr_accessor :auto_destroy_at
84
+ # The domain name of the runner
85
+ attr_accessor :runner_domain
86
+
87
+ # Array of volumes attached to the sandbox
88
+ attr_accessor :volumes
89
+
90
+ # Build information for the sandbox
91
+ attr_accessor :build_info
107
92
 
108
93
  # The creation timestamp of the sandbox
109
94
  attr_accessor :created_at
@@ -111,17 +96,26 @@ module DaytonaApiClient
111
96
  # The last update timestamp of the sandbox
112
97
  attr_accessor :updated_at
113
98
 
114
- # The last activity timestamp of the sandbox
115
- attr_accessor :last_activity_at
99
+ # The class of the sandbox
100
+ attr_accessor :_class
116
101
 
117
102
  # The version of the daemon running in the sandbox
118
103
  attr_accessor :daemon_version
119
104
 
120
- # Id of the warm pool this sandbox waits in; set only while it is an unclaimed member
121
- attr_accessor :warm_pool_id
105
+ # The name of the workspace
106
+ attr_accessor :name
107
+
108
+ # The image used for the workspace
109
+ attr_accessor :image
110
+
111
+ # The state of the snapshot
112
+ attr_accessor :snapshot_state
122
113
 
123
- # The toolbox proxy URL for the sandbox
124
- attr_accessor :toolbox_proxy_url
114
+ # The creation timestamp of the last snapshot
115
+ attr_accessor :snapshot_created_at
116
+
117
+ # Additional information about the sandbox
118
+ attr_accessor :info
125
119
 
126
120
  class EnumAttributeValidator
127
121
  attr_reader :datatype
@@ -150,40 +144,38 @@ module DaytonaApiClient
150
144
  {
151
145
  :'id' => :'id',
152
146
  :'organization_id' => :'organizationId',
153
- :'name' => :'name',
154
- :'target' => :'target',
155
- :'runner_id' => :'runnerId',
156
- :'sandbox_class' => :'sandboxClass',
157
- :'state' => :'state',
158
- :'desired_state' => :'desiredState',
159
147
  :'snapshot' => :'snapshot',
160
148
  :'user' => :'user',
161
- :'error_reason' => :'errorReason',
162
- :'recoverable' => :'recoverable',
149
+ :'env' => :'env',
150
+ :'labels' => :'labels',
163
151
  :'public' => :'public',
164
152
  :'network_block_all' => :'networkBlockAll',
165
153
  :'network_allow_list' => :'networkAllowList',
166
- :'domain_allow_list' => :'domainAllowList',
154
+ :'target' => :'target',
167
155
  :'cpu' => :'cpu',
168
156
  :'gpu' => :'gpu',
169
- :'spot' => :'spot',
170
- :'spot_evicted_at' => :'spotEvictedAt',
171
- :'gpu_type' => :'gpuType',
172
157
  :'memory' => :'memory',
173
158
  :'disk' => :'disk',
174
- :'labels' => :'labels',
159
+ :'state' => :'state',
160
+ :'desired_state' => :'desiredState',
161
+ :'error_reason' => :'errorReason',
175
162
  :'backup_state' => :'backupState',
163
+ :'backup_created_at' => :'backupCreatedAt',
176
164
  :'auto_stop_interval' => :'autoStopInterval',
177
- :'auto_pause_interval' => :'autoPauseInterval',
178
165
  :'auto_archive_interval' => :'autoArchiveInterval',
179
166
  :'auto_delete_interval' => :'autoDeleteInterval',
180
- :'auto_destroy_at' => :'autoDestroyAt',
167
+ :'runner_domain' => :'runnerDomain',
168
+ :'volumes' => :'volumes',
169
+ :'build_info' => :'buildInfo',
181
170
  :'created_at' => :'createdAt',
182
171
  :'updated_at' => :'updatedAt',
183
- :'last_activity_at' => :'lastActivityAt',
172
+ :'_class' => :'class',
184
173
  :'daemon_version' => :'daemonVersion',
185
- :'warm_pool_id' => :'warmPoolId',
186
- :'toolbox_proxy_url' => :'toolboxProxyUrl'
174
+ :'name' => :'name',
175
+ :'image' => :'image',
176
+ :'snapshot_state' => :'snapshotState',
177
+ :'snapshot_created_at' => :'snapshotCreatedAt',
178
+ :'info' => :'info'
187
179
  }
188
180
  end
189
181
 
@@ -202,40 +194,38 @@ module DaytonaApiClient
202
194
  {
203
195
  :'id' => :'String',
204
196
  :'organization_id' => :'String',
205
- :'name' => :'String',
206
- :'target' => :'String',
207
- :'runner_id' => :'String',
208
- :'sandbox_class' => :'SandboxClass',
209
- :'state' => :'SandboxState',
210
- :'desired_state' => :'SandboxDesiredState',
211
197
  :'snapshot' => :'String',
212
198
  :'user' => :'String',
213
- :'error_reason' => :'String',
214
- :'recoverable' => :'Boolean',
199
+ :'env' => :'Hash<String, String>',
200
+ :'labels' => :'Hash<String, String>',
215
201
  :'public' => :'Boolean',
216
202
  :'network_block_all' => :'Boolean',
217
203
  :'network_allow_list' => :'String',
218
- :'domain_allow_list' => :'String',
204
+ :'target' => :'String',
219
205
  :'cpu' => :'Float',
220
206
  :'gpu' => :'Float',
221
- :'spot' => :'Boolean',
222
- :'spot_evicted_at' => :'String',
223
- :'gpu_type' => :'GpuType',
224
207
  :'memory' => :'Float',
225
208
  :'disk' => :'Float',
226
- :'labels' => :'Hash<String, String>',
209
+ :'state' => :'SandboxState',
210
+ :'desired_state' => :'SandboxDesiredState',
211
+ :'error_reason' => :'String',
227
212
  :'backup_state' => :'String',
213
+ :'backup_created_at' => :'String',
228
214
  :'auto_stop_interval' => :'Float',
229
- :'auto_pause_interval' => :'Float',
230
215
  :'auto_archive_interval' => :'Float',
231
216
  :'auto_delete_interval' => :'Float',
232
- :'auto_destroy_at' => :'String',
217
+ :'runner_domain' => :'String',
218
+ :'volumes' => :'Array<SandboxVolume>',
219
+ :'build_info' => :'BuildInfo',
233
220
  :'created_at' => :'String',
234
221
  :'updated_at' => :'String',
235
- :'last_activity_at' => :'String',
222
+ :'_class' => :'String',
236
223
  :'daemon_version' => :'String',
237
- :'warm_pool_id' => :'String',
238
- :'toolbox_proxy_url' => :'String'
224
+ :'name' => :'String',
225
+ :'image' => :'String',
226
+ :'snapshot_state' => :'String',
227
+ :'snapshot_created_at' => :'String',
228
+ :'info' => :'SandboxInfo'
239
229
  }
240
230
  end
241
231
 
@@ -249,14 +239,14 @@ module DaytonaApiClient
249
239
  # @param [Hash] attributes Model attributes in the form of hash
250
240
  def initialize(attributes = {})
251
241
  if (!attributes.is_a?(Hash))
252
- fail ArgumentError, "The input argument (attributes) must be a hash in `DaytonaApiClient::SandboxListItem` initialize method"
242
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DaytonaApiClient::Workspace` initialize method"
253
243
  end
254
244
 
255
245
  # check to see if the attribute exists and convert string to symbol for hash key
256
246
  acceptable_attribute_map = self.class.acceptable_attribute_map
257
247
  attributes = attributes.each_with_object({}) { |(k, v), h|
258
248
  if (!acceptable_attribute_map.key?(k.to_sym))
259
- fail ArgumentError, "`#{k}` is not a valid attribute in `DaytonaApiClient::SandboxListItem`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
249
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DaytonaApiClient::Workspace`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
260
250
  end
261
251
  h[k.to_sym] = v
262
252
  }
@@ -273,34 +263,6 @@ module DaytonaApiClient
273
263
  self.organization_id = nil
274
264
  end
275
265
 
276
- if attributes.key?(:'name')
277
- self.name = attributes[:'name']
278
- else
279
- self.name = nil
280
- end
281
-
282
- if attributes.key?(:'target')
283
- self.target = attributes[:'target']
284
- else
285
- self.target = nil
286
- end
287
-
288
- if attributes.key?(:'runner_id')
289
- self.runner_id = attributes[:'runner_id']
290
- end
291
-
292
- if attributes.key?(:'sandbox_class')
293
- self.sandbox_class = attributes[:'sandbox_class']
294
- end
295
-
296
- if attributes.key?(:'state')
297
- self.state = attributes[:'state']
298
- end
299
-
300
- if attributes.key?(:'desired_state')
301
- self.desired_state = attributes[:'desired_state']
302
- end
303
-
304
266
  if attributes.key?(:'snapshot')
305
267
  self.snapshot = attributes[:'snapshot']
306
268
  end
@@ -311,12 +273,20 @@ module DaytonaApiClient
311
273
  self.user = nil
312
274
  end
313
275
 
314
- if attributes.key?(:'error_reason')
315
- self.error_reason = attributes[:'error_reason']
276
+ if attributes.key?(:'env')
277
+ if (value = attributes[:'env']).is_a?(Hash)
278
+ self.env = value
279
+ end
280
+ else
281
+ self.env = nil
316
282
  end
317
283
 
318
- if attributes.key?(:'recoverable')
319
- self.recoverable = attributes[:'recoverable']
284
+ if attributes.key?(:'labels')
285
+ if (value = attributes[:'labels']).is_a?(Hash)
286
+ self.labels = value
287
+ end
288
+ else
289
+ self.labels = nil
320
290
  end
321
291
 
322
292
  if attributes.key?(:'public')
@@ -335,8 +305,10 @@ module DaytonaApiClient
335
305
  self.network_allow_list = attributes[:'network_allow_list']
336
306
  end
337
307
 
338
- if attributes.key?(:'domain_allow_list')
339
- self.domain_allow_list = attributes[:'domain_allow_list']
308
+ if attributes.key?(:'target')
309
+ self.target = attributes[:'target']
310
+ else
311
+ self.target = nil
340
312
  end
341
313
 
342
314
  if attributes.key?(:'cpu')
@@ -351,20 +323,6 @@ module DaytonaApiClient
351
323
  self.gpu = nil
352
324
  end
353
325
 
354
- if attributes.key?(:'spot')
355
- self.spot = attributes[:'spot']
356
- else
357
- self.spot = false
358
- end
359
-
360
- if attributes.key?(:'spot_evicted_at')
361
- self.spot_evicted_at = attributes[:'spot_evicted_at']
362
- end
363
-
364
- if attributes.key?(:'gpu_type')
365
- self.gpu_type = attributes[:'gpu_type']
366
- end
367
-
368
326
  if attributes.key?(:'memory')
369
327
  self.memory = attributes[:'memory']
370
328
  else
@@ -377,24 +335,28 @@ module DaytonaApiClient
377
335
  self.disk = nil
378
336
  end
379
337
 
380
- if attributes.key?(:'labels')
381
- if (value = attributes[:'labels']).is_a?(Hash)
382
- self.labels = value
383
- end
384
- else
385
- self.labels = nil
338
+ if attributes.key?(:'state')
339
+ self.state = attributes[:'state']
340
+ end
341
+
342
+ if attributes.key?(:'desired_state')
343
+ self.desired_state = attributes[:'desired_state']
344
+ end
345
+
346
+ if attributes.key?(:'error_reason')
347
+ self.error_reason = attributes[:'error_reason']
386
348
  end
387
349
 
388
350
  if attributes.key?(:'backup_state')
389
351
  self.backup_state = attributes[:'backup_state']
390
352
  end
391
353
 
392
- if attributes.key?(:'auto_stop_interval')
393
- self.auto_stop_interval = attributes[:'auto_stop_interval']
354
+ if attributes.key?(:'backup_created_at')
355
+ self.backup_created_at = attributes[:'backup_created_at']
394
356
  end
395
357
 
396
- if attributes.key?(:'auto_pause_interval')
397
- self.auto_pause_interval = attributes[:'auto_pause_interval']
358
+ if attributes.key?(:'auto_stop_interval')
359
+ self.auto_stop_interval = attributes[:'auto_stop_interval']
398
360
  end
399
361
 
400
362
  if attributes.key?(:'auto_archive_interval')
@@ -405,8 +367,18 @@ module DaytonaApiClient
405
367
  self.auto_delete_interval = attributes[:'auto_delete_interval']
406
368
  end
407
369
 
408
- if attributes.key?(:'auto_destroy_at')
409
- self.auto_destroy_at = attributes[:'auto_destroy_at']
370
+ if attributes.key?(:'runner_domain')
371
+ self.runner_domain = attributes[:'runner_domain']
372
+ end
373
+
374
+ if attributes.key?(:'volumes')
375
+ if (value = attributes[:'volumes']).is_a?(Array)
376
+ self.volumes = value
377
+ end
378
+ end
379
+
380
+ if attributes.key?(:'build_info')
381
+ self.build_info = attributes[:'build_info']
410
382
  end
411
383
 
412
384
  if attributes.key?(:'created_at')
@@ -417,22 +389,34 @@ module DaytonaApiClient
417
389
  self.updated_at = attributes[:'updated_at']
418
390
  end
419
391
 
420
- if attributes.key?(:'last_activity_at')
421
- self.last_activity_at = attributes[:'last_activity_at']
392
+ if attributes.key?(:'_class')
393
+ self._class = attributes[:'_class']
422
394
  end
423
395
 
424
396
  if attributes.key?(:'daemon_version')
425
397
  self.daemon_version = attributes[:'daemon_version']
426
398
  end
427
399
 
428
- if attributes.key?(:'warm_pool_id')
429
- self.warm_pool_id = attributes[:'warm_pool_id']
400
+ if attributes.key?(:'name')
401
+ self.name = attributes[:'name']
402
+ else
403
+ self.name = ''
404
+ end
405
+
406
+ if attributes.key?(:'image')
407
+ self.image = attributes[:'image']
430
408
  end
431
409
 
432
- if attributes.key?(:'toolbox_proxy_url')
433
- self.toolbox_proxy_url = attributes[:'toolbox_proxy_url']
434
- else
435
- self.toolbox_proxy_url = nil
410
+ if attributes.key?(:'snapshot_state')
411
+ self.snapshot_state = attributes[:'snapshot_state']
412
+ end
413
+
414
+ if attributes.key?(:'snapshot_created_at')
415
+ self.snapshot_created_at = attributes[:'snapshot_created_at']
416
+ end
417
+
418
+ if attributes.key?(:'info')
419
+ self.info = attributes[:'info']
436
420
  end
437
421
  end
438
422
 
@@ -449,16 +433,16 @@ module DaytonaApiClient
449
433
  invalid_properties.push('invalid value for "organization_id", organization_id cannot be nil.')
450
434
  end
451
435
 
452
- if @name.nil?
453
- invalid_properties.push('invalid value for "name", name cannot be nil.')
436
+ if @user.nil?
437
+ invalid_properties.push('invalid value for "user", user cannot be nil.')
454
438
  end
455
439
 
456
- if @target.nil?
457
- invalid_properties.push('invalid value for "target", target cannot be nil.')
440
+ if @env.nil?
441
+ invalid_properties.push('invalid value for "env", env cannot be nil.')
458
442
  end
459
443
 
460
- if @user.nil?
461
- invalid_properties.push('invalid value for "user", user cannot be nil.')
444
+ if @labels.nil?
445
+ invalid_properties.push('invalid value for "labels", labels cannot be nil.')
462
446
  end
463
447
 
464
448
  if @public.nil?
@@ -469,6 +453,10 @@ module DaytonaApiClient
469
453
  invalid_properties.push('invalid value for "network_block_all", network_block_all cannot be nil.')
470
454
  end
471
455
 
456
+ if @target.nil?
457
+ invalid_properties.push('invalid value for "target", target cannot be nil.')
458
+ end
459
+
472
460
  if @cpu.nil?
473
461
  invalid_properties.push('invalid value for "cpu", cpu cannot be nil.')
474
462
  end
@@ -485,12 +473,8 @@ module DaytonaApiClient
485
473
  invalid_properties.push('invalid value for "disk", disk cannot be nil.')
486
474
  end
487
475
 
488
- if @labels.nil?
489
- invalid_properties.push('invalid value for "labels", labels cannot be nil.')
490
- end
491
-
492
- if @toolbox_proxy_url.nil?
493
- invalid_properties.push('invalid value for "toolbox_proxy_url", toolbox_proxy_url cannot be nil.')
476
+ if @name.nil?
477
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
494
478
  end
495
479
 
496
480
  invalid_properties
@@ -502,19 +486,23 @@ module DaytonaApiClient
502
486
  warn '[DEPRECATED] the `valid?` method is obsolete'
503
487
  return false if @id.nil?
504
488
  return false if @organization_id.nil?
505
- return false if @name.nil?
506
- return false if @target.nil?
507
489
  return false if @user.nil?
490
+ return false if @env.nil?
491
+ return false if @labels.nil?
508
492
  return false if @public.nil?
509
493
  return false if @network_block_all.nil?
494
+ return false if @target.nil?
510
495
  return false if @cpu.nil?
511
496
  return false if @gpu.nil?
512
497
  return false if @memory.nil?
513
498
  return false if @disk.nil?
514
- return false if @labels.nil?
515
- backup_state_validator = EnumAttributeValidator.new('String', ["None", "Pending", "InProgress", "Completed", "Error", "unknown_default_open_api"])
499
+ backup_state_validator = EnumAttributeValidator.new('String', ["None", "Pending", "InProgress", "Completed", "Error"])
516
500
  return false unless backup_state_validator.valid?(@backup_state)
517
- return false if @toolbox_proxy_url.nil?
501
+ _class_validator = EnumAttributeValidator.new('String', ["small", "medium", "large"])
502
+ return false unless _class_validator.valid?(@_class)
503
+ return false if @name.nil?
504
+ snapshot_state_validator = EnumAttributeValidator.new('String', ["None", "Pending", "InProgress", "Completed", "Error"])
505
+ return false unless snapshot_state_validator.valid?(@snapshot_state)
518
506
  true
519
507
  end
520
508
 
@@ -539,33 +527,33 @@ module DaytonaApiClient
539
527
  end
540
528
 
541
529
  # Custom attribute writer method with validation
542
- # @param [Object] name Value to be assigned
543
- def name=(name)
544
- if name.nil?
545
- fail ArgumentError, 'name cannot be nil'
530
+ # @param [Object] user Value to be assigned
531
+ def user=(user)
532
+ if user.nil?
533
+ fail ArgumentError, 'user cannot be nil'
546
534
  end
547
535
 
548
- @name = name
536
+ @user = user
549
537
  end
550
538
 
551
539
  # Custom attribute writer method with validation
552
- # @param [Object] target Value to be assigned
553
- def target=(target)
554
- if target.nil?
555
- fail ArgumentError, 'target cannot be nil'
540
+ # @param [Object] env Value to be assigned
541
+ def env=(env)
542
+ if env.nil?
543
+ fail ArgumentError, 'env cannot be nil'
556
544
  end
557
545
 
558
- @target = target
546
+ @env = env
559
547
  end
560
548
 
561
549
  # Custom attribute writer method with validation
562
- # @param [Object] user Value to be assigned
563
- def user=(user)
564
- if user.nil?
565
- fail ArgumentError, 'user cannot be nil'
550
+ # @param [Object] labels Value to be assigned
551
+ def labels=(labels)
552
+ if labels.nil?
553
+ fail ArgumentError, 'labels cannot be nil'
566
554
  end
567
555
 
568
- @user = user
556
+ @labels = labels
569
557
  end
570
558
 
571
559
  # Custom attribute writer method with validation
@@ -588,6 +576,16 @@ module DaytonaApiClient
588
576
  @network_block_all = network_block_all
589
577
  end
590
578
 
579
+ # Custom attribute writer method with validation
580
+ # @param [Object] target Value to be assigned
581
+ def target=(target)
582
+ if target.nil?
583
+ fail ArgumentError, 'target cannot be nil'
584
+ end
585
+
586
+ @target = target
587
+ end
588
+
591
589
  # Custom attribute writer method with validation
592
590
  # @param [Object] cpu Value to be assigned
593
591
  def cpu=(cpu)
@@ -628,34 +626,44 @@ module DaytonaApiClient
628
626
  @disk = disk
629
627
  end
630
628
 
631
- # Custom attribute writer method with validation
632
- # @param [Object] labels Value to be assigned
633
- def labels=(labels)
634
- if labels.nil?
635
- fail ArgumentError, 'labels cannot be nil'
636
- end
637
-
638
- @labels = labels
639
- end
640
-
641
629
  # Custom attribute writer method checking allowed values (enum).
642
630
  # @param [Object] backup_state Object to be assigned
643
631
  def backup_state=(backup_state)
644
- validator = EnumAttributeValidator.new('String', ["None", "Pending", "InProgress", "Completed", "Error", "unknown_default_open_api"])
632
+ validator = EnumAttributeValidator.new('String', ["None", "Pending", "InProgress", "Completed", "Error"])
645
633
  unless validator.valid?(backup_state)
646
634
  fail ArgumentError, "invalid value for \"backup_state\", must be one of #{validator.allowable_values}."
647
635
  end
648
636
  @backup_state = backup_state
649
637
  end
650
638
 
639
+ # Custom attribute writer method checking allowed values (enum).
640
+ # @param [Object] _class Object to be assigned
641
+ def _class=(_class)
642
+ validator = EnumAttributeValidator.new('String', ["small", "medium", "large"])
643
+ unless validator.valid?(_class)
644
+ fail ArgumentError, "invalid value for \"_class\", must be one of #{validator.allowable_values}."
645
+ end
646
+ @_class = _class
647
+ end
648
+
651
649
  # Custom attribute writer method with validation
652
- # @param [Object] toolbox_proxy_url Value to be assigned
653
- def toolbox_proxy_url=(toolbox_proxy_url)
654
- if toolbox_proxy_url.nil?
655
- fail ArgumentError, 'toolbox_proxy_url cannot be nil'
650
+ # @param [Object] name Value to be assigned
651
+ def name=(name)
652
+ if name.nil?
653
+ fail ArgumentError, 'name cannot be nil'
656
654
  end
657
655
 
658
- @toolbox_proxy_url = toolbox_proxy_url
656
+ @name = name
657
+ end
658
+
659
+ # Custom attribute writer method checking allowed values (enum).
660
+ # @param [Object] snapshot_state Object to be assigned
661
+ def snapshot_state=(snapshot_state)
662
+ validator = EnumAttributeValidator.new('String', ["None", "Pending", "InProgress", "Completed", "Error"])
663
+ unless validator.valid?(snapshot_state)
664
+ fail ArgumentError, "invalid value for \"snapshot_state\", must be one of #{validator.allowable_values}."
665
+ end
666
+ @snapshot_state = snapshot_state
659
667
  end
660
668
 
661
669
  # Checks equality by comparing each attribute.
@@ -665,40 +673,38 @@ module DaytonaApiClient
665
673
  self.class == o.class &&
666
674
  id == o.id &&
667
675
  organization_id == o.organization_id &&
668
- name == o.name &&
669
- target == o.target &&
670
- runner_id == o.runner_id &&
671
- sandbox_class == o.sandbox_class &&
672
- state == o.state &&
673
- desired_state == o.desired_state &&
674
676
  snapshot == o.snapshot &&
675
677
  user == o.user &&
676
- error_reason == o.error_reason &&
677
- recoverable == o.recoverable &&
678
+ env == o.env &&
679
+ labels == o.labels &&
678
680
  public == o.public &&
679
681
  network_block_all == o.network_block_all &&
680
682
  network_allow_list == o.network_allow_list &&
681
- domain_allow_list == o.domain_allow_list &&
683
+ target == o.target &&
682
684
  cpu == o.cpu &&
683
685
  gpu == o.gpu &&
684
- spot == o.spot &&
685
- spot_evicted_at == o.spot_evicted_at &&
686
- gpu_type == o.gpu_type &&
687
686
  memory == o.memory &&
688
687
  disk == o.disk &&
689
- labels == o.labels &&
688
+ state == o.state &&
689
+ desired_state == o.desired_state &&
690
+ error_reason == o.error_reason &&
690
691
  backup_state == o.backup_state &&
692
+ backup_created_at == o.backup_created_at &&
691
693
  auto_stop_interval == o.auto_stop_interval &&
692
- auto_pause_interval == o.auto_pause_interval &&
693
694
  auto_archive_interval == o.auto_archive_interval &&
694
695
  auto_delete_interval == o.auto_delete_interval &&
695
- auto_destroy_at == o.auto_destroy_at &&
696
+ runner_domain == o.runner_domain &&
697
+ volumes == o.volumes &&
698
+ build_info == o.build_info &&
696
699
  created_at == o.created_at &&
697
700
  updated_at == o.updated_at &&
698
- last_activity_at == o.last_activity_at &&
701
+ _class == o._class &&
699
702
  daemon_version == o.daemon_version &&
700
- warm_pool_id == o.warm_pool_id &&
701
- toolbox_proxy_url == o.toolbox_proxy_url
703
+ name == o.name &&
704
+ image == o.image &&
705
+ snapshot_state == o.snapshot_state &&
706
+ snapshot_created_at == o.snapshot_created_at &&
707
+ info == o.info
702
708
  end
703
709
 
704
710
  # @see the `==` method
@@ -710,7 +716,7 @@ module DaytonaApiClient
710
716
  # Calculates hash code according to all attributes.
711
717
  # @return [Integer] Hash code
712
718
  def hash
713
- [id, organization_id, name, target, runner_id, sandbox_class, state, desired_state, snapshot, user, error_reason, recoverable, public, network_block_all, network_allow_list, domain_allow_list, cpu, gpu, spot, spot_evicted_at, gpu_type, memory, disk, labels, backup_state, auto_stop_interval, auto_pause_interval, auto_archive_interval, auto_delete_interval, auto_destroy_at, created_at, updated_at, last_activity_at, daemon_version, warm_pool_id, toolbox_proxy_url].hash
719
+ [id, organization_id, snapshot, user, env, labels, public, network_block_all, network_allow_list, target, cpu, gpu, memory, disk, state, desired_state, error_reason, backup_state, backup_created_at, auto_stop_interval, auto_archive_interval, auto_delete_interval, runner_domain, volumes, build_info, created_at, updated_at, _class, daemon_version, name, image, snapshot_state, snapshot_created_at, info].hash
714
720
  end
715
721
 
716
722
  # Builds the object from hash
@@ -736,6 +742,61 @@ module DaytonaApiClient
736
742
  new(transformed_hash)
737
743
  end
738
744
 
745
+ # Deserializes the data based on type
746
+ # @param string type Data type
747
+ # @param string value Value to be deserialized
748
+ # @return [Object] Deserialized data
749
+ def self._deserialize(type, value)
750
+ case type.to_sym
751
+ when :Time
752
+ Time.parse(value)
753
+ when :Date
754
+ Date.parse(value)
755
+ when :String
756
+ value.to_s
757
+ when :Integer
758
+ value.to_i
759
+ when :Float
760
+ value.to_f
761
+ when :Boolean
762
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
763
+ true
764
+ else
765
+ false
766
+ end
767
+ when :Object
768
+ # generic object (usually a Hash), return directly
769
+ value
770
+ when /\AArray<(?<inner_type>.+)>\z/
771
+ inner_type = Regexp.last_match[:inner_type]
772
+ value.map { |v| _deserialize(inner_type, v) }
773
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
774
+ k_type = Regexp.last_match[:k_type]
775
+ v_type = Regexp.last_match[:v_type]
776
+ {}.tap do |hash|
777
+ value.each do |k, v|
778
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
779
+ end
780
+ end
781
+ else # model
782
+ # models (e.g. Pet) or oneOf
783
+ klass = DaytonaApiClient.const_get(type)
784
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
785
+ end
786
+ end
787
+
788
+ # Returns the string representation of the object
789
+ # @return [String] String presentation of the object
790
+ def to_s
791
+ to_hash.to_s
792
+ end
793
+
794
+ # to_body is an alias to to_hash (backward compatibility)
795
+ # @return [Hash] Returns the object in the form of hash
796
+ def to_body
797
+ to_hash
798
+ end
799
+
739
800
  # Returns the object in the form of hash
740
801
  # @return [Hash] Returns the object in the form of hash
741
802
  def to_hash
@@ -752,6 +813,22 @@ module DaytonaApiClient
752
813
  hash
753
814
  end
754
815
 
816
+ # Outputs non-array value in the form of hash
817
+ # For object, use to_hash. Otherwise, just return the value
818
+ # @param [Object] value Any valid value
819
+ # @return [Hash] Returns the value in the form of hash
820
+ def _to_hash(value)
821
+ if value.is_a?(Array)
822
+ value.compact.map { |v| _to_hash(v) }
823
+ elsif value.is_a?(Hash)
824
+ {}.tap do |hash|
825
+ value.each { |k, v| hash[k] = _to_hash(v) }
826
+ end
827
+ elsif value.respond_to? :to_hash
828
+ value.to_hash
829
+ else
830
+ value
831
+ end
832
+ end
755
833
  end
756
-
757
834
  end