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,26 @@
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
+ # BlueprintApi.BlueprintType.
8
+ class BlueprintApiBlueprintType
9
+ BLUEPRINT_API_BLUEPRINT_TYPE = [
10
+ # TODO: Write general description for WORKFLOW
11
+ WORKFLOW = 'workflow'.freeze
12
+ ].freeze
13
+
14
+ def self.validate(value)
15
+ return false if value.nil?
16
+
17
+ BLUEPRINT_API_BLUEPRINT_TYPE.include?(value)
18
+ end
19
+
20
+ def self.from_value(value, default_value = WORKFLOW)
21
+ return default_value if value.nil?
22
+
23
+ default_value
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,26 @@
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
+ # BlueprintApi.BlueprintType1.
8
+ class BlueprintApiBlueprintType1
9
+ BLUEPRINT_API_BLUEPRINT_TYPE1 = [
10
+ # TODO: Write general description for DISCOVERYCONFIG
11
+ DISCOVERYCONFIG = 'discovery-config'.freeze
12
+ ].freeze
13
+
14
+ def self.validate(value)
15
+ return false if value.nil?
16
+
17
+ BLUEPRINT_API_BLUEPRINT_TYPE1.include?(value)
18
+ end
19
+
20
+ def self.from_value(value, default_value = DISCOVERYCONFIG)
21
+ return default_value if value.nil?
22
+
23
+ default_value
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,544 @@
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
+ # BlueprintApiCreateBlueprintRequestBody Model.
8
+ class BlueprintApiCreateBlueprintRequestBody < 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 [String]
18
+ attr_accessor :name
19
+
20
+ # TODO: Write general description for this method
21
+ # @return [String]
22
+ attr_accessor :description
23
+
24
+ # TODO: Write general description for this method
25
+ # @return [BlueprintApiRetry]
26
+ attr_accessor :mretry
27
+
28
+ # TODO: Write general description for this method
29
+ # @return [TrueClass | FalseClass]
30
+ attr_accessor :run_tests_on_pull_request
31
+
32
+ # TODO: Write general description for this method
33
+ # @return [TrueClass | FalseClass]
34
+ attr_accessor :is_terragrunt_run_all
35
+
36
+ # TODO: Write general description for this method
37
+ # @return [Array[String]]
38
+ attr_accessor :project_ids
39
+
40
+ # When true, the template is available in all the organization's projects,
41
+ # including projects created in the future. Ignores projectIds.
42
+ # @return [TrueClass | FalseClass]
43
+ attr_accessor :is_all_projects
44
+
45
+ # When true, the template is available in all the organization's projects,
46
+ # including projects created in the future. Ignores projectIds.
47
+ # @return [String]
48
+ attr_accessor :tag_prefix
49
+
50
+ # When true, the template is available in all the organization's projects,
51
+ # including projects created in the future. Ignores projectIds.
52
+ # @return [String]
53
+ attr_accessor :creation_scope_id
54
+
55
+ # When true, the template is available in all the organization's projects,
56
+ # including projects created in the future. Ignores projectIds.
57
+ # @return [BlueprintApiCreationScope]
58
+ attr_accessor :creation_scope
59
+
60
+ # When true, the template is available in all the organization's projects,
61
+ # including projects created in the future. Ignores projectIds.
62
+ # @return [String]
63
+ attr_accessor :repository
64
+
65
+ # When true, the template is available in all the organization's projects,
66
+ # including projects created in the future. Ignores projectIds.
67
+ # @return [String]
68
+ attr_accessor :revision
69
+
70
+ # When true, the template is available in all the organization's projects,
71
+ # including projects created in the future. Ignores projectIds.
72
+ # @return [String]
73
+ attr_accessor :path
74
+
75
+ # When true, the template is available in all the organization's projects,
76
+ # including projects created in the future. Ignores projectIds.
77
+ # @return [String]
78
+ attr_accessor :file_name
79
+
80
+ # When true, the template is available in all the organization's projects,
81
+ # including projects created in the future. Ignores projectIds.
82
+ # @return [String]
83
+ attr_accessor :helm_chart_name
84
+
85
+ # A string representing semantic version of Terraform. If set to
86
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
87
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
88
+ # most recent one available for Terraform.
89
+ # @return [String]
90
+ attr_accessor :terraform_version
91
+
92
+ # A string representing semantic version of Terraform. If set to
93
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
94
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
95
+ # most recent one available for Terraform.
96
+ # @return [String]
97
+ attr_accessor :opentofu_version
98
+
99
+ # A string representing semantic version of Terraform. If set to
100
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
101
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
102
+ # most recent one available for Terraform.
103
+ # @return [String]
104
+ attr_accessor :terragrunt_version
105
+
106
+ # A string representing semantic version of Terraform. If set to
107
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
108
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
109
+ # most recent one available for Terraform.
110
+ # @return [BlueprintApiTerragruntTfBinary]
111
+ attr_accessor :terragrunt_tf_binary
112
+
113
+ # A string representing semantic version of Terraform. If set to
114
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
115
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
116
+ # most recent one available for Terraform.
117
+ # @return [String]
118
+ attr_accessor :pulumi_version
119
+
120
+ # A string representing semantic version of Terraform. If set to
121
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
122
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
123
+ # most recent one available for Terraform.
124
+ # @return [String]
125
+ attr_accessor :ansible_version
126
+
127
+ # A string representing semantic version of Terraform. If set to
128
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
129
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
130
+ # most recent one available for Terraform.
131
+ # @return [Object]
132
+ attr_accessor :type
133
+
134
+ # A string representing semantic version of Terraform. If set to
135
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
136
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
137
+ # most recent one available for Terraform.
138
+ # @return [String]
139
+ attr_accessor :token_name
140
+
141
+ # A string representing semantic version of Terraform. If set to
142
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
143
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
144
+ # most recent one available for Terraform.
145
+ # @return [String]
146
+ attr_accessor :token_id
147
+
148
+ # A string representing semantic version of Terraform. If set to
149
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
150
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
151
+ # most recent one available for Terraform.
152
+ # @return [Array[BlueprintApiSshKey]]
153
+ attr_accessor :ssh_keys
154
+
155
+ # A string representing semantic version of Terraform. If set to
156
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
157
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
158
+ # most recent one available for Terraform.
159
+ # @return [Float]
160
+ attr_accessor :github_installation_id
161
+
162
+ # A string representing semantic version of Terraform. If set to
163
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
164
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
165
+ # most recent one available for Terraform.
166
+ # @return [String]
167
+ attr_accessor :bitbucket_client_key
168
+
169
+ # A string representing semantic version of Terraform. If set to
170
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
171
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
172
+ # most recent one available for Terraform.
173
+ # @return [TrueClass | FalseClass]
174
+ attr_accessor :is_bitbucket_server
175
+
176
+ # A string representing semantic version of Terraform. If set to
177
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
178
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
179
+ # most recent one available for Terraform.
180
+ # @return [TrueClass | FalseClass]
181
+ attr_accessor :is_git_lab_enterprise
182
+
183
+ # A string representing semantic version of Terraform. If set to
184
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
185
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
186
+ # most recent one available for Terraform.
187
+ # @return [TrueClass | FalseClass]
188
+ attr_accessor :is_git_hub_enterprise
189
+
190
+ # A string representing semantic version of Terraform. If set to
191
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
192
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
193
+ # most recent one available for Terraform.
194
+ # @return [TrueClass | FalseClass]
195
+ attr_accessor :is_git_lab
196
+
197
+ # A string representing semantic version of Terraform. If set to
198
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
199
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
200
+ # most recent one available for Terraform.
201
+ # @return [TrueClass | FalseClass]
202
+ attr_accessor :is_azure_dev_ops
203
+
204
+ # A string representing semantic version of Terraform. If set to
205
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
206
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
207
+ # most recent one available for Terraform.
208
+ # @return [TrueClass | FalseClass]
209
+ attr_accessor :is_helm_repository
210
+
211
+ # A string representing semantic version of Terraform. If set to
212
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
213
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
214
+ # most recent one available for Terraform.
215
+ # @return [String]
216
+ attr_accessor :vcs_connection_id
217
+
218
+ # A mapping from model property names to API property names.
219
+ def self.names
220
+ @_hash = {} if @_hash.nil?
221
+ @_hash['organization_id'] = 'organizationId'
222
+ @_hash['name'] = 'name'
223
+ @_hash['description'] = 'description'
224
+ @_hash['mretry'] = 'retry'
225
+ @_hash['run_tests_on_pull_request'] = 'runTestsOnPullRequest'
226
+ @_hash['is_terragrunt_run_all'] = 'isTerragruntRunAll'
227
+ @_hash['project_ids'] = 'projectIds'
228
+ @_hash['is_all_projects'] = 'isAllProjects'
229
+ @_hash['tag_prefix'] = 'tagPrefix'
230
+ @_hash['creation_scope_id'] = 'creationScopeId'
231
+ @_hash['creation_scope'] = 'creationScope'
232
+ @_hash['repository'] = 'repository'
233
+ @_hash['revision'] = 'revision'
234
+ @_hash['path'] = 'path'
235
+ @_hash['file_name'] = 'fileName'
236
+ @_hash['helm_chart_name'] = 'helmChartName'
237
+ @_hash['terraform_version'] = 'terraformVersion'
238
+ @_hash['opentofu_version'] = 'opentofuVersion'
239
+ @_hash['terragrunt_version'] = 'terragruntVersion'
240
+ @_hash['terragrunt_tf_binary'] = 'terragruntTfBinary'
241
+ @_hash['pulumi_version'] = 'pulumiVersion'
242
+ @_hash['ansible_version'] = 'ansibleVersion'
243
+ @_hash['type'] = 'type'
244
+ @_hash['token_name'] = 'tokenName'
245
+ @_hash['token_id'] = 'tokenId'
246
+ @_hash['ssh_keys'] = 'sshKeys'
247
+ @_hash['github_installation_id'] = 'githubInstallationId'
248
+ @_hash['bitbucket_client_key'] = 'bitbucketClientKey'
249
+ @_hash['is_bitbucket_server'] = 'isBitbucketServer'
250
+ @_hash['is_git_lab_enterprise'] = 'isGitLabEnterprise'
251
+ @_hash['is_git_hub_enterprise'] = 'isGitHubEnterprise'
252
+ @_hash['is_git_lab'] = 'isGitLab'
253
+ @_hash['is_azure_dev_ops'] = 'isAzureDevOps'
254
+ @_hash['is_helm_repository'] = 'isHelmRepository'
255
+ @_hash['vcs_connection_id'] = 'vcsConnectionId'
256
+ @_hash
257
+ end
258
+
259
+ # An array for optional fields
260
+ def self.optionals
261
+ %w[
262
+ description
263
+ mretry
264
+ run_tests_on_pull_request
265
+ is_terragrunt_run_all
266
+ project_ids
267
+ is_all_projects
268
+ tag_prefix
269
+ creation_scope_id
270
+ creation_scope
271
+ revision
272
+ path
273
+ file_name
274
+ helm_chart_name
275
+ terraform_version
276
+ opentofu_version
277
+ terragrunt_version
278
+ terragrunt_tf_binary
279
+ pulumi_version
280
+ ansible_version
281
+ token_name
282
+ token_id
283
+ ssh_keys
284
+ github_installation_id
285
+ bitbucket_client_key
286
+ is_bitbucket_server
287
+ is_git_lab_enterprise
288
+ is_git_hub_enterprise
289
+ is_git_lab
290
+ is_azure_dev_ops
291
+ is_helm_repository
292
+ vcs_connection_id
293
+ ]
294
+ end
295
+
296
+ # An array for nullable fields
297
+ def self.nullables
298
+ %w[
299
+ github_installation_id
300
+ bitbucket_client_key
301
+ vcs_connection_id
302
+ ]
303
+ end
304
+
305
+ def initialize(organization_id:, name:, repository:, type:,
306
+ description: SKIP, mretry: SKIP,
307
+ run_tests_on_pull_request: SKIP, is_terragrunt_run_all: SKIP,
308
+ project_ids: SKIP, is_all_projects: SKIP, tag_prefix: SKIP,
309
+ creation_scope_id: SKIP, creation_scope: SKIP,
310
+ revision: SKIP, path: SKIP, file_name: SKIP,
311
+ helm_chart_name: SKIP, terraform_version: SKIP,
312
+ opentofu_version: SKIP, terragrunt_version: SKIP,
313
+ terragrunt_tf_binary: SKIP, pulumi_version: SKIP,
314
+ ansible_version: SKIP, token_name: SKIP, token_id: SKIP,
315
+ ssh_keys: SKIP, github_installation_id: SKIP,
316
+ bitbucket_client_key: SKIP, is_bitbucket_server: SKIP,
317
+ is_git_lab_enterprise: SKIP, is_git_hub_enterprise: SKIP,
318
+ is_git_lab: SKIP, is_azure_dev_ops: SKIP,
319
+ is_helm_repository: SKIP, vcs_connection_id: SKIP)
320
+ @organization_id = organization_id
321
+ @name = name
322
+ @description = description unless description == SKIP
323
+ @mretry = mretry unless mretry == SKIP
324
+ unless run_tests_on_pull_request == SKIP
325
+ @run_tests_on_pull_request =
326
+ run_tests_on_pull_request
327
+ end
328
+ @is_terragrunt_run_all = is_terragrunt_run_all unless is_terragrunt_run_all == SKIP
329
+ @project_ids = project_ids unless project_ids == SKIP
330
+ @is_all_projects = is_all_projects unless is_all_projects == SKIP
331
+ @tag_prefix = tag_prefix unless tag_prefix == SKIP
332
+ @creation_scope_id = creation_scope_id unless creation_scope_id == SKIP
333
+ @creation_scope = creation_scope unless creation_scope == SKIP
334
+ @repository = repository
335
+ @revision = revision unless revision == SKIP
336
+ @path = path unless path == SKIP
337
+ @file_name = file_name unless file_name == SKIP
338
+ @helm_chart_name = helm_chart_name unless helm_chart_name == SKIP
339
+ @terraform_version = terraform_version unless terraform_version == SKIP
340
+ @opentofu_version = opentofu_version unless opentofu_version == SKIP
341
+ @terragrunt_version = terragrunt_version unless terragrunt_version == SKIP
342
+ @terragrunt_tf_binary = terragrunt_tf_binary unless terragrunt_tf_binary == SKIP
343
+ @pulumi_version = pulumi_version unless pulumi_version == SKIP
344
+ @ansible_version = ansible_version unless ansible_version == SKIP
345
+ @type = type
346
+ @token_name = token_name unless token_name == SKIP
347
+ @token_id = token_id unless token_id == SKIP
348
+ @ssh_keys = ssh_keys unless ssh_keys == SKIP
349
+ @github_installation_id = github_installation_id unless github_installation_id == SKIP
350
+ @bitbucket_client_key = bitbucket_client_key unless bitbucket_client_key == SKIP
351
+ @is_bitbucket_server = is_bitbucket_server unless is_bitbucket_server == SKIP
352
+ @is_git_lab_enterprise = is_git_lab_enterprise unless is_git_lab_enterprise == SKIP
353
+ @is_git_hub_enterprise = is_git_hub_enterprise unless is_git_hub_enterprise == SKIP
354
+ @is_git_lab = is_git_lab unless is_git_lab == SKIP
355
+ @is_azure_dev_ops = is_azure_dev_ops unless is_azure_dev_ops == SKIP
356
+ @is_helm_repository = is_helm_repository unless is_helm_repository == SKIP
357
+ @vcs_connection_id = vcs_connection_id unless vcs_connection_id == SKIP
358
+ end
359
+
360
+ # Creates an instance of the object from a hash.
361
+ def self.from_hash(hash)
362
+ return nil unless hash
363
+
364
+ # Extract variables from the hash.
365
+ organization_id =
366
+ hash.key?('organizationId') ? hash['organizationId'] : nil
367
+ name = hash.key?('name') ? hash['name'] : nil
368
+ repository = hash.key?('repository') ? hash['repository'] : nil
369
+ type = hash.key?('type') ? APIHelper.deserialize_union_type(
370
+ UnionTypeLookUp.get(:BlueprintApiBlueprintType), hash['type']
371
+ ) : nil
372
+ description = hash.key?('description') ? hash['description'] : SKIP
373
+ mretry = BlueprintApiRetry.from_hash(hash['retry']) if hash['retry']
374
+ run_tests_on_pull_request =
375
+ hash.key?('runTestsOnPullRequest') ? hash['runTestsOnPullRequest'] : SKIP
376
+ is_terragrunt_run_all =
377
+ hash.key?('isTerragruntRunAll') ? hash['isTerragruntRunAll'] : SKIP
378
+ project_ids = hash.key?('projectIds') ? hash['projectIds'] : SKIP
379
+ is_all_projects =
380
+ hash.key?('isAllProjects') ? hash['isAllProjects'] : SKIP
381
+ tag_prefix = hash.key?('tagPrefix') ? hash['tagPrefix'] : SKIP
382
+ creation_scope_id =
383
+ hash.key?('creationScopeId') ? hash['creationScopeId'] : SKIP
384
+ creation_scope = hash.key?('creationScope') ? hash['creationScope'] : SKIP
385
+ revision = hash.key?('revision') ? hash['revision'] : SKIP
386
+ path = hash.key?('path') ? hash['path'] : SKIP
387
+ file_name = hash.key?('fileName') ? hash['fileName'] : SKIP
388
+ helm_chart_name =
389
+ hash.key?('helmChartName') ? hash['helmChartName'] : SKIP
390
+ terraform_version =
391
+ hash.key?('terraformVersion') ? hash['terraformVersion'] : SKIP
392
+ opentofu_version =
393
+ hash.key?('opentofuVersion') ? hash['opentofuVersion'] : SKIP
394
+ terragrunt_version =
395
+ hash.key?('terragruntVersion') ? hash['terragruntVersion'] : SKIP
396
+ terragrunt_tf_binary =
397
+ hash.key?('terragruntTfBinary') ? hash['terragruntTfBinary'] : SKIP
398
+ pulumi_version = hash.key?('pulumiVersion') ? hash['pulumiVersion'] : SKIP
399
+ ansible_version =
400
+ hash.key?('ansibleVersion') ? hash['ansibleVersion'] : SKIP
401
+ token_name = hash.key?('tokenName') ? hash['tokenName'] : SKIP
402
+ token_id = hash.key?('tokenId') ? hash['tokenId'] : SKIP
403
+ # Parameter is an array, so we need to iterate through it
404
+ ssh_keys = nil
405
+ unless hash['sshKeys'].nil?
406
+ ssh_keys = []
407
+ hash['sshKeys'].each do |structure|
408
+ ssh_keys << (BlueprintApiSshKey.from_hash(structure) if structure)
409
+ end
410
+ end
411
+
412
+ ssh_keys = SKIP unless hash.key?('sshKeys')
413
+ github_installation_id =
414
+ hash.key?('githubInstallationId') ? hash['githubInstallationId'] : SKIP
415
+ bitbucket_client_key =
416
+ hash.key?('bitbucketClientKey') ? hash['bitbucketClientKey'] : SKIP
417
+ is_bitbucket_server =
418
+ hash.key?('isBitbucketServer') ? hash['isBitbucketServer'] : SKIP
419
+ is_git_lab_enterprise =
420
+ hash.key?('isGitLabEnterprise') ? hash['isGitLabEnterprise'] : SKIP
421
+ is_git_hub_enterprise =
422
+ hash.key?('isGitHubEnterprise') ? hash['isGitHubEnterprise'] : SKIP
423
+ is_git_lab = hash.key?('isGitLab') ? hash['isGitLab'] : SKIP
424
+ is_azure_dev_ops =
425
+ hash.key?('isAzureDevOps') ? hash['isAzureDevOps'] : SKIP
426
+ is_helm_repository =
427
+ hash.key?('isHelmRepository') ? hash['isHelmRepository'] : SKIP
428
+ vcs_connection_id =
429
+ hash.key?('vcsConnectionId') ? hash['vcsConnectionId'] : SKIP
430
+
431
+ # Create object from extracted values.
432
+ BlueprintApiCreateBlueprintRequestBody.new(organization_id: organization_id,
433
+ name: name,
434
+ repository: repository,
435
+ type: type,
436
+ description: description,
437
+ mretry: mretry,
438
+ run_tests_on_pull_request: run_tests_on_pull_request,
439
+ is_terragrunt_run_all: is_terragrunt_run_all,
440
+ project_ids: project_ids,
441
+ is_all_projects: is_all_projects,
442
+ tag_prefix: tag_prefix,
443
+ creation_scope_id: creation_scope_id,
444
+ creation_scope: creation_scope,
445
+ revision: revision,
446
+ path: path,
447
+ file_name: file_name,
448
+ helm_chart_name: helm_chart_name,
449
+ terraform_version: terraform_version,
450
+ opentofu_version: opentofu_version,
451
+ terragrunt_version: terragrunt_version,
452
+ terragrunt_tf_binary: terragrunt_tf_binary,
453
+ pulumi_version: pulumi_version,
454
+ ansible_version: ansible_version,
455
+ token_name: token_name,
456
+ token_id: token_id,
457
+ ssh_keys: ssh_keys,
458
+ github_installation_id: github_installation_id,
459
+ bitbucket_client_key: bitbucket_client_key,
460
+ is_bitbucket_server: is_bitbucket_server,
461
+ is_git_lab_enterprise: is_git_lab_enterprise,
462
+ is_git_hub_enterprise: is_git_hub_enterprise,
463
+ is_git_lab: is_git_lab,
464
+ is_azure_dev_ops: is_azure_dev_ops,
465
+ is_helm_repository: is_helm_repository,
466
+ vcs_connection_id: vcs_connection_id)
467
+ end
468
+
469
+ # Validates an instance of the object from a given value.
470
+ # @param [BlueprintApiCreateBlueprintRequestBody | Hash] The value against the validation is performed.
471
+ def self.validate(value)
472
+ if value.instance_of? self
473
+ return (
474
+ APIHelper.valid_type?(value.organization_id,
475
+ ->(val) { val.instance_of? String }) and
476
+ APIHelper.valid_type?(value.name,
477
+ ->(val) { val.instance_of? String }) and
478
+ APIHelper.valid_type?(value.repository,
479
+ ->(val) { val.instance_of? String }) and
480
+ UnionTypeLookUp.get(:BlueprintApiBlueprintType)
481
+ .validate(value.type)
482
+ )
483
+ end
484
+
485
+ return false unless value.instance_of? Hash
486
+
487
+ (
488
+ APIHelper.valid_type?(value['organizationId'],
489
+ ->(val) { val.instance_of? String }) and
490
+ APIHelper.valid_type?(value['name'],
491
+ ->(val) { val.instance_of? String }) and
492
+ APIHelper.valid_type?(value['repository'],
493
+ ->(val) { val.instance_of? String }) and
494
+ UnionTypeLookUp.get(:BlueprintApiBlueprintType)
495
+ .validate(value['type'])
496
+ )
497
+ end
498
+
499
+ # Provides a human-readable string representation of the object.
500
+ def to_s
501
+ class_name = self.class.name.split('::').last
502
+ "<#{class_name} organization_id: #{@organization_id}, name: #{@name}, description:"\
503
+ " #{@description}, mretry: #{@mretry}, run_tests_on_pull_request:"\
504
+ " #{@run_tests_on_pull_request}, is_terragrunt_run_all: #{@is_terragrunt_run_all},"\
505
+ " project_ids: #{@project_ids}, is_all_projects: #{@is_all_projects}, tag_prefix:"\
506
+ " #{@tag_prefix}, creation_scope_id: #{@creation_scope_id}, creation_scope:"\
507
+ " #{@creation_scope}, repository: #{@repository}, revision: #{@revision}, path: #{@path},"\
508
+ " file_name: #{@file_name}, helm_chart_name: #{@helm_chart_name}, terraform_version:"\
509
+ " #{@terraform_version}, opentofu_version: #{@opentofu_version}, terragrunt_version:"\
510
+ " #{@terragrunt_version}, terragrunt_tf_binary: #{@terragrunt_tf_binary}, pulumi_version:"\
511
+ " #{@pulumi_version}, ansible_version: #{@ansible_version}, type: #{@type}, token_name:"\
512
+ " #{@token_name}, token_id: #{@token_id}, ssh_keys: #{@ssh_keys}, github_installation_id:"\
513
+ " #{@github_installation_id}, bitbucket_client_key: #{@bitbucket_client_key},"\
514
+ " is_bitbucket_server: #{@is_bitbucket_server}, is_git_lab_enterprise:"\
515
+ " #{@is_git_lab_enterprise}, is_git_hub_enterprise: #{@is_git_hub_enterprise}, is_git_lab:"\
516
+ " #{@is_git_lab}, is_azure_dev_ops: #{@is_azure_dev_ops}, is_helm_repository:"\
517
+ " #{@is_helm_repository}, vcs_connection_id: #{@vcs_connection_id}>"
518
+ end
519
+
520
+ # Provides a debugging-friendly string with detailed object information.
521
+ def inspect
522
+ class_name = self.class.name.split('::').last
523
+ "<#{class_name} organization_id: #{@organization_id.inspect}, name: #{@name.inspect},"\
524
+ " description: #{@description.inspect}, mretry: #{@mretry.inspect},"\
525
+ " run_tests_on_pull_request: #{@run_tests_on_pull_request.inspect}, is_terragrunt_run_all:"\
526
+ " #{@is_terragrunt_run_all.inspect}, project_ids: #{@project_ids.inspect}, is_all_projects:"\
527
+ " #{@is_all_projects.inspect}, tag_prefix: #{@tag_prefix.inspect}, creation_scope_id:"\
528
+ " #{@creation_scope_id.inspect}, creation_scope: #{@creation_scope.inspect}, repository:"\
529
+ " #{@repository.inspect}, revision: #{@revision.inspect}, path: #{@path.inspect}, file_name:"\
530
+ " #{@file_name.inspect}, helm_chart_name: #{@helm_chart_name.inspect}, terraform_version:"\
531
+ " #{@terraform_version.inspect}, opentofu_version: #{@opentofu_version.inspect},"\
532
+ " terragrunt_version: #{@terragrunt_version.inspect}, terragrunt_tf_binary:"\
533
+ " #{@terragrunt_tf_binary.inspect}, pulumi_version: #{@pulumi_version.inspect},"\
534
+ " ansible_version: #{@ansible_version.inspect}, type: #{@type.inspect}, token_name:"\
535
+ " #{@token_name.inspect}, token_id: #{@token_id.inspect}, ssh_keys: #{@ssh_keys.inspect},"\
536
+ " github_installation_id: #{@github_installation_id.inspect}, bitbucket_client_key:"\
537
+ " #{@bitbucket_client_key.inspect}, is_bitbucket_server: #{@is_bitbucket_server.inspect},"\
538
+ " is_git_lab_enterprise: #{@is_git_lab_enterprise.inspect}, is_git_hub_enterprise:"\
539
+ " #{@is_git_hub_enterprise.inspect}, is_git_lab: #{@is_git_lab.inspect}, is_azure_dev_ops:"\
540
+ " #{@is_azure_dev_ops.inspect}, is_helm_repository: #{@is_helm_repository.inspect},"\
541
+ " vcs_connection_id: #{@vcs_connection_id.inspect}>"
542
+ end
543
+ end
544
+ end