nightona_api_client 0.191.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 (219) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +39 -0
  3. data/.openapi-generator/FILES +212 -0
  4. data/.openapi-generator/VERSION +1 -0
  5. data/.openapi-generator-ignore +31 -0
  6. data/.rspec +2 -0
  7. data/.rubocop.yml +148 -0
  8. data/Rakefile +10 -0
  9. data/fix-gemspec.sh +11 -0
  10. data/lib/nightona_api_client/api/admin_api.rb +1449 -0
  11. data/lib/nightona_api_client/api/api_keys_api.rb +401 -0
  12. data/lib/nightona_api_client/api/audit_api.rb +110 -0
  13. data/lib/nightona_api_client/api/config_api.rb +77 -0
  14. data/lib/nightona_api_client/api/docker_registry_api.rb +411 -0
  15. data/lib/nightona_api_client/api/health_api.rb +126 -0
  16. data/lib/nightona_api_client/api/jobs_api.rb +299 -0
  17. data/lib/nightona_api_client/api/object_storage_api.rb +80 -0
  18. data/lib/nightona_api_client/api/organizations_api.rb +2615 -0
  19. data/lib/nightona_api_client/api/preview_api.rb +278 -0
  20. data/lib/nightona_api_client/api/regions_api.rb +77 -0
  21. data/lib/nightona_api_client/api/runners_api.rb +711 -0
  22. data/lib/nightona_api_client/api/sandbox_api.rb +3064 -0
  23. data/lib/nightona_api_client/api/snapshots_api.rb +567 -0
  24. data/lib/nightona_api_client/api/toolbox_api.rb +5108 -0
  25. data/lib/nightona_api_client/api/users_api.rb +316 -0
  26. data/lib/nightona_api_client/api/volumes_api.rb +342 -0
  27. data/lib/nightona_api_client/api/webhooks_api.rb +276 -0
  28. data/lib/nightona_api_client/api_client.rb +397 -0
  29. data/lib/nightona_api_client/api_error.rb +58 -0
  30. data/lib/nightona_api_client/api_model_base.rb +88 -0
  31. data/lib/nightona_api_client/configuration.rb +309 -0
  32. data/lib/nightona_api_client/models/account_provider.rb +190 -0
  33. data/lib/nightona_api_client/models/admin_create_runner.rb +326 -0
  34. data/lib/nightona_api_client/models/admin_get_webhook_status200_response.rb +147 -0
  35. data/lib/nightona_api_client/models/announcement.rb +175 -0
  36. data/lib/nightona_api_client/models/api_key_list.rb +313 -0
  37. data/lib/nightona_api_client/models/api_key_response.rb +273 -0
  38. data/lib/nightona_api_client/models/audit_log.rb +369 -0
  39. data/lib/nightona_api_client/models/build_info.rb +241 -0
  40. data/lib/nightona_api_client/models/command.rb +202 -0
  41. data/lib/nightona_api_client/models/completion_context.rb +173 -0
  42. data/lib/nightona_api_client/models/completion_item.rb +218 -0
  43. data/lib/nightona_api_client/models/completion_list.rb +192 -0
  44. data/lib/nightona_api_client/models/compressed_screenshot_response.rb +185 -0
  45. data/lib/nightona_api_client/models/computer_use_start_response.rb +192 -0
  46. data/lib/nightona_api_client/models/computer_use_status_response.rb +189 -0
  47. data/lib/nightona_api_client/models/computer_use_stop_response.rb +192 -0
  48. data/lib/nightona_api_client/models/create_api_key.rb +217 -0
  49. data/lib/nightona_api_client/models/create_build_info.rb +177 -0
  50. data/lib/nightona_api_client/models/create_docker_registry.rb +256 -0
  51. data/lib/nightona_api_client/models/create_linked_account.rb +192 -0
  52. data/lib/nightona_api_client/models/create_organization.rb +192 -0
  53. data/lib/nightona_api_client/models/create_organization_invitation.rb +255 -0
  54. data/lib/nightona_api_client/models/create_organization_quota.rb +219 -0
  55. data/lib/nightona_api_client/models/create_organization_region_quota.rb +372 -0
  56. data/lib/nightona_api_client/models/create_organization_role.rb +233 -0
  57. data/lib/nightona_api_client/models/create_region.rb +198 -0
  58. data/lib/nightona_api_client/models/create_region_response.rb +209 -0
  59. data/lib/nightona_api_client/models/create_runner.rb +202 -0
  60. data/lib/nightona_api_client/models/create_runner_response.rb +192 -0
  61. data/lib/nightona_api_client/models/create_sandbox.rb +356 -0
  62. data/lib/nightona_api_client/models/create_sandbox_snapshot.rb +177 -0
  63. data/lib/nightona_api_client/models/create_session_request.rb +165 -0
  64. data/lib/nightona_api_client/models/create_snapshot.rb +291 -0
  65. data/lib/nightona_api_client/models/create_user.rb +269 -0
  66. data/lib/nightona_api_client/models/create_volume.rb +164 -0
  67. data/lib/nightona_api_client/models/display_info_response.rb +167 -0
  68. data/lib/nightona_api_client/models/docker_registry.rb +378 -0
  69. data/lib/nightona_api_client/models/download_files.rb +167 -0
  70. data/lib/nightona_api_client/models/execute_request.rb +184 -0
  71. data/lib/nightona_api_client/models/execute_response.rb +192 -0
  72. data/lib/nightona_api_client/models/file_info.rb +346 -0
  73. data/lib/nightona_api_client/models/file_status.rb +242 -0
  74. data/lib/nightona_api_client/models/fork_sandbox.rb +148 -0
  75. data/lib/nightona_api_client/models/git_add_request.rb +193 -0
  76. data/lib/nightona_api_client/models/git_branch_request.rb +190 -0
  77. data/lib/nightona_api_client/models/git_checkout_request.rb +190 -0
  78. data/lib/nightona_api_client/models/git_clone_request.rb +226 -0
  79. data/lib/nightona_api_client/models/git_commit_info.rb +268 -0
  80. data/lib/nightona_api_client/models/git_commit_request.rb +254 -0
  81. data/lib/nightona_api_client/models/git_commit_response.rb +164 -0
  82. data/lib/nightona_api_client/models/git_delete_branch_request.rb +190 -0
  83. data/lib/nightona_api_client/models/git_repo_request.rb +182 -0
  84. data/lib/nightona_api_client/models/git_status.rb +219 -0
  85. data/lib/nightona_api_client/models/gpu_type.rb +41 -0
  86. data/lib/nightona_api_client/models/health_controller_check200_response.rb +182 -0
  87. data/lib/nightona_api_client/models/health_controller_check200_response_info_value.rb +164 -0
  88. data/lib/nightona_api_client/models/health_controller_check503_response.rb +182 -0
  89. data/lib/nightona_api_client/models/job.rb +366 -0
  90. data/lib/nightona_api_client/models/job_status.rb +43 -0
  91. data/lib/nightona_api_client/models/job_type.rb +54 -0
  92. data/lib/nightona_api_client/models/keyboard_hotkey_request.rb +165 -0
  93. data/lib/nightona_api_client/models/keyboard_press_request.rb +177 -0
  94. data/lib/nightona_api_client/models/keyboard_type_request.rb +175 -0
  95. data/lib/nightona_api_client/models/list_branch_response.rb +166 -0
  96. data/lib/nightona_api_client/models/list_sandboxes_response.rb +180 -0
  97. data/lib/nightona_api_client/models/log_entry.rb +334 -0
  98. data/lib/nightona_api_client/models/lsp_completion_params.rb +254 -0
  99. data/lib/nightona_api_client/models/lsp_document_request.rb +219 -0
  100. data/lib/nightona_api_client/models/lsp_location.rb +190 -0
  101. data/lib/nightona_api_client/models/lsp_server_request.rb +192 -0
  102. data/lib/nightona_api_client/models/lsp_symbol.rb +216 -0
  103. data/lib/nightona_api_client/models/match.rb +216 -0
  104. data/lib/nightona_api_client/models/metric_data_point.rb +192 -0
  105. data/lib/nightona_api_client/models/metric_series.rb +194 -0
  106. data/lib/nightona_api_client/models/metrics_response.rb +167 -0
  107. data/lib/nightona_api_client/models/mouse_click_request.rb +212 -0
  108. data/lib/nightona_api_client/models/mouse_click_response.rb +192 -0
  109. data/lib/nightona_api_client/models/mouse_drag_request.rb +256 -0
  110. data/lib/nightona_api_client/models/mouse_drag_response.rb +192 -0
  111. data/lib/nightona_api_client/models/mouse_move_request.rb +192 -0
  112. data/lib/nightona_api_client/models/mouse_move_response.rb +192 -0
  113. data/lib/nightona_api_client/models/mouse_position.rb +192 -0
  114. data/lib/nightona_api_client/models/mouse_scroll_request.rb +229 -0
  115. data/lib/nightona_api_client/models/mouse_scroll_response.rb +165 -0
  116. data/lib/nightona_api_client/models/nightona_configuration.rb +507 -0
  117. data/lib/nightona_api_client/models/oidc_config.rb +219 -0
  118. data/lib/nightona_api_client/models/organization.rb +698 -0
  119. data/lib/nightona_api_client/models/organization_invitation.rb +463 -0
  120. data/lib/nightona_api_client/models/organization_role.rb +341 -0
  121. data/lib/nightona_api_client/models/organization_sandbox_default_limited_network_egress.rb +165 -0
  122. data/lib/nightona_api_client/models/organization_suspension.rb +221 -0
  123. data/lib/nightona_api_client/models/organization_usage_overview.rb +270 -0
  124. data/lib/nightona_api_client/models/organization_user.rb +380 -0
  125. data/lib/nightona_api_client/models/otel_config.rb +178 -0
  126. data/lib/nightona_api_client/models/paginated_audit_logs.rb +254 -0
  127. data/lib/nightona_api_client/models/paginated_jobs.rb +244 -0
  128. data/lib/nightona_api_client/models/paginated_logs.rb +248 -0
  129. data/lib/nightona_api_client/models/paginated_sandboxes_deprecated.rb +244 -0
  130. data/lib/nightona_api_client/models/paginated_snapshots.rb +244 -0
  131. data/lib/nightona_api_client/models/paginated_traces.rb +248 -0
  132. data/lib/nightona_api_client/models/poll_jobs_response.rb +167 -0
  133. data/lib/nightona_api_client/models/port_preview_url.rb +219 -0
  134. data/lib/nightona_api_client/models/position.rb +190 -0
  135. data/lib/nightona_api_client/models/posthog_config.rb +192 -0
  136. data/lib/nightona_api_client/models/process_errors_response.rb +192 -0
  137. data/lib/nightona_api_client/models/process_logs_response.rb +192 -0
  138. data/lib/nightona_api_client/models/process_restart_response.rb +192 -0
  139. data/lib/nightona_api_client/models/process_status_response.rb +192 -0
  140. data/lib/nightona_api_client/models/project_dir_response.rb +147 -0
  141. data/lib/nightona_api_client/models/pty_create_request.rb +217 -0
  142. data/lib/nightona_api_client/models/pty_create_response.rb +165 -0
  143. data/lib/nightona_api_client/models/pty_list_response.rb +167 -0
  144. data/lib/nightona_api_client/models/pty_resize_request.rb +192 -0
  145. data/lib/nightona_api_client/models/pty_session_info.rb +354 -0
  146. data/lib/nightona_api_client/models/range.rb +190 -0
  147. data/lib/nightona_api_client/models/rate_limit_config.rb +178 -0
  148. data/lib/nightona_api_client/models/rate_limit_entry.rb +158 -0
  149. data/lib/nightona_api_client/models/regenerate_api_key_response.rb +165 -0
  150. data/lib/nightona_api_client/models/region.rb +339 -0
  151. data/lib/nightona_api_client/models/region_quota.rb +437 -0
  152. data/lib/nightona_api_client/models/region_screenshot_response.rb +185 -0
  153. data/lib/nightona_api_client/models/region_type.rb +42 -0
  154. data/lib/nightona_api_client/models/region_usage_overview.rb +515 -0
  155. data/lib/nightona_api_client/models/registry_push_access_dto.rb +300 -0
  156. data/lib/nightona_api_client/models/replace_request.rb +218 -0
  157. data/lib/nightona_api_client/models/replace_result.rb +165 -0
  158. data/lib/nightona_api_client/models/resize_sandbox.rb +225 -0
  159. data/lib/nightona_api_client/models/runner.rb +710 -0
  160. data/lib/nightona_api_client/models/runner_class.rb +40 -0
  161. data/lib/nightona_api_client/models/runner_full.rb +747 -0
  162. data/lib/nightona_api_client/models/runner_health_metrics.rb +482 -0
  163. data/lib/nightona_api_client/models/runner_healthcheck.rb +217 -0
  164. data/lib/nightona_api_client/models/runner_service_health.rb +202 -0
  165. data/lib/nightona_api_client/models/runner_snapshot_dto.rb +202 -0
  166. data/lib/nightona_api_client/models/runner_state.rb +44 -0
  167. data/lib/nightona_api_client/models/sandbox.rb +788 -0
  168. data/lib/nightona_api_client/models/sandbox_class.rb +43 -0
  169. data/lib/nightona_api_client/models/sandbox_desired_state.rb +45 -0
  170. data/lib/nightona_api_client/models/sandbox_labels.rb +167 -0
  171. data/lib/nightona_api_client/models/sandbox_list_item.rb +658 -0
  172. data/lib/nightona_api_client/models/sandbox_list_sort_direction.rb +41 -0
  173. data/lib/nightona_api_client/models/sandbox_list_sort_field.rb +45 -0
  174. data/lib/nightona_api_client/models/sandbox_state.rb +61 -0
  175. data/lib/nightona_api_client/models/sandbox_volume.rb +202 -0
  176. data/lib/nightona_api_client/models/screenshot_response.rb +185 -0
  177. data/lib/nightona_api_client/models/search_files_response.rb +166 -0
  178. data/lib/nightona_api_client/models/send_webhook_dto.rb +224 -0
  179. data/lib/nightona_api_client/models/session.rb +180 -0
  180. data/lib/nightona_api_client/models/session_execute_request.rb +185 -0
  181. data/lib/nightona_api_client/models/session_execute_response.rb +168 -0
  182. data/lib/nightona_api_client/models/set_snapshot_general_status_dto.rb +165 -0
  183. data/lib/nightona_api_client/models/signed_port_preview_url.rb +246 -0
  184. data/lib/nightona_api_client/models/snapshot_dto.rb +562 -0
  185. data/lib/nightona_api_client/models/snapshot_manager_credentials.rb +192 -0
  186. data/lib/nightona_api_client/models/snapshot_state.rb +47 -0
  187. data/lib/nightona_api_client/models/ssh_access_dto.rb +327 -0
  188. data/lib/nightona_api_client/models/ssh_access_validation_dto.rb +192 -0
  189. data/lib/nightona_api_client/models/storage_access_dto.rb +300 -0
  190. data/lib/nightona_api_client/models/toolbox_proxy_url.rb +165 -0
  191. data/lib/nightona_api_client/models/trace_span.rb +332 -0
  192. data/lib/nightona_api_client/models/trace_summary.rb +310 -0
  193. data/lib/nightona_api_client/models/update_docker_registry.rb +239 -0
  194. data/lib/nightona_api_client/models/update_job_status.rb +207 -0
  195. data/lib/nightona_api_client/models/update_organization_default_region.rb +165 -0
  196. data/lib/nightona_api_client/models/update_organization_invitation.rb +228 -0
  197. data/lib/nightona_api_client/models/update_organization_member_access.rb +218 -0
  198. data/lib/nightona_api_client/models/update_organization_quota.rb +295 -0
  199. data/lib/nightona_api_client/models/update_organization_region_quota.rb +299 -0
  200. data/lib/nightona_api_client/models/update_organization_role.rb +233 -0
  201. data/lib/nightona_api_client/models/update_region.rb +171 -0
  202. data/lib/nightona_api_client/models/update_sandbox_network_settings.rb +168 -0
  203. data/lib/nightona_api_client/models/update_sandbox_state_dto.rb +209 -0
  204. data/lib/nightona_api_client/models/url.rb +165 -0
  205. data/lib/nightona_api_client/models/user.rb +275 -0
  206. data/lib/nightona_api_client/models/user_home_dir_response.rb +147 -0
  207. data/lib/nightona_api_client/models/user_public_key.rb +192 -0
  208. data/lib/nightona_api_client/models/volume_dto.rb +346 -0
  209. data/lib/nightona_api_client/models/volume_state.rb +46 -0
  210. data/lib/nightona_api_client/models/webhook_app_portal_access.rb +192 -0
  211. data/lib/nightona_api_client/models/webhook_event.rb +46 -0
  212. data/lib/nightona_api_client/models/webhook_initialization_status.rb +272 -0
  213. data/lib/nightona_api_client/models/windows_response.rb +194 -0
  214. data/lib/nightona_api_client/models/work_dir_response.rb +147 -0
  215. data/lib/nightona_api_client/version.rb +15 -0
  216. data/lib/nightona_api_client.rb +241 -0
  217. data/nightona_api_client.gemspec +39 -0
  218. data/project.json +68 -0
  219. metadata +299 -0
