ezero-apimatic-sdk 0.0.1

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 (312) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +180 -0
  4. data/bin/console +15 -0
  5. data/lib/env_zero_api/api_helper.rb +10 -0
  6. data/lib/env_zero_api/apis/approval_policy_api.rb +107 -0
  7. data/lib/env_zero_api/apis/base_api.rb +67 -0
  8. data/lib/env_zero_api/apis/bulk_operations_api.rb +297 -0
  9. data/lib/env_zero_api/apis/configuration_api.rb +311 -0
  10. data/lib/env_zero_api/apis/credentials_api.rb +72 -0
  11. data/lib/env_zero_api/apis/deployment_logs_api.rb +79 -0
  12. data/lib/env_zero_api/apis/drift_api.rb +201 -0
  13. data/lib/env_zero_api/apis/environment_outputs_api.rb +39 -0
  14. data/lib/env_zero_api/apis/environments_api.rb +1082 -0
  15. data/lib/env_zero_api/apis/notifications_api.rb +149 -0
  16. data/lib/env_zero_api/apis/organization_api.rb +132 -0
  17. data/lib/env_zero_api/apis/projects_api.rb +202 -0
  18. data/lib/env_zero_api/apis/scheduling_api.rb +175 -0
  19. data/lib/env_zero_api/apis/templates_api.rb +206 -0
  20. data/lib/env_zero_api/client.rb +145 -0
  21. data/lib/env_zero_api/configuration.rb +166 -0
  22. data/lib/env_zero_api/exceptions/api_exception.rb +21 -0
  23. data/lib/env_zero_api/exceptions/error_exception.rb +46 -0
  24. data/lib/env_zero_api/http/api_response.rb +19 -0
  25. data/lib/env_zero_api/http/auth/basic_auth.rb +62 -0
  26. data/lib/env_zero_api/http/http_call_back.rb +10 -0
  27. data/lib/env_zero_api/http/http_method_enum.rb +10 -0
  28. data/lib/env_zero_api/http/http_request.rb +10 -0
  29. data/lib/env_zero_api/http/http_response.rb +10 -0
  30. data/lib/env_zero_api/http/proxy_settings.rb +22 -0
  31. data/lib/env_zero_api/logging/configuration/api_logging_configuration.rb +186 -0
  32. data/lib/env_zero_api/logging/sdk_logger.rb +17 -0
  33. data/lib/env_zero_api/models/action.rb +36 -0
  34. data/lib/env_zero_api/models/action_reason.rb +68 -0
  35. data/lib/env_zero_api/models/api_key_type.rb +26 -0
  36. data/lib/env_zero_api/models/api_key_user.rb +150 -0
  37. data/lib/env_zero_api/models/api_key_user_identity.rb +82 -0
  38. data/lib/env_zero_api/models/app_metadata.rb +175 -0
  39. data/lib/env_zero_api/models/app_metadata1.rb +60 -0
  40. data/lib/env_zero_api/models/approval_policy_type.rb +26 -0
  41. data/lib/env_zero_api/models/auto_destroy_status.rb +26 -0
  42. data/lib/env_zero_api/models/auto_destroy_status1.rb +26 -0
  43. data/lib/env_zero_api/models/auto_destroy_status2.rb +26 -0
  44. data/lib/env_zero_api/models/auto_destroy_status3.rb +26 -0
  45. data/lib/env_zero_api/models/base_model.rb +110 -0
  46. data/lib/env_zero_api/models/blueprint_api_add_blueprint_to_project_request_body.rb +60 -0
  47. data/lib/env_zero_api/models/blueprint_api_add_blueprint_to_project_response.rb +675 -0
  48. data/lib/env_zero_api/models/blueprint_api_approval_policy_assignment.rb +98 -0
  49. data/lib/env_zero_api/models/blueprint_api_approval_policy_assignment_request.rb +77 -0
  50. data/lib/env_zero_api/models/blueprint_api_approval_policy_scope.rb +44 -0
  51. data/lib/env_zero_api/models/blueprint_api_approval_policy_template.rb +375 -0
  52. data/lib/env_zero_api/models/blueprint_api_approval_policy_template_with_scope.rb +96 -0
  53. data/lib/env_zero_api/models/blueprint_api_approval_policy_type.rb +26 -0
  54. data/lib/env_zero_api/models/blueprint_api_assign_approval_policy_request_body.rb +77 -0
  55. data/lib/env_zero_api/models/blueprint_api_assign_approval_policy_response.rb +98 -0
  56. data/lib/env_zero_api/models/blueprint_api_blueprint.rb +675 -0
  57. data/lib/env_zero_api/models/blueprint_api_blueprint_type.rb +26 -0
  58. data/lib/env_zero_api/models/blueprint_api_blueprint_type1.rb +26 -0
  59. data/lib/env_zero_api/models/blueprint_api_create_blueprint_request_body.rb +544 -0
  60. data/lib/env_zero_api/models/blueprint_api_create_blueprint_response.rb +675 -0
  61. data/lib/env_zero_api/models/blueprint_api_creation_scope.rb +36 -0
  62. data/lib/env_zero_api/models/blueprint_api_custom_flow_type.rb +26 -0
  63. data/lib/env_zero_api/models/blueprint_api_deployable_type.rb +26 -0
  64. data/lib/env_zero_api/models/blueprint_api_find_all_approval_policies_response.rb +77 -0
  65. data/lib/env_zero_api/models/blueprint_api_get_blueprint_by_id_response.rb +675 -0
  66. data/lib/env_zero_api/models/blueprint_api_retry.rb +85 -0
  67. data/lib/env_zero_api/models/blueprint_api_retry_deploy_or_destroy_config.rb +98 -0
  68. data/lib/env_zero_api/models/blueprint_api_ssh_key.rb +90 -0
  69. data/lib/env_zero_api/models/blueprint_api_terragrunt_tf_binary.rb +36 -0
  70. data/lib/env_zero_api/models/blueprint_api_update_blueprint_request_body.rb +483 -0
  71. data/lib/env_zero_api/models/blueprint_api_update_blueprint_response.rb +675 -0
  72. data/lib/env_zero_api/models/bulk_operation_type.rb +72 -0
  73. data/lib/env_zero_api/models/bulk_operations_api_base_payload.rb +72 -0
  74. data/lib/env_zero_api/models/bulk_operations_api_base_response.rb +91 -0
  75. data/lib/env_zero_api/models/bulk_operations_api_bulk_add_tags_request_body.rb +82 -0
  76. data/lib/env_zero_api/models/bulk_operations_api_bulk_add_tags_response.rb +91 -0
  77. data/lib/env_zero_api/models/bulk_operations_api_bulk_archive_request_body.rb +72 -0
  78. data/lib/env_zero_api/models/bulk_operations_api_bulk_archive_response.rb +91 -0
  79. data/lib/env_zero_api/models/bulk_operations_api_bulk_deploy_request_body.rb +80 -0
  80. data/lib/env_zero_api/models/bulk_operations_api_bulk_deploy_response.rb +91 -0
  81. data/lib/env_zero_api/models/bulk_operations_api_bulk_destroy_request_body.rb +80 -0
  82. data/lib/env_zero_api/models/bulk_operations_api_bulk_destroy_response.rb +91 -0
  83. data/lib/env_zero_api/models/bulk_operations_api_bulk_lock_request_body.rb +80 -0
  84. data/lib/env_zero_api/models/bulk_operations_api_bulk_lock_response.rb +91 -0
  85. data/lib/env_zero_api/models/bulk_operations_api_bulk_operation_item_status.rb +26 -0
  86. data/lib/env_zero_api/models/bulk_operations_api_bulk_operation_item_status1.rb +26 -0
  87. data/lib/env_zero_api/models/bulk_operations_api_bulk_operation_item_status2.rb +26 -0
  88. data/lib/env_zero_api/models/bulk_operations_api_bulk_operation_item_status3.rb +26 -0
  89. data/lib/env_zero_api/models/bulk_operations_api_bulk_remove_tags_request_body.rb +81 -0
  90. data/lib/env_zero_api/models/bulk_operations_api_bulk_remove_tags_response.rb +91 -0
  91. data/lib/env_zero_api/models/bulk_operations_api_bulk_run_task_request_body.rb +80 -0
  92. data/lib/env_zero_api/models/bulk_operations_api_bulk_run_task_response.rb +91 -0
  93. data/lib/env_zero_api/models/bulk_operations_api_bulk_unlock_request_body.rb +72 -0
  94. data/lib/env_zero_api/models/bulk_operations_api_bulk_unlock_response.rb +91 -0
  95. data/lib/env_zero_api/models/bulk_operations_api_get_bulk_operation_item.rb +128 -0
  96. data/lib/env_zero_api/models/bulk_operations_api_get_bulk_operation_response.rb +106 -0
  97. data/lib/env_zero_api/models/bulk_operations_api_single_result.rb +79 -0
  98. data/lib/env_zero_api/models/cause_key_parts.rb +104 -0
  99. data/lib/env_zero_api/models/cause_key_parts1.rb +74 -0
  100. data/lib/env_zero_api/models/cause_key_parts2.rb +91 -0
  101. data/lib/env_zero_api/models/cause_key_parts4.rb +132 -0
  102. data/lib/env_zero_api/models/cause_key_parts5.rb +92 -0
  103. data/lib/env_zero_api/models/checkout_updated_code.rb +36 -0
  104. data/lib/env_zero_api/models/cloud_resource_api_change_event.rb +199 -0
  105. data/lib/env_zero_api/models/cloud_resource_api_change_event_source.rb +40 -0
  106. data/lib/env_zero_api/models/cloud_resource_api_management_type.rb +40 -0
  107. data/lib/env_zero_api/models/configuration_api_create_configuration_set_request_body.rb +108 -0
  108. data/lib/env_zero_api/models/configuration_api_create_configuration_set_response.rb +200 -0
  109. data/lib/env_zero_api/models/configuration_api_find_variable_by_id_response.rb +305 -0
  110. data/lib/env_zero_api/models/configuration_api_find_variables_by_scope_overriding_configuration_property.rb +342 -0
  111. data/lib/env_zero_api/models/configuration_property_request.rb +284 -0
  112. data/lib/env_zero_api/models/configuration_property_response.rb +305 -0
  113. data/lib/env_zero_api/models/configuration_scope.rb +60 -0
  114. data/lib/env_zero_api/models/configuration_set.rb +200 -0
  115. data/lib/env_zero_api/models/configuration_set_assignment_scope.rb +52 -0
  116. data/lib/env_zero_api/models/configuration_type.rb +27 -0
  117. data/lib/env_zero_api/models/configuration_type1.rb +27 -0
  118. data/lib/env_zero_api/models/credentials_api_api_key.rb +167 -0
  119. data/lib/env_zero_api/models/credentials_api_create_api_key_request_body.rb +91 -0
  120. data/lib/env_zero_api/models/credentials_api_create_api_key_response.rb +167 -0
  121. data/lib/env_zero_api/models/custom_env0_environment_variables.rb +537 -0
  122. data/lib/env_zero_api/models/custom_flow_type.rb +26 -0
  123. data/lib/env_zero_api/models/data.rb +65 -0
  124. data/lib/env_zero_api/models/data1.rb +73 -0
  125. data/lib/env_zero_api/models/data2.rb +73 -0
  126. data/lib/env_zero_api/models/data3.rb +62 -0
  127. data/lib/env_zero_api/models/data4.rb +61 -0
  128. data/lib/env_zero_api/models/data5.rb +71 -0
  129. data/lib/env_zero_api/models/deploy_request.rb +343 -0
  130. data/lib/env_zero_api/models/deployment_api_plan_attribute_change.rb +94 -0
  131. data/lib/env_zero_api/models/deployment_api_plan_change_action.rb +48 -0
  132. data/lib/env_zero_api/models/deployment_api_plan_plan.rb +118 -0
  133. data/lib/env_zero_api/models/deployment_api_plan_plan_output_change.rb +127 -0
  134. data/lib/env_zero_api/models/deployment_api_plan_plan_resource_change.rb +240 -0
  135. data/lib/env_zero_api/models/deployment_api_plan_plan_summary.rb +114 -0
  136. data/lib/env_zero_api/models/deployment_api_plan_resource_import_data.rb +74 -0
  137. data/lib/env_zero_api/models/deployment_command.rb +68 -0
  138. data/lib/env_zero_api/models/deployment_step_api_deployment_step_status.rb +64 -0
  139. data/lib/env_zero_api/models/deployment_step_api_find_by_deployment_log_id_response.rb +195 -0
  140. data/lib/env_zero_api/models/deployment_step_api_find_step_log_response.rb +117 -0
  141. data/lib/env_zero_api/models/deployment_step_api_log_event.rb +131 -0
  142. data/lib/env_zero_api/models/deployment_type.rb +40 -0
  143. data/lib/env_zero_api/models/deployment_type1.rb +56 -0
  144. data/lib/env_zero_api/models/diff.rb +75 -0
  145. data/lib/env_zero_api/models/drift_api_drift_cause_environment.rb +117 -0
  146. data/lib/env_zero_api/models/drift_api_drift_cause_group.rb +169 -0
  147. data/lib/env_zero_api/models/drift_api_drift_cause_group1.rb +169 -0
  148. data/lib/env_zero_api/models/drift_api_drift_cause_group2.rb +169 -0
  149. data/lib/env_zero_api/models/drift_api_drift_cause_group4.rb +169 -0
  150. data/lib/env_zero_api/models/drift_api_drift_cause_group5.rb +169 -0
  151. data/lib/env_zero_api/models/drift_api_drift_cause_skip.rb +68 -0
  152. data/lib/env_zero_api/models/drift_api_drift_cause_skip_reason.rb +40 -0
  153. data/lib/env_zero_api/models/drift_api_get_drift_causes_response.rb +76 -0
  154. data/lib/env_zero_api/models/drift_api_get_drift_causes_response1.rb +76 -0
  155. data/lib/env_zero_api/models/drift_api_get_drift_fix_stats_response.rb +81 -0
  156. data/lib/env_zero_api/models/drift_api_get_drift_fix_stats_response1.rb +81 -0
  157. data/lib/env_zero_api/models/drift_api_get_ignored_drift_causes_response.rb +76 -0
  158. data/lib/env_zero_api/models/drift_api_ignore_drift_cause_body.rb +72 -0
  159. data/lib/env_zero_api/models/drift_api_ignore_drift_cause_request_body.rb +72 -0
  160. data/lib/env_zero_api/models/drift_api_ignore_drift_cause_response.rb +77 -0
  161. data/lib/env_zero_api/models/drift_api_ignored_drift_cause_environment.rb +140 -0
  162. data/lib/env_zero_api/models/drift_api_ignored_drift_cause_group.rb +157 -0
  163. data/lib/env_zero_api/models/drift_api_ignored_drift_cause_group1.rb +157 -0
  164. data/lib/env_zero_api/models/drift_api_ignored_drift_cause_group2.rb +157 -0
  165. data/lib/env_zero_api/models/drift_api_ignored_drift_cause_group4.rb +157 -0
  166. data/lib/env_zero_api/models/drift_api_ignored_drift_cause_group5.rb +157 -0
  167. data/lib/env_zero_api/models/drift_api_state_modifying_deployment_type.rb +40 -0
  168. data/lib/env_zero_api/models/drift_api_un_ignore_drift_cause_request_body.rb +72 -0
  169. data/lib/env_zero_api/models/drift_api_un_ignore_drift_cause_response.rb +77 -0
  170. data/lib/env_zero_api/models/drift_api_variable_change_type.rb +40 -0
  171. data/lib/env_zero_api/models/drift_cause.rb +87 -0
  172. data/lib/env_zero_api/models/environment_api_auto_drift_remediation_strategy.rb +44 -0
  173. data/lib/env_zero_api/models/environment_api_cancel_response.rb +60 -0
  174. data/lib/env_zero_api/models/environment_api_configuration_property_change.rb +255 -0
  175. data/lib/env_zero_api/models/environment_api_configuration_set_changes.rb +81 -0
  176. data/lib/env_zero_api/models/environment_api_create_environment_request.rb +356 -0
  177. data/lib/env_zero_api/models/environment_api_create_request_body.rb +356 -0
  178. data/lib/env_zero_api/models/environment_api_create_response.rb +539 -0
  179. data/lib/env_zero_api/models/environment_api_deploy_request_body.rb +343 -0
  180. data/lib/env_zero_api/models/environment_api_deploy_request_on_create_flow.rb +154 -0
  181. data/lib/env_zero_api/models/environment_api_deploy_response.rb +796 -0
  182. data/lib/env_zero_api/models/environment_api_deployment_log.rb +792 -0
  183. data/lib/env_zero_api/models/environment_api_deployment_log_status.rb +76 -0
  184. data/lib/env_zero_api/models/environment_api_deployment_type.rb +60 -0
  185. data/lib/env_zero_api/models/environment_api_destroy_request_body.rb +108 -0
  186. data/lib/env_zero_api/models/environment_api_destroy_response.rb +60 -0
  187. data/lib/env_zero_api/models/environment_api_drift_cause_compass_scan_status.rb +48 -0
  188. data/lib/env_zero_api/models/environment_api_drift_cause_unapplied_commit.rb +111 -0
  189. data/lib/env_zero_api/models/environment_api_drift_cause_unmanaged_change_type.rb +36 -0
  190. data/lib/env_zero_api/models/environment_api_drift_detection_request.rb +81 -0
  191. data/lib/env_zero_api/models/environment_api_drift_status.rb +48 -0
  192. data/lib/env_zero_api/models/environment_api_environment.rb +539 -0
  193. data/lib/env_zero_api/models/environment_api_environment_lock_status.rb +119 -0
  194. data/lib/env_zero_api/models/environment_api_environment_next_scheduled_dates.rb +98 -0
  195. data/lib/env_zero_api/models/environment_api_environment_resource.rb +123 -0
  196. data/lib/env_zero_api/models/environment_api_environment_status.rb +84 -0
  197. data/lib/env_zero_api/models/environment_api_find_by_id_response.rb +539 -0
  198. data/lib/env_zero_api/models/environment_api_find_deployment_drift_status_response.rb +92 -0
  199. data/lib/env_zero_api/models/environment_api_find_deployment_log_by_id_response.rb +792 -0
  200. data/lib/env_zero_api/models/environment_api_get_deployment_plan_json_response.rb +86 -0
  201. data/lib/env_zero_api/models/environment_api_get_drifted_resource_event_details_response.rb +60 -0
  202. data/lib/env_zero_api/models/environment_api_get_drifted_resource_events_response.rb +98 -0
  203. data/lib/env_zero_api/models/environment_api_get_environments_outputs_response.rb +69 -0
  204. data/lib/env_zero_api/models/environment_api_get_plan_impact_destructive_change.rb +98 -0
  205. data/lib/env_zero_api/models/environment_api_get_plan_impact_plan_impact.rb +163 -0
  206. data/lib/env_zero_api/models/environment_api_get_policies_response.rb +298 -0
  207. data/lib/env_zero_api/models/environment_api_git_metadata.rb +110 -0
  208. data/lib/env_zero_api/models/environment_api_output_data.rb +103 -0
  209. data/lib/env_zero_api/models/environment_api_policy.rb +298 -0
  210. data/lib/env_zero_api/models/environment_api_remediate_drift_response.rb +792 -0
  211. data/lib/env_zero_api/models/environment_api_resume_response.rb +60 -0
  212. data/lib/env_zero_api/models/environment_api_reviewer.rb +90 -0
  213. data/lib/env_zero_api/models/environment_api_reviewer_user.rb +92 -0
  214. data/lib/env_zero_api/models/environment_api_state_file_hash.rb +87 -0
  215. data/lib/env_zero_api/models/environment_api_stopped_by_timeout_reason.rb +40 -0
  216. data/lib/env_zero_api/models/environment_api_terragrunt_run_all_output.rb +96 -0
  217. data/lib/env_zero_api/models/environment_api_ttl_request.rb +86 -0
  218. data/lib/env_zero_api/models/environment_api_ttl_request_body.rb +72 -0
  219. data/lib/env_zero_api/models/environment_api_ttl_response.rb +539 -0
  220. data/lib/env_zero_api/models/environment_api_ttl_type.rb +40 -0
  221. data/lib/env_zero_api/models/environment_api_update_environment_lock_request_body.rb +70 -0
  222. data/lib/env_zero_api/models/environment_api_update_environment_lock_response.rb +97 -0
  223. data/lib/env_zero_api/models/environment_api_update_policies_request_body.rb +334 -0
  224. data/lib/env_zero_api/models/environment_api_update_policies_response.rb +298 -0
  225. data/lib/env_zero_api/models/environment_api_update_request_body.rb +191 -0
  226. data/lib/env_zero_api/models/environment_api_update_response.rb +539 -0
  227. data/lib/env_zero_api/models/environment_api_update_tags_response.rb +539 -0
  228. data/lib/env_zero_api/models/environment_api_variable.rb +241 -0
  229. data/lib/env_zero_api/models/environment_api_vcs_provider.rb +56 -0
  230. data/lib/env_zero_api/models/environment_api_vcs_provider1.rb +56 -0
  231. data/lib/env_zero_api/models/environment_api_vcs_provider3.rb +56 -0
  232. data/lib/env_zero_api/models/environment_api_workflow_environments_workflow_file.rb +92 -0
  233. data/lib/env_zero_api/models/environment_api_workflow_environments_workflow_sub_environment.rb +226 -0
  234. data/lib/env_zero_api/models/environment_discovery_type.rb +26 -0
  235. data/lib/env_zero_api/models/environment_outputs_api_environment_state_access.rb +154 -0
  236. data/lib/env_zero_api/models/environment_outputs_api_get_state_access_config_response.rb +154 -0
  237. data/lib/env_zero_api/models/environment_removal_strategy.rb +36 -0
  238. data/lib/env_zero_api/models/environments.rb +80 -0
  239. data/lib/env_zero_api/models/event_name_type.rb +92 -0
  240. data/lib/env_zero_api/models/external_trigger_name.rb +40 -0
  241. data/lib/env_zero_api/models/family.rb +36 -0
  242. data/lib/env_zero_api/models/format.rb +40 -0
  243. data/lib/env_zero_api/models/git_user_data.rb +92 -0
  244. data/lib/env_zero_api/models/iac_type.rb +60 -0
  245. data/lib/env_zero_api/models/infracost_cost_estimation.rb +119 -0
  246. data/lib/env_zero_api/models/infracost_cost_estimation_project.rb +76 -0
  247. data/lib/env_zero_api/models/internal_trigger_name.rb +60 -0
  248. data/lib/env_zero_api/models/is_scheduled_run.rb +36 -0
  249. data/lib/env_zero_api/models/mode.rb +36 -0
  250. data/lib/env_zero_api/models/module_type.rb +26 -0
  251. data/lib/env_zero_api/models/notification_endpoint_type.rb +44 -0
  252. data/lib/env_zero_api/models/notifications_api_create_notification_endpoint_request_body.rb +122 -0
  253. data/lib/env_zero_api/models/notifications_api_create_notification_endpoint_response.rb +124 -0
  254. data/lib/env_zero_api/models/notifications_api_notification_endpoint_without_secret.rb +124 -0
  255. data/lib/env_zero_api/models/notifications_api_project_notification_setting.rb +102 -0
  256. data/lib/env_zero_api/models/notifications_api_update_project_notification_settings_request_body.rb +60 -0
  257. data/lib/env_zero_api/models/notifications_api_update_project_notification_settings_response.rb +102 -0
  258. data/lib/env_zero_api/models/organization_api_find_organization_by_id_response.rb +393 -0
  259. data/lib/env_zero_api/models/organization_api_get_organization_limits_response.rb +60 -0
  260. data/lib/env_zero_api/models/organization_api_ip_allowlist_rule.rb +119 -0
  261. data/lib/env_zero_api/models/organization_api_ip_allowlist_rule_type.rb +40 -0
  262. data/lib/env_zero_api/models/organization_api_ip_allowlist_rule_type2.rb +40 -0
  263. data/lib/env_zero_api/models/organization_api_organization.rb +393 -0
  264. data/lib/env_zero_api/models/organization_api_organization_limits.rb +60 -0
  265. data/lib/env_zero_api/models/organization_api_organization_mode.rb +36 -0
  266. data/lib/env_zero_api/models/organization_api_permissions.rb +82 -0
  267. data/lib/env_zero_api/models/organization_api_project_custom_flows_policy.rb +36 -0
  268. data/lib/env_zero_api/models/organization_api_project_permission.rb +69 -0
  269. data/lib/env_zero_api/models/organization_role.rb +36 -0
  270. data/lib/env_zero_api/models/organization_user.rb +77 -0
  271. data/lib/env_zero_api/models/organization_user_status.rb +36 -0
  272. data/lib/env_zero_api/models/output.rb +153 -0
  273. data/lib/env_zero_api/models/overwrites.rb +206 -0
  274. data/lib/env_zero_api/models/partial_json_schema7.rb +81 -0
  275. data/lib/env_zero_api/models/partial_json_schema72.rb +97 -0
  276. data/lib/env_zero_api/models/profile_data.rb +81 -0
  277. data/lib/env_zero_api/models/project_api_create_project_request.rb +102 -0
  278. data/lib/env_zero_api/models/project_api_create_project_request_body.rb +102 -0
  279. data/lib/env_zero_api/models/project_api_create_project_response.rb +150 -0
  280. data/lib/env_zero_api/models/project_api_find_by_id_response.rb +150 -0
  281. data/lib/env_zero_api/models/project_api_project.rb +150 -0
  282. data/lib/env_zero_api/models/project_api_user_access_source.rb +40 -0
  283. data/lib/env_zero_api/models/project_api_user_with_access.rb +148 -0
  284. data/lib/env_zero_api/models/requires_approval.rb +36 -0
  285. data/lib/env_zero_api/models/scheduling_api_disabled_reason.rb +36 -0
  286. data/lib/env_zero_api/models/scheduling_api_get_drift_detection_by_environment_id_response.rb +231 -0
  287. data/lib/env_zero_api/models/scheduling_api_get_schedule_by_environment_id_response.rb +71 -0
  288. data/lib/env_zero_api/models/scheduling_api_scheduled_action.rb +219 -0
  289. data/lib/env_zero_api/models/scheduling_api_set_drift_detection_request_body.rb +82 -0
  290. data/lib/env_zero_api/models/scheduling_api_set_drift_detection_response.rb +231 -0
  291. data/lib/env_zero_api/models/scheduling_api_set_environment_schedule_request_body.rb +75 -0
  292. data/lib/env_zero_api/models/scheduling_api_set_environment_schedule_request_scheduled_action.rb +70 -0
  293. data/lib/env_zero_api/models/scheduling_api_set_environment_schedule_response.rb +71 -0
  294. data/lib/env_zero_api/models/scope.rb +44 -0
  295. data/lib/env_zero_api/models/set_creation_scope.rb +36 -0
  296. data/lib/env_zero_api/models/settings.rb +76 -0
  297. data/lib/env_zero_api/models/skip_state_refresh.rb +36 -0
  298. data/lib/env_zero_api/models/status.rb +36 -0
  299. data/lib/env_zero_api/models/type.rb +36 -0
  300. data/lib/env_zero_api/models/user.rb +182 -0
  301. data/lib/env_zero_api/models/user1.rb +132 -0
  302. data/lib/env_zero_api/models/user_organization.rb +93 -0
  303. data/lib/env_zero_api/models/vcs.rb +368 -0
  304. data/lib/env_zero_api/models/workflow_deployment_options.rb +90 -0
  305. data/lib/env_zero_api/models/workflow_deployment_options1.rb +92 -0
  306. data/lib/env_zero_api/models/workflow_partial_deploy_operation.rb +40 -0
  307. data/lib/env_zero_api/models/workflow_sub_environment_request.rb +164 -0
  308. data/lib/env_zero_api/utilities/date_time_helper.rb +11 -0
  309. data/lib/env_zero_api/utilities/file_wrapper.rb +28 -0
  310. data/lib/env_zero_api/utilities/union_type_lookup.rb +379 -0
  311. data/lib/env_zero_api.rb +414 -0
  312. metadata +395 -0
