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,675 @@
1
+ # env_zero_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ require 'date'
7
+ module EnvZeroApi
8
+ # BlueprintApiAddBlueprintToProjectResponse Model.
9
+ class BlueprintApiAddBlueprintToProjectResponse < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # TODO: Write general description for this method
14
+ # @return [String]
15
+ attr_accessor :name
16
+
17
+ # TODO: Write general description for this method
18
+ # @return [String]
19
+ attr_accessor :description
20
+
21
+ # TODO: Write general description for this method
22
+ # @return [BlueprintApiRetry]
23
+ attr_accessor :mretry
24
+
25
+ # TODO: Write general description for this method
26
+ # @return [TrueClass | FalseClass]
27
+ attr_accessor :run_tests_on_pull_request
28
+
29
+ # TODO: Write general description for this method
30
+ # @return [TrueClass | FalseClass]
31
+ attr_accessor :is_terragrunt_run_all
32
+
33
+ # TODO: Write general description for this method
34
+ # @return [Array[String]]
35
+ attr_accessor :project_ids
36
+
37
+ # When true, the template is available in all the organization's projects,
38
+ # including projects created in the future. Ignores projectIds.
39
+ # @return [TrueClass | FalseClass]
40
+ attr_accessor :is_all_projects
41
+
42
+ # When true, the template is available in all the organization's projects,
43
+ # including projects created in the future. Ignores projectIds.
44
+ # @return [String]
45
+ attr_accessor :tag_prefix
46
+
47
+ # When true, the template is available in all the organization's projects,
48
+ # including projects created in the future. Ignores projectIds.
49
+ # @return [String]
50
+ attr_accessor :creation_scope_id
51
+
52
+ # When true, the template is available in all the organization's projects,
53
+ # including projects created in the future. Ignores projectIds.
54
+ # @return [BlueprintApiCreationScope]
55
+ attr_accessor :creation_scope
56
+
57
+ # When true, the template is available in all the organization's projects,
58
+ # including projects created in the future. Ignores projectIds.
59
+ # @return [String]
60
+ attr_accessor :repository
61
+
62
+ # When true, the template is available in all the organization's projects,
63
+ # including projects created in the future. Ignores projectIds.
64
+ # @return [String]
65
+ attr_accessor :revision
66
+
67
+ # When true, the template is available in all the organization's projects,
68
+ # including projects created in the future. Ignores projectIds.
69
+ # @return [String]
70
+ attr_accessor :path
71
+
72
+ # When true, the template is available in all the organization's projects,
73
+ # including projects created in the future. Ignores projectIds.
74
+ # @return [String]
75
+ attr_accessor :file_name
76
+
77
+ # When true, the template is available in all the organization's projects,
78
+ # including projects created in the future. Ignores projectIds.
79
+ # @return [String]
80
+ attr_accessor :helm_chart_name
81
+
82
+ # A string representing semantic version of Terraform. If set to
83
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
84
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
85
+ # most recent one available for Terraform.
86
+ # @return [String]
87
+ attr_accessor :terraform_version
88
+
89
+ # A string representing semantic version of Terraform. If set to
90
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
91
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
92
+ # most recent one available for Terraform.
93
+ # @return [String]
94
+ attr_accessor :opentofu_version
95
+
96
+ # A string representing semantic version of Terraform. If set to
97
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
98
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
99
+ # most recent one available for Terraform.
100
+ # @return [String]
101
+ attr_accessor :terragrunt_version
102
+
103
+ # A string representing semantic version of Terraform. If set to
104
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
105
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
106
+ # most recent one available for Terraform.
107
+ # @return [BlueprintApiTerragruntTfBinary]
108
+ attr_accessor :terragrunt_tf_binary
109
+
110
+ # A string representing semantic version of Terraform. If set to
111
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
112
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
113
+ # most recent one available for Terraform.
114
+ # @return [String]
115
+ attr_accessor :pulumi_version
116
+
117
+ # A string representing semantic version of Terraform. If set to
118
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
119
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
120
+ # most recent one available for Terraform.
121
+ # @return [String]
122
+ attr_accessor :ansible_version
123
+
124
+ # A string representing semantic version of Terraform. If set to
125
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
126
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
127
+ # most recent one available for Terraform.
128
+ # @return [Object]
129
+ attr_accessor :type
130
+
131
+ # A string representing semantic version of Terraform. If set to
132
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
133
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
134
+ # most recent one available for Terraform.
135
+ # @return [String]
136
+ attr_accessor :token_name
137
+
138
+ # A string representing semantic version of Terraform. If set to
139
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
140
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
141
+ # most recent one available for Terraform.
142
+ # @return [String]
143
+ attr_accessor :token_id
144
+
145
+ # A string representing semantic version of Terraform. If set to
146
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
147
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
148
+ # most recent one available for Terraform.
149
+ # @return [Array[BlueprintApiSshKey]]
150
+ attr_accessor :ssh_keys
151
+
152
+ # A string representing semantic version of Terraform. If set to
153
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
154
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
155
+ # most recent one available for Terraform.
156
+ # @return [Float]
157
+ attr_accessor :github_installation_id
158
+
159
+ # A string representing semantic version of Terraform. If set to
160
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
161
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
162
+ # most recent one available for Terraform.
163
+ # @return [String]
164
+ attr_accessor :bitbucket_client_key
165
+
166
+ # A string representing semantic version of Terraform. If set to
167
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
168
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
169
+ # most recent one available for Terraform.
170
+ # @return [TrueClass | FalseClass]
171
+ attr_accessor :is_bitbucket_server
172
+
173
+ # A string representing semantic version of Terraform. If set to
174
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
175
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
176
+ # most recent one available for Terraform.
177
+ # @return [TrueClass | FalseClass]
178
+ attr_accessor :is_git_lab_enterprise
179
+
180
+ # A string representing semantic version of Terraform. If set to
181
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
182
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
183
+ # most recent one available for Terraform.
184
+ # @return [TrueClass | FalseClass]
185
+ attr_accessor :is_git_hub_enterprise
186
+
187
+ # A string representing semantic version of Terraform. If set to
188
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
189
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
190
+ # most recent one available for Terraform.
191
+ # @return [TrueClass | FalseClass]
192
+ attr_accessor :is_git_lab
193
+
194
+ # A string representing semantic version of Terraform. If set to
195
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
196
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
197
+ # most recent one available for Terraform.
198
+ # @return [TrueClass | FalseClass]
199
+ attr_accessor :is_azure_dev_ops
200
+
201
+ # A string representing semantic version of Terraform. If set to
202
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
203
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
204
+ # most recent one available for Terraform.
205
+ # @return [TrueClass | FalseClass]
206
+ attr_accessor :is_helm_repository
207
+
208
+ # A string representing semantic version of Terraform. If set to
209
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
210
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
211
+ # most recent one available for Terraform.
212
+ # @return [String]
213
+ attr_accessor :vcs_connection_id
214
+
215
+ # A string representing semantic version of Terraform. If set to
216
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
217
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
218
+ # most recent one available for Terraform.
219
+ # @return [String]
220
+ attr_accessor :id
221
+
222
+ # A string representing semantic version of Terraform. If set to
223
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
224
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
225
+ # most recent one available for Terraform.
226
+ # @return [User]
227
+ attr_accessor :author
228
+
229
+ # A string representing semantic version of Terraform. If set to
230
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
231
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
232
+ # most recent one available for Terraform.
233
+ # @return [DateTime]
234
+ attr_accessor :created_at
235
+
236
+ # A string representing semantic version of Terraform. If set to
237
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
238
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
239
+ # most recent one available for Terraform.
240
+ # @return [DateTime]
241
+ attr_accessor :updated_at
242
+
243
+ # A string representing semantic version of Terraform. If set to
244
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
245
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
246
+ # most recent one available for Terraform.
247
+ # @return [TrueClass | FalseClass]
248
+ attr_accessor :is_deleted
249
+
250
+ # A string representing semantic version of Terraform. If set to
251
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
252
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
253
+ # most recent one available for Terraform.
254
+ # @return [String]
255
+ attr_accessor :author_id
256
+
257
+ # A string representing semantic version of Terraform. If set to
258
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
259
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
260
+ # most recent one available for Terraform.
261
+ # @return [String]
262
+ attr_accessor :organization_id
263
+
264
+ # A string representing semantic version of Terraform. If set to
265
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
266
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
267
+ # most recent one available for Terraform.
268
+ # @return [String]
269
+ attr_accessor :project_id
270
+
271
+ # A string representing semantic version of Terraform. If set to
272
+ # "RESOLVE_FROM_TERRAFORM_CODE", the version will be determined by using
273
+ # tfenv's 'min-required'. When set to "latest", the version used will be the
274
+ # most recent one available for Terraform.
275
+ # @return [TrueClass | FalseClass]
276
+ attr_accessor :is_single_use
277
+
278
+ # A mapping from model property names to API property names.
279
+ def self.names
280
+ @_hash = {} if @_hash.nil?
281
+ @_hash['name'] = 'name'
282
+ @_hash['description'] = 'description'
283
+ @_hash['mretry'] = 'retry'
284
+ @_hash['run_tests_on_pull_request'] = 'runTestsOnPullRequest'
285
+ @_hash['is_terragrunt_run_all'] = 'isTerragruntRunAll'
286
+ @_hash['project_ids'] = 'projectIds'
287
+ @_hash['is_all_projects'] = 'isAllProjects'
288
+ @_hash['tag_prefix'] = 'tagPrefix'
289
+ @_hash['creation_scope_id'] = 'creationScopeId'
290
+ @_hash['creation_scope'] = 'creationScope'
291
+ @_hash['repository'] = 'repository'
292
+ @_hash['revision'] = 'revision'
293
+ @_hash['path'] = 'path'
294
+ @_hash['file_name'] = 'fileName'
295
+ @_hash['helm_chart_name'] = 'helmChartName'
296
+ @_hash['terraform_version'] = 'terraformVersion'
297
+ @_hash['opentofu_version'] = 'opentofuVersion'
298
+ @_hash['terragrunt_version'] = 'terragruntVersion'
299
+ @_hash['terragrunt_tf_binary'] = 'terragruntTfBinary'
300
+ @_hash['pulumi_version'] = 'pulumiVersion'
301
+ @_hash['ansible_version'] = 'ansibleVersion'
302
+ @_hash['type'] = 'type'
303
+ @_hash['token_name'] = 'tokenName'
304
+ @_hash['token_id'] = 'tokenId'
305
+ @_hash['ssh_keys'] = 'sshKeys'
306
+ @_hash['github_installation_id'] = 'githubInstallationId'
307
+ @_hash['bitbucket_client_key'] = 'bitbucketClientKey'
308
+ @_hash['is_bitbucket_server'] = 'isBitbucketServer'
309
+ @_hash['is_git_lab_enterprise'] = 'isGitLabEnterprise'
310
+ @_hash['is_git_hub_enterprise'] = 'isGitHubEnterprise'
311
+ @_hash['is_git_lab'] = 'isGitLab'
312
+ @_hash['is_azure_dev_ops'] = 'isAzureDevOps'
313
+ @_hash['is_helm_repository'] = 'isHelmRepository'
314
+ @_hash['vcs_connection_id'] = 'vcsConnectionId'
315
+ @_hash['id'] = 'id'
316
+ @_hash['author'] = 'author'
317
+ @_hash['created_at'] = 'createdAt'
318
+ @_hash['updated_at'] = 'updatedAt'
319
+ @_hash['is_deleted'] = 'isDeleted'
320
+ @_hash['author_id'] = 'authorId'
321
+ @_hash['organization_id'] = 'organizationId'
322
+ @_hash['project_id'] = 'projectId'
323
+ @_hash['is_single_use'] = 'isSingleUse'
324
+ @_hash
325
+ end
326
+
327
+ # An array for optional fields
328
+ def self.optionals
329
+ %w[
330
+ description
331
+ mretry
332
+ run_tests_on_pull_request
333
+ is_terragrunt_run_all
334
+ project_ids
335
+ is_all_projects
336
+ tag_prefix
337
+ revision
338
+ path
339
+ file_name
340
+ helm_chart_name
341
+ terraform_version
342
+ opentofu_version
343
+ terragrunt_version
344
+ terragrunt_tf_binary
345
+ pulumi_version
346
+ ansible_version
347
+ token_name
348
+ token_id
349
+ ssh_keys
350
+ github_installation_id
351
+ bitbucket_client_key
352
+ is_bitbucket_server
353
+ is_git_lab_enterprise
354
+ is_git_hub_enterprise
355
+ is_git_lab
356
+ is_azure_dev_ops
357
+ is_helm_repository
358
+ vcs_connection_id
359
+ id
360
+ author
361
+ created_at
362
+ updated_at
363
+ is_deleted
364
+ author_id
365
+ project_id
366
+ is_single_use
367
+ ]
368
+ end
369
+
370
+ # An array for nullable fields
371
+ def self.nullables
372
+ %w[
373
+ github_installation_id
374
+ bitbucket_client_key
375
+ vcs_connection_id
376
+ ]
377
+ end
378
+
379
+ def initialize(name:, creation_scope_id:, creation_scope:, repository:,
380
+ type:, organization_id:, description: SKIP, mretry: SKIP,
381
+ run_tests_on_pull_request: SKIP, is_terragrunt_run_all: SKIP,
382
+ project_ids: SKIP, is_all_projects: SKIP, tag_prefix: SKIP,
383
+ revision: SKIP, path: SKIP, file_name: SKIP,
384
+ helm_chart_name: SKIP, terraform_version: SKIP,
385
+ opentofu_version: SKIP, terragrunt_version: SKIP,
386
+ terragrunt_tf_binary: SKIP, pulumi_version: SKIP,
387
+ ansible_version: SKIP, token_name: SKIP, token_id: SKIP,
388
+ ssh_keys: SKIP, github_installation_id: SKIP,
389
+ bitbucket_client_key: SKIP, is_bitbucket_server: SKIP,
390
+ is_git_lab_enterprise: SKIP, is_git_hub_enterprise: SKIP,
391
+ is_git_lab: SKIP, is_azure_dev_ops: SKIP,
392
+ is_helm_repository: SKIP, vcs_connection_id: SKIP, id: SKIP,
393
+ author: SKIP, created_at: SKIP, updated_at: SKIP,
394
+ is_deleted: SKIP, author_id: SKIP, project_id: SKIP,
395
+ is_single_use: SKIP)
396
+ @name = name
397
+ @description = description unless description == SKIP
398
+ @mretry = mretry unless mretry == SKIP
399
+ unless run_tests_on_pull_request == SKIP
400
+ @run_tests_on_pull_request =
401
+ run_tests_on_pull_request
402
+ end
403
+ @is_terragrunt_run_all = is_terragrunt_run_all unless is_terragrunt_run_all == SKIP
404
+ @project_ids = project_ids unless project_ids == SKIP
405
+ @is_all_projects = is_all_projects unless is_all_projects == SKIP
406
+ @tag_prefix = tag_prefix unless tag_prefix == SKIP
407
+ @creation_scope_id = creation_scope_id
408
+ @creation_scope = creation_scope
409
+ @repository = repository
410
+ @revision = revision unless revision == SKIP
411
+ @path = path unless path == SKIP
412
+ @file_name = file_name unless file_name == SKIP
413
+ @helm_chart_name = helm_chart_name unless helm_chart_name == SKIP
414
+ @terraform_version = terraform_version unless terraform_version == SKIP
415
+ @opentofu_version = opentofu_version unless opentofu_version == SKIP
416
+ @terragrunt_version = terragrunt_version unless terragrunt_version == SKIP
417
+ @terragrunt_tf_binary = terragrunt_tf_binary unless terragrunt_tf_binary == SKIP
418
+ @pulumi_version = pulumi_version unless pulumi_version == SKIP
419
+ @ansible_version = ansible_version unless ansible_version == SKIP
420
+ @type = type
421
+ @token_name = token_name unless token_name == SKIP
422
+ @token_id = token_id unless token_id == SKIP
423
+ @ssh_keys = ssh_keys unless ssh_keys == SKIP
424
+ @github_installation_id = github_installation_id unless github_installation_id == SKIP
425
+ @bitbucket_client_key = bitbucket_client_key unless bitbucket_client_key == SKIP
426
+ @is_bitbucket_server = is_bitbucket_server unless is_bitbucket_server == SKIP
427
+ @is_git_lab_enterprise = is_git_lab_enterprise unless is_git_lab_enterprise == SKIP
428
+ @is_git_hub_enterprise = is_git_hub_enterprise unless is_git_hub_enterprise == SKIP
429
+ @is_git_lab = is_git_lab unless is_git_lab == SKIP
430
+ @is_azure_dev_ops = is_azure_dev_ops unless is_azure_dev_ops == SKIP
431
+ @is_helm_repository = is_helm_repository unless is_helm_repository == SKIP
432
+ @vcs_connection_id = vcs_connection_id unless vcs_connection_id == SKIP
433
+ @id = id unless id == SKIP
434
+ @author = author unless author == SKIP
435
+ @created_at = created_at unless created_at == SKIP
436
+ @updated_at = updated_at unless updated_at == SKIP
437
+ @is_deleted = is_deleted unless is_deleted == SKIP
438
+ @author_id = author_id unless author_id == SKIP
439
+ @organization_id = organization_id
440
+ @project_id = project_id unless project_id == SKIP
441
+ @is_single_use = is_single_use unless is_single_use == SKIP
442
+ end
443
+
444
+ # Creates an instance of the object from a hash.
445
+ def self.from_hash(hash)
446
+ return nil unless hash
447
+
448
+ # Extract variables from the hash.
449
+ name = hash.key?('name') ? hash['name'] : nil
450
+ creation_scope_id =
451
+ hash.key?('creationScopeId') ? hash['creationScopeId'] : nil
452
+ creation_scope = hash.key?('creationScope') ? hash['creationScope'] : nil
453
+ repository = hash.key?('repository') ? hash['repository'] : nil
454
+ type = hash.key?('type') ? APIHelper.deserialize_union_type(
455
+ UnionTypeLookUp.get(:BlueprintApiBlueprintType), hash['type']
456
+ ) : nil
457
+ organization_id =
458
+ hash.key?('organizationId') ? hash['organizationId'] : nil
459
+ description = hash.key?('description') ? hash['description'] : SKIP
460
+ mretry = BlueprintApiRetry.from_hash(hash['retry']) if hash['retry']
461
+ run_tests_on_pull_request =
462
+ hash.key?('runTestsOnPullRequest') ? hash['runTestsOnPullRequest'] : SKIP
463
+ is_terragrunt_run_all =
464
+ hash.key?('isTerragruntRunAll') ? hash['isTerragruntRunAll'] : SKIP
465
+ project_ids = hash.key?('projectIds') ? hash['projectIds'] : SKIP
466
+ is_all_projects =
467
+ hash.key?('isAllProjects') ? hash['isAllProjects'] : SKIP
468
+ tag_prefix = hash.key?('tagPrefix') ? hash['tagPrefix'] : SKIP
469
+ revision = hash.key?('revision') ? hash['revision'] : SKIP
470
+ path = hash.key?('path') ? hash['path'] : SKIP
471
+ file_name = hash.key?('fileName') ? hash['fileName'] : SKIP
472
+ helm_chart_name =
473
+ hash.key?('helmChartName') ? hash['helmChartName'] : SKIP
474
+ terraform_version =
475
+ hash.key?('terraformVersion') ? hash['terraformVersion'] : SKIP
476
+ opentofu_version =
477
+ hash.key?('opentofuVersion') ? hash['opentofuVersion'] : SKIP
478
+ terragrunt_version =
479
+ hash.key?('terragruntVersion') ? hash['terragruntVersion'] : SKIP
480
+ terragrunt_tf_binary =
481
+ hash.key?('terragruntTfBinary') ? hash['terragruntTfBinary'] : SKIP
482
+ pulumi_version = hash.key?('pulumiVersion') ? hash['pulumiVersion'] : SKIP
483
+ ansible_version =
484
+ hash.key?('ansibleVersion') ? hash['ansibleVersion'] : SKIP
485
+ token_name = hash.key?('tokenName') ? hash['tokenName'] : SKIP
486
+ token_id = hash.key?('tokenId') ? hash['tokenId'] : SKIP
487
+ # Parameter is an array, so we need to iterate through it
488
+ ssh_keys = nil
489
+ unless hash['sshKeys'].nil?
490
+ ssh_keys = []
491
+ hash['sshKeys'].each do |structure|
492
+ ssh_keys << (BlueprintApiSshKey.from_hash(structure) if structure)
493
+ end
494
+ end
495
+
496
+ ssh_keys = SKIP unless hash.key?('sshKeys')
497
+ github_installation_id =
498
+ hash.key?('githubInstallationId') ? hash['githubInstallationId'] : SKIP
499
+ bitbucket_client_key =
500
+ hash.key?('bitbucketClientKey') ? hash['bitbucketClientKey'] : SKIP
501
+ is_bitbucket_server =
502
+ hash.key?('isBitbucketServer') ? hash['isBitbucketServer'] : SKIP
503
+ is_git_lab_enterprise =
504
+ hash.key?('isGitLabEnterprise') ? hash['isGitLabEnterprise'] : SKIP
505
+ is_git_hub_enterprise =
506
+ hash.key?('isGitHubEnterprise') ? hash['isGitHubEnterprise'] : SKIP
507
+ is_git_lab = hash.key?('isGitLab') ? hash['isGitLab'] : SKIP
508
+ is_azure_dev_ops =
509
+ hash.key?('isAzureDevOps') ? hash['isAzureDevOps'] : SKIP
510
+ is_helm_repository =
511
+ hash.key?('isHelmRepository') ? hash['isHelmRepository'] : SKIP
512
+ vcs_connection_id =
513
+ hash.key?('vcsConnectionId') ? hash['vcsConnectionId'] : SKIP
514
+ id = hash.key?('id') ? hash['id'] : SKIP
515
+ author = User.from_hash(hash['author']) if hash['author']
516
+ created_at = if hash.key?('createdAt')
517
+ (DateTimeHelper.from_rfc3339(hash['createdAt']) if hash['createdAt'])
518
+ else
519
+ SKIP
520
+ end
521
+ updated_at = if hash.key?('updatedAt')
522
+ (DateTimeHelper.from_rfc3339(hash['updatedAt']) if hash['updatedAt'])
523
+ else
524
+ SKIP
525
+ end
526
+ is_deleted = hash.key?('isDeleted') ? hash['isDeleted'] : SKIP
527
+ author_id = hash.key?('authorId') ? hash['authorId'] : SKIP
528
+ project_id = hash.key?('projectId') ? hash['projectId'] : SKIP
529
+ is_single_use = hash.key?('isSingleUse') ? hash['isSingleUse'] : SKIP
530
+
531
+ # Create object from extracted values.
532
+ BlueprintApiAddBlueprintToProjectResponse.new(name: name,
533
+ creation_scope_id: creation_scope_id,
534
+ creation_scope: creation_scope,
535
+ repository: repository,
536
+ type: type,
537
+ organization_id: organization_id,
538
+ description: description,
539
+ mretry: mretry,
540
+ run_tests_on_pull_request: run_tests_on_pull_request,
541
+ is_terragrunt_run_all: is_terragrunt_run_all,
542
+ project_ids: project_ids,
543
+ is_all_projects: is_all_projects,
544
+ tag_prefix: tag_prefix,
545
+ revision: revision,
546
+ path: path,
547
+ file_name: file_name,
548
+ helm_chart_name: helm_chart_name,
549
+ terraform_version: terraform_version,
550
+ opentofu_version: opentofu_version,
551
+ terragrunt_version: terragrunt_version,
552
+ terragrunt_tf_binary: terragrunt_tf_binary,
553
+ pulumi_version: pulumi_version,
554
+ ansible_version: ansible_version,
555
+ token_name: token_name,
556
+ token_id: token_id,
557
+ ssh_keys: ssh_keys,
558
+ github_installation_id: github_installation_id,
559
+ bitbucket_client_key: bitbucket_client_key,
560
+ is_bitbucket_server: is_bitbucket_server,
561
+ is_git_lab_enterprise: is_git_lab_enterprise,
562
+ is_git_hub_enterprise: is_git_hub_enterprise,
563
+ is_git_lab: is_git_lab,
564
+ is_azure_dev_ops: is_azure_dev_ops,
565
+ is_helm_repository: is_helm_repository,
566
+ vcs_connection_id: vcs_connection_id,
567
+ id: id,
568
+ author: author,
569
+ created_at: created_at,
570
+ updated_at: updated_at,
571
+ is_deleted: is_deleted,
572
+ author_id: author_id,
573
+ project_id: project_id,
574
+ is_single_use: is_single_use)
575
+ end
576
+
577
+ def to_custom_created_at
578
+ DateTimeHelper.to_rfc3339(created_at)
579
+ end
580
+
581
+ def to_custom_updated_at
582
+ DateTimeHelper.to_rfc3339(updated_at)
583
+ end
584
+
585
+ # Validates an instance of the object from a given value.
586
+ # @param [BlueprintApiAddBlueprintToProjectResponse | Hash] The value against the validation is performed.
587
+ def self.validate(value)
588
+ if value.instance_of? self
589
+ return (
590
+ APIHelper.valid_type?(value.name,
591
+ ->(val) { val.instance_of? String }) and
592
+ APIHelper.valid_type?(value.creation_scope_id,
593
+ ->(val) { val.instance_of? String }) and
594
+ APIHelper.valid_type?(value.creation_scope,
595
+ ->(val) { BlueprintApiCreationScope.validate(val) }) and
596
+ APIHelper.valid_type?(value.repository,
597
+ ->(val) { val.instance_of? String }) and
598
+ UnionTypeLookUp.get(:BlueprintApiBlueprintType)
599
+ .validate(value.type) and
600
+ APIHelper.valid_type?(value.organization_id,
601
+ ->(val) { val.instance_of? String })
602
+ )
603
+ end
604
+
605
+ return false unless value.instance_of? Hash
606
+
607
+ (
608
+ APIHelper.valid_type?(value['name'],
609
+ ->(val) { val.instance_of? String }) and
610
+ APIHelper.valid_type?(value['creationScopeId'],
611
+ ->(val) { val.instance_of? String }) and
612
+ APIHelper.valid_type?(value['creationScope'],
613
+ ->(val) { BlueprintApiCreationScope.validate(val) }) and
614
+ APIHelper.valid_type?(value['repository'],
615
+ ->(val) { val.instance_of? String }) and
616
+ UnionTypeLookUp.get(:BlueprintApiBlueprintType)
617
+ .validate(value['type']) and
618
+ APIHelper.valid_type?(value['organizationId'],
619
+ ->(val) { val.instance_of? String })
620
+ )
621
+ end
622
+
623
+ # Provides a human-readable string representation of the object.
624
+ def to_s
625
+ class_name = self.class.name.split('::').last
626
+ "<#{class_name} name: #{@name}, description: #{@description}, mretry: #{@mretry},"\
627
+ " run_tests_on_pull_request: #{@run_tests_on_pull_request}, is_terragrunt_run_all:"\
628
+ " #{@is_terragrunt_run_all}, project_ids: #{@project_ids}, is_all_projects:"\
629
+ " #{@is_all_projects}, tag_prefix: #{@tag_prefix}, creation_scope_id: #{@creation_scope_id},"\
630
+ " creation_scope: #{@creation_scope}, repository: #{@repository}, revision: #{@revision},"\
631
+ " path: #{@path}, file_name: #{@file_name}, helm_chart_name: #{@helm_chart_name},"\
632
+ " terraform_version: #{@terraform_version}, opentofu_version: #{@opentofu_version},"\
633
+ " terragrunt_version: #{@terragrunt_version}, terragrunt_tf_binary:"\
634
+ " #{@terragrunt_tf_binary}, pulumi_version: #{@pulumi_version}, ansible_version:"\
635
+ " #{@ansible_version}, type: #{@type}, token_name: #{@token_name}, token_id: #{@token_id},"\
636
+ " ssh_keys: #{@ssh_keys}, github_installation_id: #{@github_installation_id},"\
637
+ " bitbucket_client_key: #{@bitbucket_client_key}, is_bitbucket_server:"\
638
+ " #{@is_bitbucket_server}, is_git_lab_enterprise: #{@is_git_lab_enterprise},"\
639
+ " is_git_hub_enterprise: #{@is_git_hub_enterprise}, is_git_lab: #{@is_git_lab},"\
640
+ " is_azure_dev_ops: #{@is_azure_dev_ops}, is_helm_repository: #{@is_helm_repository},"\
641
+ " vcs_connection_id: #{@vcs_connection_id}, id: #{@id}, author: #{@author}, created_at:"\
642
+ " #{@created_at}, updated_at: #{@updated_at}, is_deleted: #{@is_deleted}, author_id:"\
643
+ " #{@author_id}, organization_id: #{@organization_id}, project_id: #{@project_id},"\
644
+ " is_single_use: #{@is_single_use}>"
645
+ end
646
+
647
+ # Provides a debugging-friendly string with detailed object information.
648
+ def inspect
649
+ class_name = self.class.name.split('::').last
650
+ "<#{class_name} name: #{@name.inspect}, description: #{@description.inspect}, mretry:"\
651
+ " #{@mretry.inspect}, run_tests_on_pull_request: #{@run_tests_on_pull_request.inspect},"\
652
+ " is_terragrunt_run_all: #{@is_terragrunt_run_all.inspect}, project_ids:"\
653
+ " #{@project_ids.inspect}, is_all_projects: #{@is_all_projects.inspect}, tag_prefix:"\
654
+ " #{@tag_prefix.inspect}, creation_scope_id: #{@creation_scope_id.inspect}, creation_scope:"\
655
+ " #{@creation_scope.inspect}, repository: #{@repository.inspect}, revision:"\
656
+ " #{@revision.inspect}, path: #{@path.inspect}, file_name: #{@file_name.inspect},"\
657
+ " helm_chart_name: #{@helm_chart_name.inspect}, terraform_version:"\
658
+ " #{@terraform_version.inspect}, opentofu_version: #{@opentofu_version.inspect},"\
659
+ " terragrunt_version: #{@terragrunt_version.inspect}, terragrunt_tf_binary:"\
660
+ " #{@terragrunt_tf_binary.inspect}, pulumi_version: #{@pulumi_version.inspect},"\
661
+ " ansible_version: #{@ansible_version.inspect}, type: #{@type.inspect}, token_name:"\
662
+ " #{@token_name.inspect}, token_id: #{@token_id.inspect}, ssh_keys: #{@ssh_keys.inspect},"\
663
+ " github_installation_id: #{@github_installation_id.inspect}, bitbucket_client_key:"\
664
+ " #{@bitbucket_client_key.inspect}, is_bitbucket_server: #{@is_bitbucket_server.inspect},"\
665
+ " is_git_lab_enterprise: #{@is_git_lab_enterprise.inspect}, is_git_hub_enterprise:"\
666
+ " #{@is_git_hub_enterprise.inspect}, is_git_lab: #{@is_git_lab.inspect}, is_azure_dev_ops:"\
667
+ " #{@is_azure_dev_ops.inspect}, is_helm_repository: #{@is_helm_repository.inspect},"\
668
+ " vcs_connection_id: #{@vcs_connection_id.inspect}, id: #{@id.inspect}, author:"\
669
+ " #{@author.inspect}, created_at: #{@created_at.inspect}, updated_at:"\
670
+ " #{@updated_at.inspect}, is_deleted: #{@is_deleted.inspect}, author_id:"\
671
+ " #{@author_id.inspect}, organization_id: #{@organization_id.inspect}, project_id:"\
672
+ " #{@project_id.inspect}, is_single_use: #{@is_single_use.inspect}>"
673
+ end
674
+ end
675
+ end