@@ -0,0 +1,507 @@
1
+ =begin
2
+ #Nightona
3
+
4
+ #Nightona AI platform API Docs
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: amaraaamka0404@gmail.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.21.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module NightonaApiClient
17
+ class NightonaConfiguration < ApiModelBase
18
+ # Nightona version
19
+ attr_accessor :version
20
+
21
+ # PostHog configuration
22
+ attr_accessor :posthog
23
+
24
+ # OIDC configuration
25
+ attr_accessor :oidc
26
+
27
+ # Whether linked accounts are enabled
28
+ attr_accessor :linked_accounts_enabled
29
+
30
+ # System announcements
31
+ attr_accessor :announcements
32
+
33
+ # Pylon application ID
34
+ attr_accessor :pylon_app_id
35
+
36
+ # Proxy template URL
37
+ attr_accessor :proxy_template_url
38
+
39
+ # Toolbox template URL
40
+ attr_accessor :proxy_toolbox_url
41
+
42
+ # Default snapshot for sandboxes
43
+ attr_accessor :default_snapshot
44
+
45
+ # Dashboard URL
46
+ attr_accessor :dashboard_url
47
+
48
+ # Maximum auto-archive interval in minutes
49
+ attr_accessor :max_auto_archive_interval
50
+
51
+ # Whether maintenance mode is enabled
52
+ attr_accessor :maintanance_mode
53
+
54
+ # Current environment
55
+ attr_accessor :environment
56
+
57
+ # Billing API URL
58
+ attr_accessor :billing_api_url
59
+
60
+ # Analytics API URL
61
+ attr_accessor :analytics_api_url
62
+
63
+ # SSH Gateway command
64
+ attr_accessor :ssh_gateway_command
65
+
66
+ # Base64 encoded SSH Gateway public key
67
+ attr_accessor :ssh_gateway_public_key
68
+
69
+ # Rate limit configuration
70
+ attr_accessor :rate_limit
71
+
72
+ # Attribute mapping from ruby-style variable name to JSON key.
73
+ def self.attribute_map
74
+ {
75
+ :'version' => :'version',
76
+ :'posthog' => :'posthog',
77
+ :'oidc' => :'oidc',
78
+ :'linked_accounts_enabled' => :'linkedAccountsEnabled',
79
+ :'announcements' => :'announcements',
80
+ :'pylon_app_id' => :'pylonAppId',
81
+ :'proxy_template_url' => :'proxyTemplateUrl',
82
+ :'proxy_toolbox_url' => :'proxyToolboxUrl',
83
+ :'default_snapshot' => :'defaultSnapshot',
84
+ :'dashboard_url' => :'dashboardUrl',
85
+ :'max_auto_archive_interval' => :'maxAutoArchiveInterval',
86
+ :'maintanance_mode' => :'maintananceMode',
87
+ :'environment' => :'environment',
88
+ :'billing_api_url' => :'billingApiUrl',
89
+ :'analytics_api_url' => :'analyticsApiUrl',
90
+ :'ssh_gateway_command' => :'sshGatewayCommand',
91
+ :'ssh_gateway_public_key' => :'sshGatewayPublicKey',
92
+ :'rate_limit' => :'rateLimit'
93
+ }
94
+ end
95
+
96
+ # Returns attribute mapping this model knows about
97
+ def self.acceptable_attribute_map
98
+ attribute_map
99
+ end
100
+
101
+ # Returns all the JSON keys this model knows about
102
+ def self.acceptable_attributes
103
+ acceptable_attribute_map.values
104
+ end
105
+
106
+ # Attribute type mapping.
107
+ def self.openapi_types
108
+ {
109
+ :'version' => :'String',
110
+ :'posthog' => :'PosthogConfig',
111
+ :'oidc' => :'OidcConfig',
112
+ :'linked_accounts_enabled' => :'Boolean',
113
+ :'announcements' => :'Hash<String, Announcement>',
114
+ :'pylon_app_id' => :'String',
115
+ :'proxy_template_url' => :'String',
116
+ :'proxy_toolbox_url' => :'String',
117
+ :'default_snapshot' => :'String',
118
+ :'dashboard_url' => :'String',
119
+ :'max_auto_archive_interval' => :'Float',
120
+ :'maintanance_mode' => :'Boolean',
121
+ :'environment' => :'String',
122
+ :'billing_api_url' => :'String',
123
+ :'analytics_api_url' => :'String',
124
+ :'ssh_gateway_command' => :'String',
125
+ :'ssh_gateway_public_key' => :'String',
126
+ :'rate_limit' => :'RateLimitConfig'
127
+ }
128
+ end
129
+
130
+ # List of attributes with nullable: true
131
+ def self.openapi_nullable
132
+ Set.new([
133
+ ])
134
+ end
135
+
136
+ # Initializes the object
137
+ # @param [Hash] attributes Model attributes in the form of hash
138
+ def initialize(attributes = {})
139
+ if (!attributes.is_a?(Hash))
140
+ fail ArgumentError, "The input argument (attributes) must be a hash in `NightonaApiClient::NightonaConfiguration` initialize method"
141
+ end
142
+
143
+ # check to see if the attribute exists and convert string to symbol for hash key
144
+ acceptable_attribute_map = self.class.acceptable_attribute_map
145
+ attributes = attributes.each_with_object({}) { |(k, v), h|
146
+ if (!acceptable_attribute_map.key?(k.to_sym))
147
+ fail ArgumentError, "`#{k}` is not a valid attribute in `NightonaApiClient::NightonaConfiguration`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
148
+ end
149
+ h[k.to_sym] = v
150
+ }
151
+
152
+ if attributes.key?(:'version')
153
+ self.version = attributes[:'version']
154
+ else
155
+ self.version = nil
156
+ end
157
+
158
+ if attributes.key?(:'posthog')
159
+ self.posthog = attributes[:'posthog']
160
+ end
161
+
162
+ if attributes.key?(:'oidc')
163
+ self.oidc = attributes[:'oidc']
164
+ else
165
+ self.oidc = nil
166
+ end
167
+
168
+ if attributes.key?(:'linked_accounts_enabled')
169
+ self.linked_accounts_enabled = attributes[:'linked_accounts_enabled']
170
+ else
171
+ self.linked_accounts_enabled = nil
172
+ end
173
+
174
+ if attributes.key?(:'announcements')
175
+ if (value = attributes[:'announcements']).is_a?(Hash)
176
+ self.announcements = value
177
+ end
178
+ else
179
+ self.announcements = nil
180
+ end
181
+
182
+ if attributes.key?(:'pylon_app_id')
183
+ self.pylon_app_id = attributes[:'pylon_app_id']
184
+ end
185
+
186
+ if attributes.key?(:'proxy_template_url')
187
+ self.proxy_template_url = attributes[:'proxy_template_url']
188
+ else
189
+ self.proxy_template_url = nil
190
+ end
191
+
192
+ if attributes.key?(:'proxy_toolbox_url')
193
+ self.proxy_toolbox_url = attributes[:'proxy_toolbox_url']
194
+ else
195
+ self.proxy_toolbox_url = nil
196
+ end
197
+
198
+ if attributes.key?(:'default_snapshot')
199
+ self.default_snapshot = attributes[:'default_snapshot']
200
+ else
201
+ self.default_snapshot = nil
202
+ end
203
+
204
+ if attributes.key?(:'dashboard_url')
205
+ self.dashboard_url = attributes[:'dashboard_url']
206
+ else
207
+ self.dashboard_url = nil
208
+ end
209
+
210
+ if attributes.key?(:'max_auto_archive_interval')
211
+ self.max_auto_archive_interval = attributes[:'max_auto_archive_interval']
212
+ else
213
+ self.max_auto_archive_interval = nil
214
+ end
215
+
216
+ if attributes.key?(:'maintanance_mode')
217
+ self.maintanance_mode = attributes[:'maintanance_mode']
218
+ else
219
+ self.maintanance_mode = nil
220
+ end
221
+
222
+ if attributes.key?(:'environment')
223
+ self.environment = attributes[:'environment']
224
+ else
225
+ self.environment = nil
226
+ end
227
+
228
+ if attributes.key?(:'billing_api_url')
229
+ self.billing_api_url = attributes[:'billing_api_url']
230
+ end
231
+
232
+ if attributes.key?(:'analytics_api_url')
233
+ self.analytics_api_url = attributes[:'analytics_api_url']
234
+ end
235
+
236
+ if attributes.key?(:'ssh_gateway_command')
237
+ self.ssh_gateway_command = attributes[:'ssh_gateway_command']
238
+ end
239
+
240
+ if attributes.key?(:'ssh_gateway_public_key')
241
+ self.ssh_gateway_public_key = attributes[:'ssh_gateway_public_key']
242
+ end
243
+
244
+ if attributes.key?(:'rate_limit')
245
+ self.rate_limit = attributes[:'rate_limit']
246
+ end
247
+ end
248
+
249
+ # Show invalid properties with the reasons. Usually used together with valid?
250
+ # @return Array for valid properties with the reasons
251
+ def list_invalid_properties
252
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
253
+ invalid_properties = Array.new
254
+ if @version.nil?
255
+ invalid_properties.push('invalid value for "version", version cannot be nil.')
256
+ end
257
+
258
+ if @oidc.nil?
259
+ invalid_properties.push('invalid value for "oidc", oidc cannot be nil.')
260
+ end
261
+
262
+ if @linked_accounts_enabled.nil?
263
+ invalid_properties.push('invalid value for "linked_accounts_enabled", linked_accounts_enabled cannot be nil.')
264
+ end
265
+
266
+ if @announcements.nil?
267
+ invalid_properties.push('invalid value for "announcements", announcements cannot be nil.')
268
+ end
269
+
270
+ if @proxy_template_url.nil?
271
+ invalid_properties.push('invalid value for "proxy_template_url", proxy_template_url cannot be nil.')
272
+ end
273
+
274
+ if @proxy_toolbox_url.nil?
275
+ invalid_properties.push('invalid value for "proxy_toolbox_url", proxy_toolbox_url cannot be nil.')
276
+ end
277
+
278
+ if @default_snapshot.nil?
279
+ invalid_properties.push('invalid value for "default_snapshot", default_snapshot cannot be nil.')
280
+ end
281
+
282
+ if @dashboard_url.nil?
283
+ invalid_properties.push('invalid value for "dashboard_url", dashboard_url cannot be nil.')
284
+ end
285
+
286
+ if @max_auto_archive_interval.nil?
287
+ invalid_properties.push('invalid value for "max_auto_archive_interval", max_auto_archive_interval cannot be nil.')
288
+ end
289
+
290
+ if @maintanance_mode.nil?
291
+ invalid_properties.push('invalid value for "maintanance_mode", maintanance_mode cannot be nil.')
292
+ end
293
+
294
+ if @environment.nil?
295
+ invalid_properties.push('invalid value for "environment", environment cannot be nil.')
296
+ end
297
+
298
+ invalid_properties
299
+ end
300
+
301
+ # Check to see if the all the properties in the model are valid
302
+ # @return true if the model is valid
303
+ def valid?
304
+ warn '[DEPRECATED] the `valid?` method is obsolete'
305
+ return false if @version.nil?
306
+ return false if @oidc.nil?
307
+ return false if @linked_accounts_enabled.nil?
308
+ return false if @announcements.nil?
309
+ return false if @proxy_template_url.nil?
310
+ return false if @proxy_toolbox_url.nil?
311
+ return false if @default_snapshot.nil?
312
+ return false if @dashboard_url.nil?
313
+ return false if @max_auto_archive_interval.nil?
314
+ return false if @maintanance_mode.nil?
315
+ return false if @environment.nil?
316
+ true
317
+ end
318
+
319
+ # Custom attribute writer method with validation
320
+ # @param [Object] version Value to be assigned
321
+ def version=(version)
322
+ if version.nil?
323
+ fail ArgumentError, 'version cannot be nil'
324
+ end
325
+
326
+ @version = version
327
+ end
328
+
329
+ # Custom attribute writer method with validation
330
+ # @param [Object] oidc Value to be assigned
331
+ def oidc=(oidc)
332
+ if oidc.nil?
333
+ fail ArgumentError, 'oidc cannot be nil'
334
+ end
335
+
336
+ @oidc = oidc
337
+ end
338
+
339
+ # Custom attribute writer method with validation
340
+ # @param [Object] linked_accounts_enabled Value to be assigned
341
+ def linked_accounts_enabled=(linked_accounts_enabled)
342
+ if linked_accounts_enabled.nil?
343
+ fail ArgumentError, 'linked_accounts_enabled cannot be nil'
344
+ end
345
+
346
+ @linked_accounts_enabled = linked_accounts_enabled
347
+ end
348
+
349
+ # Custom attribute writer method with validation
350
+ # @param [Object] announcements Value to be assigned
351
+ def announcements=(announcements)
352
+ if announcements.nil?
353
+ fail ArgumentError, 'announcements cannot be nil'
354
+ end
355
+
356
+ @announcements = announcements
357
+ end
358
+
359
+ # Custom attribute writer method with validation
360
+ # @param [Object] proxy_template_url Value to be assigned
361
+ def proxy_template_url=(proxy_template_url)
362
+ if proxy_template_url.nil?
363
+ fail ArgumentError, 'proxy_template_url cannot be nil'
364
+ end
365
+
366
+ @proxy_template_url = proxy_template_url
367
+ end
368
+
369
+ # Custom attribute writer method with validation
370
+ # @param [Object] proxy_toolbox_url Value to be assigned
371
+ def proxy_toolbox_url=(proxy_toolbox_url)
372
+ if proxy_toolbox_url.nil?
373
+ fail ArgumentError, 'proxy_toolbox_url cannot be nil'
374
+ end
375
+
376
+ @proxy_toolbox_url = proxy_toolbox_url
377
+ end
378
+
379
+ # Custom attribute writer method with validation
380
+ # @param [Object] default_snapshot Value to be assigned
381
+ def default_snapshot=(default_snapshot)
382
+ if default_snapshot.nil?
383
+ fail ArgumentError, 'default_snapshot cannot be nil'
384
+ end
385
+
386
+ @default_snapshot = default_snapshot
387
+ end
388
+
389
+ # Custom attribute writer method with validation
390
+ # @param [Object] dashboard_url Value to be assigned
391
+ def dashboard_url=(dashboard_url)
392
+ if dashboard_url.nil?
393
+ fail ArgumentError, 'dashboard_url cannot be nil'
394
+ end
395
+
396
+ @dashboard_url = dashboard_url
397
+ end
398
+
399
+ # Custom attribute writer method with validation
400
+ # @param [Object] max_auto_archive_interval Value to be assigned
401
+ def max_auto_archive_interval=(max_auto_archive_interval)
402
+ if max_auto_archive_interval.nil?
403
+ fail ArgumentError, 'max_auto_archive_interval cannot be nil'
404
+ end
405
+
406
+ @max_auto_archive_interval = max_auto_archive_interval
407
+ end
408
+
409
+ # Custom attribute writer method with validation
410
+ # @param [Object] maintanance_mode Value to be assigned
411
+ def maintanance_mode=(maintanance_mode)
412
+ if maintanance_mode.nil?
413
+ fail ArgumentError, 'maintanance_mode cannot be nil'
414
+ end
415
+
416
+ @maintanance_mode = maintanance_mode
417
+ end
418
+
419
+ # Custom attribute writer method with validation
420
+ # @param [Object] environment Value to be assigned
421
+ def environment=(environment)
422
+ if environment.nil?
423
+ fail ArgumentError, 'environment cannot be nil'
424
+ end
425
+
426
+ @environment = environment
427
+ end
428
+
429
+ # Checks equality by comparing each attribute.
430
+ # @param [Object] Object to be compared
431
+ def ==(o)
432
+ return true if self.equal?(o)
433
+ self.class == o.class &&
434
+ version == o.version &&
435
+ posthog == o.posthog &&
436
+ oidc == o.oidc &&
437
+ linked_accounts_enabled == o.linked_accounts_enabled &&
438
+ announcements == o.announcements &&
439
+ pylon_app_id == o.pylon_app_id &&
440
+ proxy_template_url == o.proxy_template_url &&
441
+ proxy_toolbox_url == o.proxy_toolbox_url &&
442
+ default_snapshot == o.default_snapshot &&
443
+ dashboard_url == o.dashboard_url &&
444
+ max_auto_archive_interval == o.max_auto_archive_interval &&
445
+ maintanance_mode == o.maintanance_mode &&
446
+ environment == o.environment &&
447
+ billing_api_url == o.billing_api_url &&
448
+ analytics_api_url == o.analytics_api_url &&
449
+ ssh_gateway_command == o.ssh_gateway_command &&
450
+ ssh_gateway_public_key == o.ssh_gateway_public_key &&
451
+ rate_limit == o.rate_limit
452
+ end
453
+
454
+ # @see the `==` method
455
+ # @param [Object] Object to be compared
456
+ def eql?(o)
457
+ self == o
458
+ end
459
+
460
+ # Calculates hash code according to all attributes.
461
+ # @return [Integer] Hash code
462
+ def hash
463
+ [version, posthog, oidc, linked_accounts_enabled, announcements, pylon_app_id, proxy_template_url, proxy_toolbox_url, default_snapshot, dashboard_url, max_auto_archive_interval, maintanance_mode, environment, billing_api_url, analytics_api_url, ssh_gateway_command, ssh_gateway_public_key, rate_limit].hash
464
+ end
465
+
466
+ # Builds the object from hash
467
+ # @param [Hash] attributes Model attributes in the form of hash
468
+ # @return [Object] Returns the model itself
469
+ def self.build_from_hash(attributes)
470
+ return nil unless attributes.is_a?(Hash)
471
+ attributes = attributes.transform_keys(&:to_sym)
472
+ transformed_hash = {}
473
+ openapi_types.each_pair do |key, type|
474
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
475
+ transformed_hash["#{key}"] = nil
476
+ elsif type =~ /\AArray<(.*)>/i
477
+ # check to ensure the input is an array given that the attribute
478
+ # is documented as an array but the input is not
479
+ if attributes[attribute_map[key]].is_a?(Array)
480
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
481
+ end
482
+ elsif !attributes[attribute_map[key]].nil?
483
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
484
+ end
485
+ end
486
+ new(transformed_hash)
487
+ end
488
+
489
+ # Returns the object in the form of hash
490
+ # @return [Hash] Returns the object in the form of hash
491
+ def to_hash
492
+ hash = {}
493
+ self.class.attribute_map.each_pair do |attr, param|
494
+ value = self.send(attr)
495
+ if value.nil?
496
+ is_nullable = self.class.openapi_nullable.include?(attr)
497
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
498
+ end
499
+
500
+ hash[param] = _to_hash(value)
501
+ end
502
+ hash
503
+ end
504
+
505
+ end
506
+
507
+ end