@@ -0,0 +1,94 @@
1
+ # env_zero_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module EnvZeroApi
7
+ # DeploymentApiPlanAttributeChange Model.
8
+ class DeploymentApiPlanAttributeChange < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [String]
14
+ attr_accessor :name
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [Object]
18
+ attr_accessor :before
19
+
20
+ # TODO: Write general description for this method
21
+ # @return [Object]
22
+ attr_accessor :after
23
+
24
+ # A mapping from model property names to API property names.
25
+ def self.names
26
+ @_hash = {} if @_hash.nil?
27
+ @_hash['name'] = 'name'
28
+ @_hash['before'] = 'before'
29
+ @_hash['after'] = 'after'
30
+ @_hash
31
+ end
32
+
33
+ # An array for optional fields
34
+ def self.optionals
35
+ %w[
36
+ before
37
+ after
38
+ ]
39
+ end
40
+
41
+ # An array for nullable fields
42
+ def self.nullables
43
+ []
44
+ end
45
+
46
+ def initialize(name:, before: SKIP, after: SKIP)
47
+ @name = name
48
+ @before = before unless before == SKIP
49
+ @after = after unless after == SKIP
50
+ end
51
+
52
+ # Creates an instance of the object from a hash.
53
+ def self.from_hash(hash)
54
+ return nil unless hash
55
+
56
+ # Extract variables from the hash.
57
+ name = hash.key?('name') ? hash['name'] : nil
58
+ before = hash.key?('before') ? hash['before'] : SKIP
59
+ after = hash.key?('after') ? hash['after'] : SKIP
60
+
61
+ # Create object from extracted values.
62
+ DeploymentApiPlanAttributeChange.new(name: name,
63
+ before: before,
64
+ after: after)
65
+ end
66
+
67
+ # Validates an instance of the object from a given value.
68
+ # @param [DeploymentApiPlanAttributeChange | Hash] The value against the validation is performed.
69
+ def self.validate(value)
70
+ if value.instance_of? self
71
+ return APIHelper.valid_type?(value.name,
72
+ ->(val) { val.instance_of? String })
73
+ end
74
+
75
+ return false unless value.instance_of? Hash
76
+
77
+ APIHelper.valid_type?(value['name'],
78
+ ->(val) { val.instance_of? String })
79
+ end
80
+
81
+ # Provides a human-readable string representation of the object.
82
+ def to_s
83
+ class_name = self.class.name.split('::').last
84
+ "<#{class_name} name: #{@name}, before: #{@before}, after: #{@after}>"
85
+ end
86
+
87
+ # Provides a debugging-friendly string with detailed object information.
88
+ def inspect
89
+ class_name = self.class.name.split('::').last
90
+ "<#{class_name} name: #{@name.inspect}, before: #{@before.inspect}, after:"\
91
+ " #{@after.inspect}>"
92
+ end
93
+ end
94
+ end
@@ -0,0 +1,48 @@
1
+ # env_zero_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module EnvZeroApi
7
+ # DeploymentApi.Plan.ChangeAction.
8
+ class DeploymentApiPlanChangeAction
9
+ DEPLOYMENT_API_PLAN_CHANGE_ACTION = [
10
+ # TODO: Write general description for CREATE
11
+ CREATE = 'create'.freeze,
12
+
13
+ # TODO: Write general description for UPDATE
14
+ UPDATE = 'update'.freeze,
15
+
16
+ # TODO: Write general description for DELETE
17
+ DELETE = 'delete'.freeze,
18
+
19
+ # TODO: Write general description for RECREATE
20
+ RECREATE = 'recreate'.freeze,
21
+
22
+ # TODO: Write general description for METADATA
23
+ METADATA = 'metadata'.freeze
24
+ ].freeze
25
+
26
+ def self.validate(value)
27
+ return false if value.nil?
28
+
29
+ DEPLOYMENT_API_PLAN_CHANGE_ACTION.include?(value)
30
+ end
31
+
32
+ def self.from_value(value, default_value = CREATE)
33
+ return default_value if value.nil?
34
+
35
+ str = value.to_s.strip
36
+
37
+ case str.downcase
38
+ when 'create' then CREATE
39
+ when 'update' then UPDATE
40
+ when 'delete' then DELETE
41
+ when 'recreate' then RECREATE
42
+ when 'metadata' then METADATA
43
+ else
44
+ default_value
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,118 @@
1
+ # env_zero_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module EnvZeroApi
7
+ # DeploymentApiPlanPlan Model.
8
+ class DeploymentApiPlanPlan < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [Array[DeploymentApiPlanPlanResourceChange]]
14
+ attr_accessor :resource_changes
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [Array[DeploymentApiPlanPlanOutputChange]]
18
+ attr_accessor :output_changes
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['resource_changes'] = 'resourceChanges'
24
+ @_hash['output_changes'] = 'outputChanges'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ []
31
+ end
32
+
33
+ # An array for nullable fields
34
+ def self.nullables
35
+ []
36
+ end
37
+
38
+ def initialize(resource_changes:, output_changes:)
39
+ @resource_changes = resource_changes
40
+ @output_changes = output_changes
41
+ end
42
+
43
+ # Creates an instance of the object from a hash.
44
+ def self.from_hash(hash)
45
+ return nil unless hash
46
+
47
+ # Extract variables from the hash.
48
+ # Parameter is an array, so we need to iterate through it
49
+ resource_changes = nil
50
+ unless hash['resourceChanges'].nil?
51
+ resource_changes = []
52
+ hash['resourceChanges'].each do |structure|
53
+ resource_changes << (DeploymentApiPlanPlanResourceChange.from_hash(structure) if structure)
54
+ end
55
+ end
56
+
57
+ resource_changes = nil unless hash.key?('resourceChanges')
58
+ # Parameter is an array, so we need to iterate through it
59
+ output_changes = nil
60
+ unless hash['outputChanges'].nil?
61
+ output_changes = []
62
+ hash['outputChanges'].each do |structure|
63
+ output_changes << (DeploymentApiPlanPlanOutputChange.from_hash(structure) if structure)
64
+ end
65
+ end
66
+
67
+ output_changes = nil unless hash.key?('outputChanges')
68
+
69
+ # Create object from extracted values.
70
+ DeploymentApiPlanPlan.new(resource_changes: resource_changes,
71
+ output_changes: output_changes)
72
+ end
73
+
74
+ # Validates an instance of the object from a given value.
75
+ # @param [DeploymentApiPlanPlan | Hash] The value against the validation is performed.
76
+ def self.validate(value)
77
+ if value.instance_of? self
78
+ return (
79
+ APIHelper.valid_type?(value.resource_changes,
80
+ ->(val) { DeploymentApiPlanPlanResourceChange.validate(val) },
81
+ is_model_hash: true,
82
+ is_inner_model_hash: true) and
83
+ APIHelper.valid_type?(value.output_changes,
84
+ ->(val) { DeploymentApiPlanPlanOutputChange.validate(val) },
85
+ is_model_hash: true,
86
+ is_inner_model_hash: true)
87
+ )
88
+ end
89
+
90
+ return false unless value.instance_of? Hash
91
+
92
+ (
93
+ APIHelper.valid_type?(value['resourceChanges'],
94
+ ->(val) { DeploymentApiPlanPlanResourceChange.validate(val) },
95
+ is_model_hash: true,
96
+ is_inner_model_hash: true) and
97
+ APIHelper.valid_type?(value['outputChanges'],
98
+ ->(val) { DeploymentApiPlanPlanOutputChange.validate(val) },
99
+ is_model_hash: true,
100
+ is_inner_model_hash: true)
101
+ )
102
+ end
103
+
104
+ # Provides a human-readable string representation of the object.
105
+ def to_s
106
+ class_name = self.class.name.split('::').last
107
+ "<#{class_name} resource_changes: #{@resource_changes}, output_changes:"\
108
+ " #{@output_changes}>"
109
+ end
110
+
111
+ # Provides a debugging-friendly string with detailed object information.
112
+ def inspect
113
+ class_name = self.class.name.split('::').last
114
+ "<#{class_name} resource_changes: #{@resource_changes.inspect}, output_changes:"\
115
+ " #{@output_changes.inspect}>"
116
+ end
117
+ end
118
+ end
@@ -0,0 +1,127 @@
1
+ # env_zero_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module EnvZeroApi
7
+ # DeploymentApiPlanPlanOutputChange Model.
8
+ class DeploymentApiPlanPlanOutputChange < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [String]
14
+ attr_accessor :module_name
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [String]
18
+ attr_accessor :name
19
+
20
+ # TODO: Write general description for this method
21
+ # @return [DeploymentApiPlanChangeAction]
22
+ attr_accessor :action
23
+
24
+ # TODO: Write general description for this method
25
+ # @return [Array[DeploymentApiPlanAttributeChange]]
26
+ attr_accessor :attributes
27
+
28
+ # A mapping from model property names to API property names.
29
+ def self.names
30
+ @_hash = {} if @_hash.nil?
31
+ @_hash['module_name'] = 'moduleName'
32
+ @_hash['name'] = 'name'
33
+ @_hash['action'] = 'action'
34
+ @_hash['attributes'] = 'attributes'
35
+ @_hash
36
+ end
37
+
38
+ # An array for optional fields
39
+ def self.optionals
40
+ %w[
41
+ module_name
42
+ ]
43
+ end
44
+
45
+ # An array for nullable fields
46
+ def self.nullables
47
+ []
48
+ end
49
+
50
+ def initialize(name:, action:, attributes:, module_name: SKIP)
51
+ @module_name = module_name unless module_name == SKIP
52
+ @name = name
53
+ @action = action
54
+ @attributes = attributes
55
+ end
56
+
57
+ # Creates an instance of the object from a hash.
58
+ def self.from_hash(hash)
59
+ return nil unless hash
60
+
61
+ # Extract variables from the hash.
62
+ name = hash.key?('name') ? hash['name'] : nil
63
+ action = hash.key?('action') ? hash['action'] : nil
64
+ # Parameter is an array, so we need to iterate through it
65
+ attributes = nil
66
+ unless hash['attributes'].nil?
67
+ attributes = []
68
+ hash['attributes'].each do |structure|
69
+ attributes << (DeploymentApiPlanAttributeChange.from_hash(structure) if structure)
70
+ end
71
+ end
72
+
73
+ attributes = nil unless hash.key?('attributes')
74
+ module_name = hash.key?('moduleName') ? hash['moduleName'] : SKIP
75
+
76
+ # Create object from extracted values.
77
+ DeploymentApiPlanPlanOutputChange.new(name: name,
78
+ action: action,
79
+ attributes: attributes,
80
+ module_name: module_name)
81
+ end
82
+
83
+ # Validates an instance of the object from a given value.
84
+ # @param [DeploymentApiPlanPlanOutputChange | Hash] The value against the validation is performed.
85
+ def self.validate(value)
86
+ if value.instance_of? self
87
+ return (
88
+ APIHelper.valid_type?(value.name,
89
+ ->(val) { val.instance_of? String }) and
90
+ APIHelper.valid_type?(value.action,
91
+ ->(val) { DeploymentApiPlanChangeAction.validate(val) }) and
92
+ APIHelper.valid_type?(value.attributes,
93
+ ->(val) { DeploymentApiPlanAttributeChange.validate(val) },
94
+ is_model_hash: true,
95
+ is_inner_model_hash: true)
96
+ )
97
+ end
98
+
99
+ return false unless value.instance_of? Hash
100
+
101
+ (
102
+ APIHelper.valid_type?(value['name'],
103
+ ->(val) { val.instance_of? String }) and
104
+ APIHelper.valid_type?(value['action'],
105
+ ->(val) { DeploymentApiPlanChangeAction.validate(val) }) and
106
+ APIHelper.valid_type?(value['attributes'],
107
+ ->(val) { DeploymentApiPlanAttributeChange.validate(val) },
108
+ is_model_hash: true,
109
+ is_inner_model_hash: true)
110
+ )
111
+ end
112
+
113
+ # Provides a human-readable string representation of the object.
114
+ def to_s
115
+ class_name = self.class.name.split('::').last
116
+ "<#{class_name} module_name: #{@module_name}, name: #{@name}, action: #{@action},"\
117
+ " attributes: #{@attributes}>"
118
+ end
119
+
120
+ # Provides a debugging-friendly string with detailed object information.
121
+ def inspect
122
+ class_name = self.class.name.split('::').last
123
+ "<#{class_name} module_name: #{@module_name.inspect}, name: #{@name.inspect}, action:"\
124
+ " #{@action.inspect}, attributes: #{@attributes.inspect}>"
125
+ end
126
+ end
127
+ end
@@ -0,0 +1,240 @@
1
+ # env_zero_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module EnvZeroApi
7
+ # DeploymentApiPlanPlanResourceChange Model.
8
+ class DeploymentApiPlanPlanResourceChange < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [String]
14
+ attr_accessor :id
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [String]
18
+ attr_accessor :cloud_id
19
+
20
+ # TODO: Write general description for this method
21
+ # @return [String]
22
+ attr_accessor :module_name
23
+
24
+ # TODO: Write general description for this method
25
+ # @return [TrueClass | FalseClass]
26
+ attr_accessor :drift_by_cloud
27
+
28
+ # TODO: Write general description for this method
29
+ # @return [String]
30
+ attr_accessor :name
31
+
32
+ # TODO: Write general description for this method
33
+ # @return [String]
34
+ attr_accessor :provider_name
35
+
36
+ # TODO: Write general description for this method
37
+ # @return [String]
38
+ attr_accessor :type
39
+
40
+ # TODO: Write general description for this method
41
+ # @return [String]
42
+ attr_accessor :path
43
+
44
+ # TODO: Write general description for this method
45
+ # @return [DeploymentApiPlanChangeAction]
46
+ attr_accessor :action
47
+
48
+ # TODO: Write general description for this method
49
+ # @return [Array[DeploymentApiPlanAttributeChange]]
50
+ attr_accessor :attributes
51
+
52
+ # TODO: Write general description for this method
53
+ # @return [DeploymentApiPlanResourceImportData]
54
+ attr_accessor :importing
55
+
56
+ # TODO: Write general description for this method
57
+ # @return [ActionReason]
58
+ attr_accessor :action_reason
59
+
60
+ # TODO: Write general description for this method
61
+ # @return [TrueClass | FalseClass]
62
+ attr_accessor :create_before_destroy
63
+
64
+ # TODO: Write general description for this method
65
+ # @return [String]
66
+ attr_accessor :previous_address
67
+
68
+ # A mapping from model property names to API property names.
69
+ def self.names
70
+ @_hash = {} if @_hash.nil?
71
+ @_hash['id'] = 'id'
72
+ @_hash['cloud_id'] = 'cloudId'
73
+ @_hash['module_name'] = 'moduleName'
74
+ @_hash['drift_by_cloud'] = 'driftByCloud'
75
+ @_hash['name'] = 'name'
76
+ @_hash['provider_name'] = 'providerName'
77
+ @_hash['type'] = 'type'
78
+ @_hash['path'] = 'path'
79
+ @_hash['action'] = 'action'
80
+ @_hash['attributes'] = 'attributes'
81
+ @_hash['importing'] = 'importing'
82
+ @_hash['action_reason'] = 'actionReason'
83
+ @_hash['create_before_destroy'] = 'createBeforeDestroy'
84
+ @_hash['previous_address'] = 'previousAddress'
85
+ @_hash
86
+ end
87
+
88
+ # An array for optional fields
89
+ def self.optionals
90
+ %w[
91
+ id
92
+ cloud_id
93
+ module_name
94
+ drift_by_cloud
95
+ importing
96
+ action_reason
97
+ create_before_destroy
98
+ previous_address
99
+ ]
100
+ end
101
+
102
+ # An array for nullable fields
103
+ def self.nullables
104
+ []
105
+ end
106
+
107
+ def initialize(name:, provider_name:, type:, path:, action:, attributes:,
108
+ id: SKIP, cloud_id: SKIP, module_name: SKIP,
109
+ drift_by_cloud: SKIP, importing: SKIP, action_reason: SKIP,
110
+ create_before_destroy: SKIP, previous_address: SKIP)
111
+ @id = id unless id == SKIP
112
+ @cloud_id = cloud_id unless cloud_id == SKIP
113
+ @module_name = module_name unless module_name == SKIP
114
+ @drift_by_cloud = drift_by_cloud unless drift_by_cloud == SKIP
115
+ @name = name
116
+ @provider_name = provider_name
117
+ @type = type
118
+ @path = path
119
+ @action = action
120
+ @attributes = attributes
121
+ @importing = importing unless importing == SKIP
122
+ @action_reason = action_reason unless action_reason == SKIP
123
+ @create_before_destroy = create_before_destroy unless create_before_destroy == SKIP
124
+ @previous_address = previous_address unless previous_address == SKIP
125
+ end
126
+
127
+ # Creates an instance of the object from a hash.
128
+ def self.from_hash(hash)
129
+ return nil unless hash
130
+
131
+ # Extract variables from the hash.
132
+ name = hash.key?('name') ? hash['name'] : nil
133
+ provider_name = hash.key?('providerName') ? hash['providerName'] : nil
134
+ type = hash.key?('type') ? hash['type'] : nil
135
+ path = hash.key?('path') ? hash['path'] : nil
136
+ action = hash.key?('action') ? hash['action'] : nil
137
+ # Parameter is an array, so we need to iterate through it
138
+ attributes = nil
139
+ unless hash['attributes'].nil?
140
+ attributes = []
141
+ hash['attributes'].each do |structure|
142
+ attributes << (DeploymentApiPlanAttributeChange.from_hash(structure) if structure)
143
+ end
144
+ end
145
+
146
+ attributes = nil unless hash.key?('attributes')
147
+ id = hash.key?('id') ? hash['id'] : SKIP
148
+ cloud_id = hash.key?('cloudId') ? hash['cloudId'] : SKIP
149
+ module_name = hash.key?('moduleName') ? hash['moduleName'] : SKIP
150
+ drift_by_cloud = hash.key?('driftByCloud') ? hash['driftByCloud'] : SKIP
151
+ importing = DeploymentApiPlanResourceImportData.from_hash(hash['importing']) if
152
+ hash['importing']
153
+ action_reason = hash.key?('actionReason') ? hash['actionReason'] : SKIP
154
+ create_before_destroy =
155
+ hash.key?('createBeforeDestroy') ? hash['createBeforeDestroy'] : SKIP
156
+ previous_address =
157
+ hash.key?('previousAddress') ? hash['previousAddress'] : SKIP
158
+
159
+ # Create object from extracted values.
160
+ DeploymentApiPlanPlanResourceChange.new(name: name,
161
+ provider_name: provider_name,
162
+ type: type,
163
+ path: path,
164
+ action: action,
165
+ attributes: attributes,
166
+ id: id,
167
+ cloud_id: cloud_id,
168
+ module_name: module_name,
169
+ drift_by_cloud: drift_by_cloud,
170
+ importing: importing,
171
+ action_reason: action_reason,
172
+ create_before_destroy: create_before_destroy,
173
+ previous_address: previous_address)
174
+ end
175
+
176
+ # Validates an instance of the object from a given value.
177
+ # @param [DeploymentApiPlanPlanResourceChange | Hash] The value against the validation is performed.
178
+ def self.validate(value)
179
+ if value.instance_of? self
180
+ return (
181
+ APIHelper.valid_type?(value.name,
182
+ ->(val) { val.instance_of? String }) and
183
+ APIHelper.valid_type?(value.provider_name,
184
+ ->(val) { val.instance_of? String }) and
185
+ APIHelper.valid_type?(value.type,
186
+ ->(val) { val.instance_of? String }) and
187
+ APIHelper.valid_type?(value.path,
188
+ ->(val) { val.instance_of? String }) and
189
+ APIHelper.valid_type?(value.action,
190
+ ->(val) { DeploymentApiPlanChangeAction.validate(val) }) and
191
+ APIHelper.valid_type?(value.attributes,
192
+ ->(val) { DeploymentApiPlanAttributeChange.validate(val) },
193
+ is_model_hash: true,
194
+ is_inner_model_hash: true)
195
+ )
196
+ end
197
+
198
+ return false unless value.instance_of? Hash
199
+
200
+ (
201
+ APIHelper.valid_type?(value['name'],
202
+ ->(val) { val.instance_of? String }) and
203
+ APIHelper.valid_type?(value['providerName'],
204
+ ->(val) { val.instance_of? String }) and
205
+ APIHelper.valid_type?(value['type'],
206
+ ->(val) { val.instance_of? String }) and
207
+ APIHelper.valid_type?(value['path'],
208
+ ->(val) { val.instance_of? String }) and
209
+ APIHelper.valid_type?(value['action'],
210
+ ->(val) { DeploymentApiPlanChangeAction.validate(val) }) and
211
+ APIHelper.valid_type?(value['attributes'],
212
+ ->(val) { DeploymentApiPlanAttributeChange.validate(val) },
213
+ is_model_hash: true,
214
+ is_inner_model_hash: true)
215
+ )
216
+ end
217
+
218
+ # Provides a human-readable string representation of the object.
219
+ def to_s
220
+ class_name = self.class.name.split('::').last
221
+ "<#{class_name} id: #{@id}, cloud_id: #{@cloud_id}, module_name: #{@module_name},"\
222
+ " drift_by_cloud: #{@drift_by_cloud}, name: #{@name}, provider_name: #{@provider_name},"\
223
+ " type: #{@type}, path: #{@path}, action: #{@action}, attributes: #{@attributes}, importing:"\
224
+ " #{@importing}, action_reason: #{@action_reason}, create_before_destroy:"\
225
+ " #{@create_before_destroy}, previous_address: #{@previous_address}>"
226
+ end
227
+
228
+ # Provides a debugging-friendly string with detailed object information.
229
+ def inspect
230
+ class_name = self.class.name.split('::').last
231
+ "<#{class_name} id: #{@id.inspect}, cloud_id: #{@cloud_id.inspect}, module_name:"\
232
+ " #{@module_name.inspect}, drift_by_cloud: #{@drift_by_cloud.inspect}, name:"\
233
+ " #{@name.inspect}, provider_name: #{@provider_name.inspect}, type: #{@type.inspect}, path:"\
234
+ " #{@path.inspect}, action: #{@action.inspect}, attributes: #{@attributes.inspect},"\
235
+ " importing: #{@importing.inspect}, action_reason: #{@action_reason.inspect},"\
236
+ " create_before_destroy: #{@create_before_destroy.inspect}, previous_address:"\
237
+ " #{@previous_address.inspect}>"
238
+ end
239
+ end
240
+ end