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,157 @@
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
+ # DriftApiIgnoredDriftCauseGroup4 Model.
8
+ class DriftApiIgnoredDriftCauseGroup4 < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [String]
14
+ attr_reader :cause_kind
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [CauseKeyParts4]
18
+ attr_accessor :cause_key_parts
19
+
20
+ # TODO: Write general description for this method
21
+ # @return [String]
22
+ attr_accessor :cause_id
23
+
24
+ # TODO: Write general description for this method
25
+ # @return [String]
26
+ attr_accessor :first_seen_at
27
+
28
+ # TODO: Write general description for this method
29
+ # @return [Array[DriftApiIgnoredDriftCauseEnvironment]]
30
+ attr_accessor :environments
31
+
32
+ # A mapping from model property names to API property names.
33
+ def self.names
34
+ @_hash = {} if @_hash.nil?
35
+ @_hash['cause_kind'] = 'causeKind'
36
+ @_hash['cause_key_parts'] = 'causeKeyParts'
37
+ @_hash['cause_id'] = 'causeId'
38
+ @_hash['first_seen_at'] = 'firstSeenAt'
39
+ @_hash['environments'] = 'environments'
40
+ @_hash
41
+ end
42
+
43
+ # An array for optional fields
44
+ def self.optionals
45
+ []
46
+ end
47
+
48
+ # An array for nullable fields
49
+ def self.nullables
50
+ []
51
+ end
52
+
53
+ def initialize(cause_key_parts:, cause_id:, first_seen_at:, environments:,
54
+ additional_properties: nil)
55
+ # Add additional model properties to the instance
56
+ additional_properties = {} if additional_properties.nil?
57
+
58
+ @cause_kind = 'variableChange'
59
+ @cause_key_parts = cause_key_parts
60
+ @cause_id = cause_id
61
+ @first_seen_at = first_seen_at
62
+ @environments = environments
63
+ @additional_properties = additional_properties
64
+ end
65
+
66
+ # Creates an instance of the object from a hash.
67
+ def self.from_hash(hash)
68
+ return nil unless hash
69
+
70
+ # Extract variables from the hash.
71
+ cause_key_parts = CauseKeyParts4.from_hash(hash['causeKeyParts']) if hash['causeKeyParts']
72
+ cause_id = hash.key?('causeId') ? hash['causeId'] : nil
73
+ first_seen_at = hash.key?('firstSeenAt') ? hash['firstSeenAt'] : nil
74
+ # Parameter is an array, so we need to iterate through it
75
+ environments = nil
76
+ unless hash['environments'].nil?
77
+ environments = []
78
+ hash['environments'].each do |structure|
79
+ environments << (DriftApiIgnoredDriftCauseEnvironment.from_hash(structure) if structure)
80
+ end
81
+ end
82
+
83
+ environments = nil unless hash.key?('environments')
84
+
85
+ # Create a new hash for additional properties, removing known properties.
86
+ new_hash = hash.reject { |k, _| names.value?(k) }
87
+
88
+ additional_properties = APIHelper.get_additional_properties(
89
+ new_hash, proc { |value| value }
90
+ )
91
+
92
+ # Create object from extracted values.
93
+ DriftApiIgnoredDriftCauseGroup4.new(cause_key_parts: cause_key_parts,
94
+ cause_id: cause_id,
95
+ first_seen_at: first_seen_at,
96
+ environments: environments,
97
+ additional_properties: additional_properties)
98
+ end
99
+
100
+ # Validates an instance of the object from a given value.
101
+ # @param [DriftApiIgnoredDriftCauseGroup4 | Hash] The value against the validation is performed.
102
+ def self.validate(value)
103
+ if value.instance_of? self
104
+ return (
105
+ APIHelper.valid_type?(value.cause_kind,
106
+ ->(val) { val.instance_of? String }) and
107
+ APIHelper.valid_type?(value.cause_key_parts,
108
+ ->(val) { CauseKeyParts4.validate(val) },
109
+ is_model_hash: true) and
110
+ APIHelper.valid_type?(value.cause_id,
111
+ ->(val) { val.instance_of? String }) and
112
+ APIHelper.valid_type?(value.first_seen_at,
113
+ ->(val) { val.instance_of? String }) and
114
+ APIHelper.valid_type?(value.environments,
115
+ ->(val) { DriftApiIgnoredDriftCauseEnvironment.validate(val) },
116
+ is_model_hash: true,
117
+ is_inner_model_hash: true)
118
+ )
119
+ end
120
+
121
+ return false unless value.instance_of? Hash
122
+
123
+ (
124
+ APIHelper.valid_type?(value['causeKind'],
125
+ ->(val) { val.instance_of? String }) and
126
+ APIHelper.valid_type?(value['causeKeyParts'],
127
+ ->(val) { CauseKeyParts4.validate(val) },
128
+ is_model_hash: true) and
129
+ APIHelper.valid_type?(value['causeId'],
130
+ ->(val) { val.instance_of? String }) and
131
+ APIHelper.valid_type?(value['firstSeenAt'],
132
+ ->(val) { val.instance_of? String }) and
133
+ APIHelper.valid_type?(value['environments'],
134
+ ->(val) { DriftApiIgnoredDriftCauseEnvironment.validate(val) },
135
+ is_model_hash: true,
136
+ is_inner_model_hash: true)
137
+ )
138
+ end
139
+
140
+ # Provides a human-readable string representation of the object.
141
+ def to_s
142
+ class_name = self.class.name.split('::').last
143
+ "<#{class_name} cause_kind: #{@cause_kind}, cause_key_parts: #{@cause_key_parts}, cause_id:"\
144
+ " #{@cause_id}, first_seen_at: #{@first_seen_at}, environments: #{@environments},"\
145
+ " additional_properties: #{@additional_properties}>"
146
+ end
147
+
148
+ # Provides a debugging-friendly string with detailed object information.
149
+ def inspect
150
+ class_name = self.class.name.split('::').last
151
+ "<#{class_name} cause_kind: #{@cause_kind.inspect}, cause_key_parts:"\
152
+ " #{@cause_key_parts.inspect}, cause_id: #{@cause_id.inspect}, first_seen_at:"\
153
+ " #{@first_seen_at.inspect}, environments: #{@environments.inspect}, additional_properties:"\
154
+ " #{@additional_properties}>"
155
+ end
156
+ end
157
+ end
@@ -0,0 +1,157 @@
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
+ # DriftApiIgnoredDriftCauseGroup5 Model.
8
+ class DriftApiIgnoredDriftCauseGroup5 < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [String]
14
+ attr_reader :cause_kind
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [CauseKeyParts5]
18
+ attr_accessor :cause_key_parts
19
+
20
+ # TODO: Write general description for this method
21
+ # @return [String]
22
+ attr_accessor :cause_id
23
+
24
+ # TODO: Write general description for this method
25
+ # @return [String]
26
+ attr_accessor :first_seen_at
27
+
28
+ # TODO: Write general description for this method
29
+ # @return [Array[DriftApiIgnoredDriftCauseEnvironment]]
30
+ attr_accessor :environments
31
+
32
+ # A mapping from model property names to API property names.
33
+ def self.names
34
+ @_hash = {} if @_hash.nil?
35
+ @_hash['cause_kind'] = 'causeKind'
36
+ @_hash['cause_key_parts'] = 'causeKeyParts'
37
+ @_hash['cause_id'] = 'causeId'
38
+ @_hash['first_seen_at'] = 'firstSeenAt'
39
+ @_hash['environments'] = 'environments'
40
+ @_hash
41
+ end
42
+
43
+ # An array for optional fields
44
+ def self.optionals
45
+ []
46
+ end
47
+
48
+ # An array for nullable fields
49
+ def self.nullables
50
+ []
51
+ end
52
+
53
+ def initialize(cause_key_parts:, cause_id:, first_seen_at:, environments:,
54
+ additional_properties: nil)
55
+ # Add additional model properties to the instance
56
+ additional_properties = {} if additional_properties.nil?
57
+
58
+ @cause_kind = 'stateChange'
59
+ @cause_key_parts = cause_key_parts
60
+ @cause_id = cause_id
61
+ @first_seen_at = first_seen_at
62
+ @environments = environments
63
+ @additional_properties = additional_properties
64
+ end
65
+
66
+ # Creates an instance of the object from a hash.
67
+ def self.from_hash(hash)
68
+ return nil unless hash
69
+
70
+ # Extract variables from the hash.
71
+ cause_key_parts = CauseKeyParts5.from_hash(hash['causeKeyParts']) if hash['causeKeyParts']
72
+ cause_id = hash.key?('causeId') ? hash['causeId'] : nil
73
+ first_seen_at = hash.key?('firstSeenAt') ? hash['firstSeenAt'] : nil
74
+ # Parameter is an array, so we need to iterate through it
75
+ environments = nil
76
+ unless hash['environments'].nil?
77
+ environments = []
78
+ hash['environments'].each do |structure|
79
+ environments << (DriftApiIgnoredDriftCauseEnvironment.from_hash(structure) if structure)
80
+ end
81
+ end
82
+
83
+ environments = nil unless hash.key?('environments')
84
+
85
+ # Create a new hash for additional properties, removing known properties.
86
+ new_hash = hash.reject { |k, _| names.value?(k) }
87
+
88
+ additional_properties = APIHelper.get_additional_properties(
89
+ new_hash, proc { |value| value }
90
+ )
91
+
92
+ # Create object from extracted values.
93
+ DriftApiIgnoredDriftCauseGroup5.new(cause_key_parts: cause_key_parts,
94
+ cause_id: cause_id,
95
+ first_seen_at: first_seen_at,
96
+ environments: environments,
97
+ additional_properties: additional_properties)
98
+ end
99
+
100
+ # Validates an instance of the object from a given value.
101
+ # @param [DriftApiIgnoredDriftCauseGroup5 | Hash] The value against the validation is performed.
102
+ def self.validate(value)
103
+ if value.instance_of? self
104
+ return (
105
+ APIHelper.valid_type?(value.cause_kind,
106
+ ->(val) { val.instance_of? String }) and
107
+ APIHelper.valid_type?(value.cause_key_parts,
108
+ ->(val) { CauseKeyParts5.validate(val) },
109
+ is_model_hash: true) and
110
+ APIHelper.valid_type?(value.cause_id,
111
+ ->(val) { val.instance_of? String }) and
112
+ APIHelper.valid_type?(value.first_seen_at,
113
+ ->(val) { val.instance_of? String }) and
114
+ APIHelper.valid_type?(value.environments,
115
+ ->(val) { DriftApiIgnoredDriftCauseEnvironment.validate(val) },
116
+ is_model_hash: true,
117
+ is_inner_model_hash: true)
118
+ )
119
+ end
120
+
121
+ return false unless value.instance_of? Hash
122
+
123
+ (
124
+ APIHelper.valid_type?(value['causeKind'],
125
+ ->(val) { val.instance_of? String }) and
126
+ APIHelper.valid_type?(value['causeKeyParts'],
127
+ ->(val) { CauseKeyParts5.validate(val) },
128
+ is_model_hash: true) and
129
+ APIHelper.valid_type?(value['causeId'],
130
+ ->(val) { val.instance_of? String }) and
131
+ APIHelper.valid_type?(value['firstSeenAt'],
132
+ ->(val) { val.instance_of? String }) and
133
+ APIHelper.valid_type?(value['environments'],
134
+ ->(val) { DriftApiIgnoredDriftCauseEnvironment.validate(val) },
135
+ is_model_hash: true,
136
+ is_inner_model_hash: true)
137
+ )
138
+ end
139
+
140
+ # Provides a human-readable string representation of the object.
141
+ def to_s
142
+ class_name = self.class.name.split('::').last
143
+ "<#{class_name} cause_kind: #{@cause_kind}, cause_key_parts: #{@cause_key_parts}, cause_id:"\
144
+ " #{@cause_id}, first_seen_at: #{@first_seen_at}, environments: #{@environments},"\
145
+ " additional_properties: #{@additional_properties}>"
146
+ end
147
+
148
+ # Provides a debugging-friendly string with detailed object information.
149
+ def inspect
150
+ class_name = self.class.name.split('::').last
151
+ "<#{class_name} cause_kind: #{@cause_kind.inspect}, cause_key_parts:"\
152
+ " #{@cause_key_parts.inspect}, cause_id: #{@cause_id.inspect}, first_seen_at:"\
153
+ " #{@first_seen_at.inspect}, environments: #{@environments.inspect}, additional_properties:"\
154
+ " #{@additional_properties}>"
155
+ end
156
+ end
157
+ end
@@ -0,0 +1,40 @@
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
+ # DriftApi.StateModifyingDeploymentType.
8
+ class DriftApiStateModifyingDeploymentType
9
+ DRIFT_API_STATE_MODIFYING_DEPLOYMENT_TYPE = [
10
+ # TODO: Write general description for REMOTEAPPLY
11
+ REMOTEAPPLY = 'remote-apply'.freeze,
12
+
13
+ # TODO: Write general description for TASK
14
+ TASK = 'task'.freeze,
15
+
16
+ # TODO: Write general description for APPLYBYCOMMENT
17
+ APPLYBYCOMMENT = 'apply-by-comment'.freeze
18
+ ].freeze
19
+
20
+ def self.validate(value)
21
+ return false if value.nil?
22
+
23
+ DRIFT_API_STATE_MODIFYING_DEPLOYMENT_TYPE.include?(value)
24
+ end
25
+
26
+ def self.from_value(value, default_value = REMOTEAPPLY)
27
+ return default_value if value.nil?
28
+
29
+ str = value.to_s.strip
30
+
31
+ case str.downcase
32
+ when 'remoteapply' then REMOTEAPPLY
33
+ when 'task' then TASK
34
+ when 'applybycomment' then APPLYBYCOMMENT
35
+ else
36
+ default_value
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,72 @@
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
+ # DriftApiUnIgnoreDriftCauseRequestBody Model.
8
+ class DriftApiUnIgnoreDriftCauseRequestBody < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [String]
14
+ attr_accessor :organization_id
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [Array[String]]
18
+ attr_accessor :environment_ids
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['organization_id'] = 'organizationId'
24
+ @_hash['environment_ids'] = 'environmentIds'
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(organization_id:, environment_ids:)
39
+ @organization_id = organization_id
40
+ @environment_ids = environment_ids
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
+ organization_id =
49
+ hash.key?('organizationId') ? hash['organizationId'] : nil
50
+ environment_ids =
51
+ hash.key?('environmentIds') ? hash['environmentIds'] : nil
52
+
53
+ # Create object from extracted values.
54
+ DriftApiUnIgnoreDriftCauseRequestBody.new(organization_id: organization_id,
55
+ environment_ids: environment_ids)
56
+ end
57
+
58
+ # Provides a human-readable string representation of the object.
59
+ def to_s
60
+ class_name = self.class.name.split('::').last
61
+ "<#{class_name} organization_id: #{@organization_id}, environment_ids:"\
62
+ " #{@environment_ids}>"
63
+ end
64
+
65
+ # Provides a debugging-friendly string with detailed object information.
66
+ def inspect
67
+ class_name = self.class.name.split('::').last
68
+ "<#{class_name} organization_id: #{@organization_id.inspect}, environment_ids:"\
69
+ " #{@environment_ids.inspect}>"
70
+ end
71
+ end
72
+ end
@@ -0,0 +1,77 @@
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
+ # DriftApiUnIgnoreDriftCauseResponse Model.
8
+ class DriftApiUnIgnoreDriftCauseResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [Array[String]]
14
+ attr_accessor :un_ignored
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [Array[DriftApiDriftCauseSkip]]
18
+ attr_accessor :skipped
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['un_ignored'] = 'unIgnored'
24
+ @_hash['skipped'] = 'skipped'
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(un_ignored:, skipped:)
39
+ @un_ignored = un_ignored
40
+ @skipped = skipped
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
+ un_ignored = hash.key?('unIgnored') ? hash['unIgnored'] : nil
49
+ # Parameter is an array, so we need to iterate through it
50
+ skipped = nil
51
+ unless hash['skipped'].nil?
52
+ skipped = []
53
+ hash['skipped'].each do |structure|
54
+ skipped << (DriftApiDriftCauseSkip.from_hash(structure) if structure)
55
+ end
56
+ end
57
+
58
+ skipped = nil unless hash.key?('skipped')
59
+
60
+ # Create object from extracted values.
61
+ DriftApiUnIgnoreDriftCauseResponse.new(un_ignored: un_ignored,
62
+ skipped: skipped)
63
+ end
64
+
65
+ # Provides a human-readable string representation of the object.
66
+ def to_s
67
+ class_name = self.class.name.split('::').last
68
+ "<#{class_name} un_ignored: #{@un_ignored}, skipped: #{@skipped}>"
69
+ end
70
+
71
+ # Provides a debugging-friendly string with detailed object information.
72
+ def inspect
73
+ class_name = self.class.name.split('::').last
74
+ "<#{class_name} un_ignored: #{@un_ignored.inspect}, skipped: #{@skipped.inspect}>"
75
+ end
76
+ end
77
+ end
@@ -0,0 +1,40 @@
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
+ # DriftApi.VariableChangeType.
8
+ class DriftApiVariableChangeType
9
+ DRIFT_API_VARIABLE_CHANGE_TYPE = [
10
+ # TODO: Write general description for ADDED
11
+ ADDED = 'added'.freeze,
12
+
13
+ # TODO: Write general description for REMOVED
14
+ REMOVED = 'removed'.freeze,
15
+
16
+ # TODO: Write general description for MODIFIED
17
+ MODIFIED = 'modified'.freeze
18
+ ].freeze
19
+
20
+ def self.validate(value)
21
+ return false if value.nil?
22
+
23
+ DRIFT_API_VARIABLE_CHANGE_TYPE.include?(value)
24
+ end
25
+
26
+ def self.from_value(value, default_value = ADDED)
27
+ return default_value if value.nil?
28
+
29
+ str = value.to_s.strip
30
+
31
+ case str.downcase
32
+ when 'added' then ADDED
33
+ when 'removed' then REMOVED
34
+ when 'modified' then MODIFIED
35
+ else
36
+ default_value
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,87 @@
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
+ # DriftCause Model.
8
+ class DriftCause < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [Array[EnvironmentApiDriftCauseUnappliedCommit]]
14
+ attr_accessor :unapplied_commits
15
+
16
+ # A mapping from model property names to API property names.
17
+ def self.names
18
+ @_hash = {} if @_hash.nil?
19
+ @_hash['unapplied_commits'] = 'unappliedCommits'
20
+ @_hash
21
+ end
22
+
23
+ # An array for optional fields
24
+ def self.optionals
25
+ []
26
+ end
27
+
28
+ # An array for nullable fields
29
+ def self.nullables
30
+ []
31
+ end
32
+
33
+ def initialize(unapplied_commits:)
34
+ @unapplied_commits = unapplied_commits
35
+ end
36
+
37
+ # Creates an instance of the object from a hash.
38
+ def self.from_hash(hash)
39
+ return nil unless hash
40
+
41
+ # Extract variables from the hash.
42
+ # Parameter is an array, so we need to iterate through it
43
+ unapplied_commits = nil
44
+ unless hash['unappliedCommits'].nil?
45
+ unapplied_commits = []
46
+ hash['unappliedCommits'].each do |structure|
47
+ unapplied_commits << (EnvironmentApiDriftCauseUnappliedCommit.from_hash(structure) if structure)
48
+ end
49
+ end
50
+
51
+ unapplied_commits = nil unless hash.key?('unappliedCommits')
52
+
53
+ # Create object from extracted values.
54
+ DriftCause.new(unapplied_commits: unapplied_commits)
55
+ end
56
+
57
+ # Validates an instance of the object from a given value.
58
+ # @param [DriftCause | Hash] The value against the validation is performed.
59
+ def self.validate(value)
60
+ if value.instance_of? self
61
+ return APIHelper.valid_type?(value.unapplied_commits,
62
+ ->(val) { EnvironmentApiDriftCauseUnappliedCommit.validate(val) },
63
+ is_model_hash: true,
64
+ is_inner_model_hash: true)
65
+ end
66
+
67
+ return false unless value.instance_of? Hash
68
+
69
+ APIHelper.valid_type?(value['unappliedCommits'],
70
+ ->(val) { EnvironmentApiDriftCauseUnappliedCommit.validate(val) },
71
+ is_model_hash: true,
72
+ is_inner_model_hash: true)
73
+ end
74
+
75
+ # Provides a human-readable string representation of the object.
76
+ def to_s
77
+ class_name = self.class.name.split('::').last
78
+ "<#{class_name} unapplied_commits: #{@unapplied_commits}>"
79
+ end
80
+
81
+ # Provides a debugging-friendly string with detailed object information.
82
+ def inspect
83
+ class_name = self.class.name.split('::').last
84
+ "<#{class_name} unapplied_commits: #{@unapplied_commits.inspect}>"
85
+ end
86
+ end
87
+ end
@@ -0,0 +1,44 @@
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
+ # EnvironmentApi.AutoDriftRemediationStrategy.
8
+ class EnvironmentApiAutoDriftRemediationStrategy
9
+ ENVIRONMENT_API_AUTO_DRIFT_REMEDIATION_STRATEGY = [
10
+ # TODO: Write general description for DISABLED
11
+ DISABLED = 'DISABLED'.freeze,
12
+
13
+ # TODO: Write general description for CODE_TO_CLOUD
14
+ CODE_TO_CLOUD = 'CODE_TO_CLOUD'.freeze,
15
+
16
+ # TODO: Write general description for CLOUD_TO_CODE
17
+ CLOUD_TO_CODE = 'CLOUD_TO_CODE'.freeze,
18
+
19
+ # TODO: Write general description for SMART_REMEDIATION
20
+ SMART_REMEDIATION = 'SMART_REMEDIATION'.freeze
21
+ ].freeze
22
+
23
+ def self.validate(value)
24
+ return false if value.nil?
25
+
26
+ ENVIRONMENT_API_AUTO_DRIFT_REMEDIATION_STRATEGY.include?(value)
27
+ end
28
+
29
+ def self.from_value(value, default_value = DISABLED)
30
+ return default_value if value.nil?
31
+
32
+ str = value.to_s.strip
33
+
34
+ case str.downcase
35
+ when 'disabled' then DISABLED
36
+ when 'code_to_cloud' then CODE_TO_CLOUD
37
+ when 'cloud_to_code' then CLOUD_TO_CODE
38
+ when 'smart_remediation' then SMART_REMEDIATION
39
+ else
40
+ default_value
41
+ end
42
+ end
43
+ end
44
+ end