capo-codedeploy 0.1.0__py3-none-any.whl

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 (472) hide show
  1. capo_codedeploy/__init__.py +70 -0
  2. capo_codedeploy/_async.py +25 -0
  3. capo_codedeploy/_auth/_identity.py +16 -0
  4. capo_codedeploy/_auth/_providers.py +886 -0
  5. capo_codedeploy/_auth/_signers.py +88 -0
  6. capo_codedeploy/_auth/_sigv4.py +434 -0
  7. capo_codedeploy/_auth/_zapros_handler.py +80 -0
  8. capo_codedeploy/_iter.py +113 -0
  9. capo_codedeploy/_operations/code_deploy_20141006/add_tags_to_on_premises_instances.py +153 -0
  10. capo_codedeploy/_operations/code_deploy_20141006/batch_get_application_revisions.py +173 -0
  11. capo_codedeploy/_operations/code_deploy_20141006/batch_get_applications.py +163 -0
  12. capo_codedeploy/_operations/code_deploy_20141006/batch_get_deployment_groups.py +178 -0
  13. capo_codedeploy/_operations/code_deploy_20141006/batch_get_deployment_instances.py +178 -0
  14. capo_codedeploy/_operations/code_deploy_20141006/batch_get_deployment_targets.py +188 -0
  15. capo_codedeploy/_operations/code_deploy_20141006/batch_get_deployments.py +158 -0
  16. capo_codedeploy/_operations/code_deploy_20141006/batch_get_on_premises_instances.py +158 -0
  17. capo_codedeploy/_operations/code_deploy_20141006/continue_deployment.py +155 -0
  18. capo_codedeploy/_operations/code_deploy_20141006/create_application.py +175 -0
  19. capo_codedeploy/_operations/code_deploy_20141006/create_deployment.py +278 -0
  20. capo_codedeploy/_operations/code_deploy_20141006/create_deployment_config.py +185 -0
  21. capo_codedeploy/_operations/code_deploy_20141006/create_deployment_group.py +320 -0
  22. capo_codedeploy/_operations/code_deploy_20141006/delete_application.py +129 -0
  23. capo_codedeploy/_operations/code_deploy_20141006/delete_deployment_config.py +136 -0
  24. capo_codedeploy/_operations/code_deploy_20141006/delete_deployment_group.py +167 -0
  25. capo_codedeploy/_operations/code_deploy_20141006/delete_git_hub_account_token.py +166 -0
  26. capo_codedeploy/_operations/code_deploy_20141006/delete_resources_by_external_id.py +137 -0
  27. capo_codedeploy/_operations/code_deploy_20141006/deregister_on_premises_instance.py +126 -0
  28. capo_codedeploy/_operations/code_deploy_20141006/get_application.py +157 -0
  29. capo_codedeploy/_operations/code_deploy_20141006/get_application_revision.py +173 -0
  30. capo_codedeploy/_operations/code_deploy_20141006/get_deployment.py +157 -0
  31. capo_codedeploy/_operations/code_deploy_20141006/get_deployment_config.py +162 -0
  32. capo_codedeploy/_operations/code_deploy_20141006/get_deployment_group.py +179 -0
  33. capo_codedeploy/_operations/code_deploy_20141006/get_deployment_instance.py +177 -0
  34. capo_codedeploy/_operations/code_deploy_20141006/get_deployment_target.py +182 -0
  35. capo_codedeploy/_operations/code_deploy_20141006/get_on_premises_instance.py +157 -0
  36. capo_codedeploy/_operations/code_deploy_20141006/list_application_revisions.py +195 -0
  37. capo_codedeploy/_operations/code_deploy_20141006/list_applications.py +149 -0
  38. capo_codedeploy/_operations/code_deploy_20141006/list_deployment_configs.py +147 -0
  39. capo_codedeploy/_operations/code_deploy_20141006/list_deployment_groups.py +162 -0
  40. capo_codedeploy/_operations/code_deploy_20141006/list_deployment_instances.py +198 -0
  41. capo_codedeploy/_operations/code_deploy_20141006/list_deployment_targets.py +188 -0
  42. capo_codedeploy/_operations/code_deploy_20141006/list_deployments.py +199 -0
  43. capo_codedeploy/_operations/code_deploy_20141006/list_git_hub_account_token_names.py +157 -0
  44. capo_codedeploy/_operations/code_deploy_20141006/list_on_premises_instances.py +159 -0
  45. capo_codedeploy/_operations/code_deploy_20141006/list_tags_for_resource.py +157 -0
  46. capo_codedeploy/_operations/code_deploy_20141006/put_lifecycle_event_hook_execution_status.py +177 -0
  47. capo_codedeploy/_operations/code_deploy_20141006/register_application_revision.py +147 -0
  48. capo_codedeploy/_operations/code_deploy_20141006/register_on_premises_instance.py +166 -0
  49. capo_codedeploy/_operations/code_deploy_20141006/remove_tags_from_on_premises_instances.py +153 -0
  50. capo_codedeploy/_operations/code_deploy_20141006/skip_wait_time_for_instance_termination.py +146 -0
  51. capo_codedeploy/_operations/code_deploy_20141006/stop_deployment.py +172 -0
  52. capo_codedeploy/_operations/code_deploy_20141006/tag_resource.py +174 -0
  53. capo_codedeploy/_operations/code_deploy_20141006/untag_resource.py +174 -0
  54. capo_codedeploy/_operations/code_deploy_20141006/update_application.py +134 -0
  55. capo_codedeploy/_operations/code_deploy_20141006/update_deployment_group.py +310 -0
  56. capo_codedeploy/_pagination.py +21 -0
  57. capo_codedeploy/_protocol/__init__.py +1 -0
  58. capo_codedeploy/_protocol/errors.py +93 -0
  59. capo_codedeploy/_protocol/eventstream.py +238 -0
  60. capo_codedeploy/_protocol/serialize.py +47 -0
  61. capo_codedeploy/_protocol/xml.py +33 -0
  62. capo_codedeploy/_rule_engine/__init__.py +0 -0
  63. capo_codedeploy/_rule_engine/_aws_partition.py +160 -0
  64. capo_codedeploy/_rule_engine/_endpoint_rule_set.py +138 -0
  65. capo_codedeploy/_rule_engine/_endpoint_runtime.py +389 -0
  66. capo_codedeploy/_services/_aws_config.py +160 -0
  67. capo_codedeploy/_services/_pipeline.py +198 -0
  68. capo_codedeploy/_services/async_code_deploy.py +3278 -0
  69. capo_codedeploy/_services/code_deploy.py +3229 -0
  70. capo_codedeploy/errors/__init__.py +335 -0
  71. capo_codedeploy/errors/_base.py +94 -0
  72. capo_codedeploy/errors/alarms_limit_exceeded_exception.py +52 -0
  73. capo_codedeploy/errors/application_already_exists_exception.py +54 -0
  74. capo_codedeploy/errors/application_does_not_exist_exception.py +54 -0
  75. capo_codedeploy/errors/application_limit_exceeded_exception.py +54 -0
  76. capo_codedeploy/errors/application_name_required_exception.py +54 -0
  77. capo_codedeploy/errors/arn_not_supported_exception.py +52 -0
  78. capo_codedeploy/errors/batch_limit_exceeded_exception.py +52 -0
  79. capo_codedeploy/errors/bucket_name_filter_required_exception.py +54 -0
  80. capo_codedeploy/errors/deployment_already_completed_exception.py +54 -0
  81. capo_codedeploy/errors/deployment_config_already_exists_exception.py +54 -0
  82. capo_codedeploy/errors/deployment_config_does_not_exist_exception.py +54 -0
  83. capo_codedeploy/errors/deployment_config_in_use_exception.py +54 -0
  84. capo_codedeploy/errors/deployment_config_limit_exceeded_exception.py +54 -0
  85. capo_codedeploy/errors/deployment_config_name_required_exception.py +54 -0
  86. capo_codedeploy/errors/deployment_does_not_exist_exception.py +54 -0
  87. capo_codedeploy/errors/deployment_group_already_exists_exception.py +54 -0
  88. capo_codedeploy/errors/deployment_group_does_not_exist_exception.py +54 -0
  89. capo_codedeploy/errors/deployment_group_limit_exceeded_exception.py +54 -0
  90. capo_codedeploy/errors/deployment_group_name_required_exception.py +54 -0
  91. capo_codedeploy/errors/deployment_id_required_exception.py +54 -0
  92. capo_codedeploy/errors/deployment_is_not_in_ready_state_exception.py +54 -0
  93. capo_codedeploy/errors/deployment_limit_exceeded_exception.py +54 -0
  94. capo_codedeploy/errors/deployment_not_started_exception.py +54 -0
  95. capo_codedeploy/errors/deployment_target_does_not_exist_exception.py +54 -0
  96. capo_codedeploy/errors/deployment_target_id_required_exception.py +54 -0
  97. capo_codedeploy/errors/deployment_target_list_size_exceeded_exception.py +56 -0
  98. capo_codedeploy/errors/description_too_long_exception.py +52 -0
  99. capo_codedeploy/errors/ecs_service_mapping_limit_exceeded_exception.py +54 -0
  100. capo_codedeploy/errors/git_hub_account_token_does_not_exist_exception.py +54 -0
  101. capo_codedeploy/errors/git_hub_account_token_name_required_exception.py +54 -0
  102. capo_codedeploy/errors/iam_arn_required_exception.py +52 -0
  103. capo_codedeploy/errors/iam_session_arn_already_registered_exception.py +54 -0
  104. capo_codedeploy/errors/iam_user_arn_already_registered_exception.py +54 -0
  105. capo_codedeploy/errors/iam_user_arn_required_exception.py +52 -0
  106. capo_codedeploy/errors/instance_does_not_exist_exception.py +54 -0
  107. capo_codedeploy/errors/instance_id_required_exception.py +52 -0
  108. capo_codedeploy/errors/instance_limit_exceeded_exception.py +54 -0
  109. capo_codedeploy/errors/instance_name_already_registered_exception.py +54 -0
  110. capo_codedeploy/errors/instance_name_required_exception.py +54 -0
  111. capo_codedeploy/errors/instance_not_registered_exception.py +54 -0
  112. capo_codedeploy/errors/invalid_alarm_config_exception.py +52 -0
  113. capo_codedeploy/errors/invalid_application_name_exception.py +54 -0
  114. capo_codedeploy/errors/invalid_arn_exception.py +52 -0
  115. capo_codedeploy/errors/invalid_auto_rollback_config_exception.py +54 -0
  116. capo_codedeploy/errors/invalid_auto_scaling_group_exception.py +54 -0
  117. capo_codedeploy/errors/invalid_blue_green_deployment_configuration_exception.py +60 -0
  118. capo_codedeploy/errors/invalid_bucket_name_filter_exception.py +54 -0
  119. capo_codedeploy/errors/invalid_compute_platform_exception.py +54 -0
  120. capo_codedeploy/errors/invalid_deployed_state_filter_exception.py +54 -0
  121. capo_codedeploy/errors/invalid_deployment_config_name_exception.py +54 -0
  122. capo_codedeploy/errors/invalid_deployment_group_name_exception.py +54 -0
  123. capo_codedeploy/errors/invalid_deployment_id_exception.py +52 -0
  124. capo_codedeploy/errors/invalid_deployment_instance_type_exception.py +54 -0
  125. capo_codedeploy/errors/invalid_deployment_status_exception.py +54 -0
  126. capo_codedeploy/errors/invalid_deployment_style_exception.py +54 -0
  127. capo_codedeploy/errors/invalid_deployment_target_id_exception.py +54 -0
  128. capo_codedeploy/errors/invalid_deployment_wait_type_exception.py +54 -0
  129. capo_codedeploy/errors/invalid_ec2_tag_combination_exception.py +54 -0
  130. capo_codedeploy/errors/invalid_ec2_tag_exception.py +52 -0
  131. capo_codedeploy/errors/invalid_ecs_service_exception.py +52 -0
  132. capo_codedeploy/errors/invalid_external_id_exception.py +52 -0
  133. capo_codedeploy/errors/invalid_file_exists_behavior_exception.py +54 -0
  134. capo_codedeploy/errors/invalid_git_hub_account_token_exception.py +54 -0
  135. capo_codedeploy/errors/invalid_git_hub_account_token_name_exception.py +54 -0
  136. capo_codedeploy/errors/invalid_iam_session_arn_exception.py +54 -0
  137. capo_codedeploy/errors/invalid_iam_user_arn_exception.py +52 -0
  138. capo_codedeploy/errors/invalid_ignore_application_stop_failures_value_exception.py +60 -0
  139. capo_codedeploy/errors/invalid_input_exception.py +52 -0
  140. capo_codedeploy/errors/invalid_instance_name_exception.py +52 -0
  141. capo_codedeploy/errors/invalid_instance_status_exception.py +54 -0
  142. capo_codedeploy/errors/invalid_instance_type_exception.py +52 -0
  143. capo_codedeploy/errors/invalid_key_prefix_filter_exception.py +54 -0
  144. capo_codedeploy/errors/invalid_lifecycle_event_hook_execution_id_exception.py +60 -0
  145. capo_codedeploy/errors/invalid_lifecycle_event_hook_execution_status_exception.py +60 -0
  146. capo_codedeploy/errors/invalid_load_balancer_info_exception.py +54 -0
  147. capo_codedeploy/errors/invalid_minimum_healthy_host_value_exception.py +54 -0
  148. capo_codedeploy/errors/invalid_next_token_exception.py +52 -0
  149. capo_codedeploy/errors/invalid_on_premises_tag_combination_exception.py +56 -0
  150. capo_codedeploy/errors/invalid_operation_exception.py +52 -0
  151. capo_codedeploy/errors/invalid_registration_status_exception.py +54 -0
  152. capo_codedeploy/errors/invalid_revision_exception.py +52 -0
  153. capo_codedeploy/errors/invalid_role_exception.py +52 -0
  154. capo_codedeploy/errors/invalid_sort_by_exception.py +52 -0
  155. capo_codedeploy/errors/invalid_sort_order_exception.py +52 -0
  156. capo_codedeploy/errors/invalid_tag_exception.py +52 -0
  157. capo_codedeploy/errors/invalid_tag_filter_exception.py +52 -0
  158. capo_codedeploy/errors/invalid_tags_to_add_exception.py +52 -0
  159. capo_codedeploy/errors/invalid_target_filter_name_exception.py +54 -0
  160. capo_codedeploy/errors/invalid_target_group_pair_exception.py +54 -0
  161. capo_codedeploy/errors/invalid_target_instances_exception.py +54 -0
  162. capo_codedeploy/errors/invalid_time_range_exception.py +52 -0
  163. capo_codedeploy/errors/invalid_traffic_routing_configuration_exception.py +58 -0
  164. capo_codedeploy/errors/invalid_trigger_config_exception.py +54 -0
  165. capo_codedeploy/errors/invalid_update_outdated_instances_only_value_exception.py +60 -0
  166. capo_codedeploy/errors/invalid_zonal_deployment_configuration_exception.py +60 -0
  167. capo_codedeploy/errors/lifecycle_event_already_completed_exception.py +54 -0
  168. capo_codedeploy/errors/lifecycle_hook_limit_exceeded_exception.py +54 -0
  169. capo_codedeploy/errors/multiple_iam_arns_provided_exception.py +54 -0
  170. capo_codedeploy/errors/operation_not_supported_exception.py +54 -0
  171. capo_codedeploy/errors/resource_arn_required_exception.py +52 -0
  172. capo_codedeploy/errors/resource_validation_exception.py +52 -0
  173. capo_codedeploy/errors/revision_does_not_exist_exception.py +54 -0
  174. capo_codedeploy/errors/revision_required_exception.py +52 -0
  175. capo_codedeploy/errors/role_required_exception.py +52 -0
  176. capo_codedeploy/errors/tag_limit_exceeded_exception.py +52 -0
  177. capo_codedeploy/errors/tag_required_exception.py +52 -0
  178. capo_codedeploy/errors/tag_set_list_limit_exceeded_exception.py +54 -0
  179. capo_codedeploy/errors/throttling_exception.py +52 -0
  180. capo_codedeploy/errors/trigger_targets_limit_exceeded_exception.py +54 -0
  181. capo_codedeploy/errors/unsupported_action_for_deployment_type_exception.py +58 -0
  182. capo_codedeploy/py.typed +0 -0
  183. capo_codedeploy/types/_prelude/blob.py +12 -0
  184. capo_codedeploy/types/_prelude/timestamp.py +17 -0
  185. capo_codedeploy/types/add_tags_to_on_premises_instances_input.py +59 -0
  186. capo_codedeploy/types/additional_deployment_status_info.py +5 -0
  187. capo_codedeploy/types/alarm.py +28 -0
  188. capo_codedeploy/types/alarm_configuration.py +51 -0
  189. capo_codedeploy/types/alarm_list.py +29 -0
  190. capo_codedeploy/types/alarm_name.py +5 -0
  191. capo_codedeploy/types/app_spec_content.py +35 -0
  192. capo_codedeploy/types/application_id.py +5 -0
  193. capo_codedeploy/types/application_info.py +90 -0
  194. capo_codedeploy/types/application_name.py +5 -0
  195. capo_codedeploy/types/application_revision_sort_by.py +18 -0
  196. capo_codedeploy/types/applications_info_list.py +33 -0
  197. capo_codedeploy/types/applications_list.py +19 -0
  198. capo_codedeploy/types/arn.py +5 -0
  199. capo_codedeploy/types/auto_rollback_configuration.py +50 -0
  200. capo_codedeploy/types/auto_rollback_event.py +18 -0
  201. capo_codedeploy/types/auto_rollback_events_list.py +35 -0
  202. capo_codedeploy/types/auto_scaling_group.py +47 -0
  203. capo_codedeploy/types/auto_scaling_group_hook.py +5 -0
  204. capo_codedeploy/types/auto_scaling_group_list.py +35 -0
  205. capo_codedeploy/types/auto_scaling_group_name.py +5 -0
  206. capo_codedeploy/types/auto_scaling_group_name_list.py +19 -0
  207. capo_codedeploy/types/batch_get_application_revisions_input.py +55 -0
  208. capo_codedeploy/types/batch_get_application_revisions_output.py +56 -0
  209. capo_codedeploy/types/batch_get_applications_input.py +45 -0
  210. capo_codedeploy/types/batch_get_applications_output.py +42 -0
  211. capo_codedeploy/types/batch_get_deployment_groups_input.py +57 -0
  212. capo_codedeploy/types/batch_get_deployment_groups_output.py +49 -0
  213. capo_codedeploy/types/batch_get_deployment_instances_input.py +53 -0
  214. capo_codedeploy/types/batch_get_deployment_instances_output.py +49 -0
  215. capo_codedeploy/types/batch_get_deployment_targets_input.py +51 -0
  216. capo_codedeploy/types/batch_get_deployment_targets_output.py +42 -0
  217. capo_codedeploy/types/batch_get_deployments_input.py +43 -0
  218. capo_codedeploy/types/batch_get_deployments_output.py +42 -0
  219. capo_codedeploy/types/batch_get_on_premises_instances_input.py +45 -0
  220. capo_codedeploy/types/batch_get_on_premises_instances_output.py +42 -0
  221. capo_codedeploy/types/blue_green_deployment_configuration.py +84 -0
  222. capo_codedeploy/types/blue_instance_termination_option.py +46 -0
  223. capo_codedeploy/types/boolean.py +5 -0
  224. capo_codedeploy/types/bundle_type.py +20 -0
  225. capo_codedeploy/types/cloud_formation_resource_type.py +5 -0
  226. capo_codedeploy/types/cloud_formation_target.py +112 -0
  227. capo_codedeploy/types/commit_id.py +5 -0
  228. capo_codedeploy/types/compute_platform.py +18 -0
  229. capo_codedeploy/types/continue_deployment_input.py +49 -0
  230. capo_codedeploy/types/create_application_input.py +67 -0
  231. capo_codedeploy/types/create_application_output.py +28 -0
  232. capo_codedeploy/types/create_deployment_config_input.py +115 -0
  233. capo_codedeploy/types/create_deployment_config_output.py +30 -0
  234. capo_codedeploy/types/create_deployment_group_input.py +353 -0
  235. capo_codedeploy/types/create_deployment_group_output.py +30 -0
  236. capo_codedeploy/types/create_deployment_input.py +178 -0
  237. capo_codedeploy/types/create_deployment_output.py +28 -0
  238. capo_codedeploy/types/delete_application_input.py +31 -0
  239. capo_codedeploy/types/delete_deployment_config_input.py +35 -0
  240. capo_codedeploy/types/delete_deployment_group_input.py +45 -0
  241. capo_codedeploy/types/delete_deployment_group_output.py +42 -0
  242. capo_codedeploy/types/delete_git_hub_account_token_input.py +30 -0
  243. capo_codedeploy/types/delete_git_hub_account_token_output.py +30 -0
  244. capo_codedeploy/types/delete_resources_by_external_id_input.py +28 -0
  245. capo_codedeploy/types/delete_resources_by_external_id_output.py +18 -0
  246. capo_codedeploy/types/deployment_config_id.py +5 -0
  247. capo_codedeploy/types/deployment_config_info.py +134 -0
  248. capo_codedeploy/types/deployment_config_name.py +5 -0
  249. capo_codedeploy/types/deployment_configs_list.py +19 -0
  250. capo_codedeploy/types/deployment_creator.py +23 -0
  251. capo_codedeploy/types/deployment_group_id.py +5 -0
  252. capo_codedeploy/types/deployment_group_info.py +420 -0
  253. capo_codedeploy/types/deployment_group_info_list.py +35 -0
  254. capo_codedeploy/types/deployment_group_name.py +5 -0
  255. capo_codedeploy/types/deployment_groups_list.py +19 -0
  256. capo_codedeploy/types/deployment_id.py +5 -0
  257. capo_codedeploy/types/deployment_info.py +499 -0
  258. capo_codedeploy/types/deployment_option.py +17 -0
  259. capo_codedeploy/types/deployment_overview.py +64 -0
  260. capo_codedeploy/types/deployment_ready_action.py +17 -0
  261. capo_codedeploy/types/deployment_ready_option.py +50 -0
  262. capo_codedeploy/types/deployment_status.py +23 -0
  263. capo_codedeploy/types/deployment_status_list.py +33 -0
  264. capo_codedeploy/types/deployment_status_message_list.py +19 -0
  265. capo_codedeploy/types/deployment_style.py +61 -0
  266. capo_codedeploy/types/deployment_target.py +115 -0
  267. capo_codedeploy/types/deployment_target_list.py +33 -0
  268. capo_codedeploy/types/deployment_target_type.py +19 -0
  269. capo_codedeploy/types/deployment_type.py +17 -0
  270. capo_codedeploy/types/deployment_wait_type.py +17 -0
  271. capo_codedeploy/types/deployments_info_list.py +31 -0
  272. capo_codedeploy/types/deployments_list.py +17 -0
  273. capo_codedeploy/types/deregister_on_premises_instance_input.py +33 -0
  274. capo_codedeploy/types/description.py +5 -0
  275. capo_codedeploy/types/diagnostics.py +63 -0
  276. capo_codedeploy/types/duration.py +5 -0
  277. capo_codedeploy/types/e_tag.py +5 -0
  278. capo_codedeploy/types/ec2_tag_filter.py +52 -0
  279. capo_codedeploy/types/ec2_tag_filter_list.py +29 -0
  280. capo_codedeploy/types/ec2_tag_filter_type.py +18 -0
  281. capo_codedeploy/types/ec2_tag_set.py +42 -0
  282. capo_codedeploy/types/ec2_tag_set_list.py +35 -0
  283. capo_codedeploy/types/ecs_cluster_name.py +5 -0
  284. capo_codedeploy/types/ecs_service.py +35 -0
  285. capo_codedeploy/types/ecs_service_list.py +29 -0
  286. capo_codedeploy/types/ecs_service_name.py +5 -0
  287. capo_codedeploy/types/ecs_target.py +114 -0
  288. capo_codedeploy/types/ecs_task_set.py +111 -0
  289. capo_codedeploy/types/ecs_task_set_count.py +5 -0
  290. capo_codedeploy/types/ecs_task_set_identifier.py +5 -0
  291. capo_codedeploy/types/ecs_task_set_list.py +29 -0
  292. capo_codedeploy/types/ecs_task_set_status.py +5 -0
  293. capo_codedeploy/types/elb_info.py +28 -0
  294. capo_codedeploy/types/elb_info_list.py +29 -0
  295. capo_codedeploy/types/elb_name.py +5 -0
  296. capo_codedeploy/types/error_code.py +49 -0
  297. capo_codedeploy/types/error_information.py +43 -0
  298. capo_codedeploy/types/error_message.py +5 -0
  299. capo_codedeploy/types/external_id.py +5 -0
  300. capo_codedeploy/types/file_exists_behavior.py +18 -0
  301. capo_codedeploy/types/filter_value.py +5 -0
  302. capo_codedeploy/types/filter_value_list.py +17 -0
  303. capo_codedeploy/types/generic_revision_info.py +96 -0
  304. capo_codedeploy/types/get_application_input.py +31 -0
  305. capo_codedeploy/types/get_application_output.py +40 -0
  306. capo_codedeploy/types/get_application_revision_input.py +51 -0
  307. capo_codedeploy/types/get_application_revision_output.py +70 -0
  308. capo_codedeploy/types/get_deployment_config_input.py +35 -0
  309. capo_codedeploy/types/get_deployment_config_output.py +42 -0
  310. capo_codedeploy/types/get_deployment_group_input.py +43 -0
  311. capo_codedeploy/types/get_deployment_group_output.py +42 -0
  312. capo_codedeploy/types/get_deployment_input.py +31 -0
  313. capo_codedeploy/types/get_deployment_instance_input.py +39 -0
  314. capo_codedeploy/types/get_deployment_instance_output.py +42 -0
  315. capo_codedeploy/types/get_deployment_output.py +40 -0
  316. capo_codedeploy/types/get_deployment_target_input.py +39 -0
  317. capo_codedeploy/types/get_deployment_target_output.py +42 -0
  318. capo_codedeploy/types/get_on_premises_instance_input.py +31 -0
  319. capo_codedeploy/types/get_on_premises_instance_output.py +40 -0
  320. capo_codedeploy/types/git_hub_account_token_name.py +5 -0
  321. capo_codedeploy/types/git_hub_account_token_name_list.py +19 -0
  322. capo_codedeploy/types/git_hub_location.py +35 -0
  323. capo_codedeploy/types/green_fleet_provisioning_action.py +17 -0
  324. capo_codedeploy/types/green_fleet_provisioning_option.py +42 -0
  325. capo_codedeploy/types/iam_session_arn.py +5 -0
  326. capo_codedeploy/types/iam_user_arn.py +5 -0
  327. capo_codedeploy/types/instance_action.py +17 -0
  328. capo_codedeploy/types/instance_arn.py +5 -0
  329. capo_codedeploy/types/instance_count.py +5 -0
  330. capo_codedeploy/types/instance_id.py +5 -0
  331. capo_codedeploy/types/instance_info.py +95 -0
  332. capo_codedeploy/types/instance_info_list.py +29 -0
  333. capo_codedeploy/types/instance_name.py +5 -0
  334. capo_codedeploy/types/instance_name_list.py +17 -0
  335. capo_codedeploy/types/instance_status.py +22 -0
  336. capo_codedeploy/types/instance_status_list.py +31 -0
  337. capo_codedeploy/types/instance_summary.py +107 -0
  338. capo_codedeploy/types/instance_summary_list.py +33 -0
  339. capo_codedeploy/types/instance_target.py +112 -0
  340. capo_codedeploy/types/instance_type.py +17 -0
  341. capo_codedeploy/types/instance_type_list.py +29 -0
  342. capo_codedeploy/types/instances_list.py +17 -0
  343. capo_codedeploy/types/key.py +5 -0
  344. capo_codedeploy/types/lambda_function_alias.py +5 -0
  345. capo_codedeploy/types/lambda_function_info.py +69 -0
  346. capo_codedeploy/types/lambda_function_name.py +5 -0
  347. capo_codedeploy/types/lambda_target.py +114 -0
  348. capo_codedeploy/types/last_deployment_info.py +74 -0
  349. capo_codedeploy/types/lifecycle_error_code.py +21 -0
  350. capo_codedeploy/types/lifecycle_event.py +95 -0
  351. capo_codedeploy/types/lifecycle_event_hook_execution_id.py +5 -0
  352. capo_codedeploy/types/lifecycle_event_list.py +31 -0
  353. capo_codedeploy/types/lifecycle_event_name.py +5 -0
  354. capo_codedeploy/types/lifecycle_event_status.py +21 -0
  355. capo_codedeploy/types/lifecycle_message.py +5 -0
  356. capo_codedeploy/types/list_application_revisions_input.py +111 -0
  357. capo_codedeploy/types/list_application_revisions_output.py +49 -0
  358. capo_codedeploy/types/list_applications_input.py +28 -0
  359. capo_codedeploy/types/list_applications_output.py +49 -0
  360. capo_codedeploy/types/list_deployment_configs_input.py +28 -0
  361. capo_codedeploy/types/list_deployment_configs_output.py +49 -0
  362. capo_codedeploy/types/list_deployment_groups_input.py +40 -0
  363. capo_codedeploy/types/list_deployment_groups_output.py +58 -0
  364. capo_codedeploy/types/list_deployment_instances_input.py +82 -0
  365. capo_codedeploy/types/list_deployment_instances_output.py +47 -0
  366. capo_codedeploy/types/list_deployment_targets_input.py +57 -0
  367. capo_codedeploy/types/list_deployment_targets_output.py +45 -0
  368. capo_codedeploy/types/list_deployments_input.py +93 -0
  369. capo_codedeploy/types/list_deployments_output.py +47 -0
  370. capo_codedeploy/types/list_git_hub_account_token_names_input.py +28 -0
  371. capo_codedeploy/types/list_git_hub_account_token_names_output.py +49 -0
  372. capo_codedeploy/types/list_on_premises_instances_input.py +68 -0
  373. capo_codedeploy/types/list_on_premises_instances_output.py +49 -0
  374. capo_codedeploy/types/list_state_filter_action.py +18 -0
  375. capo_codedeploy/types/list_tags_for_resource_input.py +38 -0
  376. capo_codedeploy/types/list_tags_for_resource_output.py +43 -0
  377. capo_codedeploy/types/listener_arn.py +5 -0
  378. capo_codedeploy/types/listener_arn_list.py +17 -0
  379. capo_codedeploy/types/load_balancer_info.py +80 -0
  380. capo_codedeploy/types/log_tail.py +5 -0
  381. capo_codedeploy/types/message.py +5 -0
  382. capo_codedeploy/types/minimum_healthy_hosts.py +50 -0
  383. capo_codedeploy/types/minimum_healthy_hosts_per_zone.py +50 -0
  384. capo_codedeploy/types/minimum_healthy_hosts_per_zone_type.py +17 -0
  385. capo_codedeploy/types/minimum_healthy_hosts_per_zone_value.py +5 -0
  386. capo_codedeploy/types/minimum_healthy_hosts_type.py +17 -0
  387. capo_codedeploy/types/minimum_healthy_hosts_value.py +5 -0
  388. capo_codedeploy/types/next_token.py +5 -0
  389. capo_codedeploy/types/nullable_boolean.py +5 -0
  390. capo_codedeploy/types/on_premises_tag_set.py +42 -0
  391. capo_codedeploy/types/on_premises_tag_set_list.py +31 -0
  392. capo_codedeploy/types/outdated_instances_strategy.py +17 -0
  393. capo_codedeploy/types/percentage.py +5 -0
  394. capo_codedeploy/types/put_lifecycle_event_hook_execution_status_input.py +60 -0
  395. capo_codedeploy/types/put_lifecycle_event_hook_execution_status_output.py +32 -0
  396. capo_codedeploy/types/raw_string.py +35 -0
  397. capo_codedeploy/types/raw_string_content.py +5 -0
  398. capo_codedeploy/types/raw_string_sha256.py +5 -0
  399. capo_codedeploy/types/register_application_revision_input.py +58 -0
  400. capo_codedeploy/types/register_on_premises_instance_input.py +47 -0
  401. capo_codedeploy/types/registration_status.py +17 -0
  402. capo_codedeploy/types/related_deployments.py +55 -0
  403. capo_codedeploy/types/remove_tags_from_on_premises_instances_input.py +61 -0
  404. capo_codedeploy/types/repository.py +5 -0
  405. capo_codedeploy/types/revision_info.py +63 -0
  406. capo_codedeploy/types/revision_info_list.py +29 -0
  407. capo_codedeploy/types/revision_location.py +114 -0
  408. capo_codedeploy/types/revision_location_list.py +33 -0
  409. capo_codedeploy/types/revision_location_type.py +19 -0
  410. capo_codedeploy/types/role.py +5 -0
  411. capo_codedeploy/types/rollback_info.py +49 -0
  412. capo_codedeploy/types/s3_bucket.py +5 -0
  413. capo_codedeploy/types/s3_key.py +5 -0
  414. capo_codedeploy/types/s3_location.py +64 -0
  415. capo_codedeploy/types/script_name.py +5 -0
  416. capo_codedeploy/types/skip_wait_time_for_instance_termination_input.py +28 -0
  417. capo_codedeploy/types/sort_order.py +17 -0
  418. capo_codedeploy/types/stop_deployment_input.py +40 -0
  419. capo_codedeploy/types/stop_deployment_output.py +43 -0
  420. capo_codedeploy/types/stop_status.py +17 -0
  421. capo_codedeploy/types/tag.py +35 -0
  422. capo_codedeploy/types/tag_filter.py +50 -0
  423. capo_codedeploy/types/tag_filter_list.py +29 -0
  424. capo_codedeploy/types/tag_filter_type.py +18 -0
  425. capo_codedeploy/types/tag_key_list.py +17 -0
  426. capo_codedeploy/types/tag_list.py +29 -0
  427. capo_codedeploy/types/tag_resource_input.py +45 -0
  428. capo_codedeploy/types/tag_resource_output.py +18 -0
  429. capo_codedeploy/types/target_arn.py +5 -0
  430. capo_codedeploy/types/target_filter_name.py +17 -0
  431. capo_codedeploy/types/target_filters.py +40 -0
  432. capo_codedeploy/types/target_group_info.py +28 -0
  433. capo_codedeploy/types/target_group_info_list.py +33 -0
  434. capo_codedeploy/types/target_group_name.py +5 -0
  435. capo_codedeploy/types/target_group_pair_info.py +79 -0
  436. capo_codedeploy/types/target_group_pair_info_list.py +35 -0
  437. capo_codedeploy/types/target_id.py +5 -0
  438. capo_codedeploy/types/target_id_list.py +17 -0
  439. capo_codedeploy/types/target_instances.py +78 -0
  440. capo_codedeploy/types/target_label.py +17 -0
  441. capo_codedeploy/types/target_status.py +22 -0
  442. capo_codedeploy/types/time.py +20 -0
  443. capo_codedeploy/types/time_based_canary.py +37 -0
  444. capo_codedeploy/types/time_based_linear.py +37 -0
  445. capo_codedeploy/types/time_range.py +50 -0
  446. capo_codedeploy/types/timestamp.py +20 -0
  447. capo_codedeploy/types/traffic_route.py +42 -0
  448. capo_codedeploy/types/traffic_routing_config.py +80 -0
  449. capo_codedeploy/types/traffic_routing_type.py +18 -0
  450. capo_codedeploy/types/traffic_weight.py +5 -0
  451. capo_codedeploy/types/trigger_config.py +58 -0
  452. capo_codedeploy/types/trigger_config_list.py +31 -0
  453. capo_codedeploy/types/trigger_event_type.py +25 -0
  454. capo_codedeploy/types/trigger_event_type_list.py +35 -0
  455. capo_codedeploy/types/trigger_name.py +5 -0
  456. capo_codedeploy/types/trigger_target_arn.py +5 -0
  457. capo_codedeploy/types/untag_resource_input.py +47 -0
  458. capo_codedeploy/types/untag_resource_output.py +18 -0
  459. capo_codedeploy/types/update_application_input.py +38 -0
  460. capo_codedeploy/types/update_deployment_group_input.py +343 -0
  461. capo_codedeploy/types/update_deployment_group_output.py +42 -0
  462. capo_codedeploy/types/value.py +5 -0
  463. capo_codedeploy/types/version.py +5 -0
  464. capo_codedeploy/types/version_id.py +5 -0
  465. capo_codedeploy/types/wait_time_in_mins.py +5 -0
  466. capo_codedeploy/types/wait_time_in_seconds.py +5 -0
  467. capo_codedeploy/types/zonal_config.py +63 -0
  468. capo_codedeploy-0.1.0.dist-info/METADATA +102 -0
  469. capo_codedeploy-0.1.0.dist-info/RECORD +472 -0
  470. capo_codedeploy-0.1.0.dist-info/WHEEL +5 -0
  471. capo_codedeploy-0.1.0.dist-info/licenses/LICENSE +21 -0
  472. capo_codedeploy-0.1.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,278 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codedeploy#CreateDeployment``."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import json
6
+ from typing import Any
7
+
8
+ import zapros
9
+ from typing_extensions import Never
10
+
11
+ import capo_codedeploy._auth._signers
12
+ import capo_codedeploy._auth._sigv4
13
+ import capo_codedeploy._protocol.eventstream
14
+ import capo_codedeploy.errors.alarms_limit_exceeded_exception
15
+ import capo_codedeploy.errors.application_does_not_exist_exception
16
+ import capo_codedeploy.errors.application_name_required_exception
17
+ import capo_codedeploy.errors.deployment_config_does_not_exist_exception
18
+ import capo_codedeploy.errors.deployment_group_does_not_exist_exception
19
+ import capo_codedeploy.errors.deployment_group_name_required_exception
20
+ import capo_codedeploy.errors.deployment_limit_exceeded_exception
21
+ import capo_codedeploy.errors.description_too_long_exception
22
+ import capo_codedeploy.errors.invalid_alarm_config_exception
23
+ import capo_codedeploy.errors.invalid_application_name_exception
24
+ import capo_codedeploy.errors.invalid_auto_rollback_config_exception
25
+ import capo_codedeploy.errors.invalid_auto_scaling_group_exception
26
+ import capo_codedeploy.errors.invalid_deployment_config_name_exception
27
+ import capo_codedeploy.errors.invalid_deployment_group_name_exception
28
+ import capo_codedeploy.errors.invalid_file_exists_behavior_exception
29
+ import capo_codedeploy.errors.invalid_git_hub_account_token_exception
30
+ import capo_codedeploy.errors.invalid_ignore_application_stop_failures_value_exception
31
+ import capo_codedeploy.errors.invalid_load_balancer_info_exception
32
+ import capo_codedeploy.errors.invalid_revision_exception
33
+ import capo_codedeploy.errors.invalid_role_exception
34
+ import capo_codedeploy.errors.invalid_target_instances_exception
35
+ import capo_codedeploy.errors.invalid_traffic_routing_configuration_exception
36
+ import capo_codedeploy.errors.invalid_update_outdated_instances_only_value_exception
37
+ import capo_codedeploy.errors.revision_does_not_exist_exception
38
+ import capo_codedeploy.errors.revision_required_exception
39
+ import capo_codedeploy.errors.throttling_exception
40
+ import capo_codedeploy.types.alarm_configuration
41
+ import capo_codedeploy.types.auto_rollback_configuration
42
+ import capo_codedeploy.types.create_deployment_input
43
+ import capo_codedeploy.types.create_deployment_output
44
+ import capo_codedeploy.types.file_exists_behavior
45
+ import capo_codedeploy.types.revision_location
46
+ import capo_codedeploy.types.target_instances
47
+ from capo_codedeploy._protocol.errors import parse_error_metadata_json
48
+ from capo_codedeploy._rule_engine._endpoint_rule_set import EndpointParams, resolve
49
+ from capo_codedeploy._services._pipeline import AsyncOperationOptions, OperationOptions
50
+ from capo_codedeploy.errors import UnknownServiceError
51
+
52
+
53
+ def handle_error(response: zapros.Response) -> Never:
54
+ data = json.loads(response.read())
55
+ code, message = parse_error_metadata_json(response, data)
56
+ match code:
57
+ case "AlarmsLimitExceededException":
58
+ raise capo_codedeploy.errors.alarms_limit_exceeded_exception.AlarmsLimitExceededException.from_aws_json_1_1(
59
+ data, message
60
+ )
61
+ case "ApplicationDoesNotExistException":
62
+ raise capo_codedeploy.errors.application_does_not_exist_exception.ApplicationDoesNotExistException.from_aws_json_1_1(
63
+ data, message
64
+ )
65
+ case "ApplicationNameRequiredException":
66
+ raise capo_codedeploy.errors.application_name_required_exception.ApplicationNameRequiredException.from_aws_json_1_1(
67
+ data, message
68
+ )
69
+ case "DeploymentConfigDoesNotExistException":
70
+ raise capo_codedeploy.errors.deployment_config_does_not_exist_exception.DeploymentConfigDoesNotExistException.from_aws_json_1_1(
71
+ data, message
72
+ )
73
+ case "DeploymentGroupDoesNotExistException":
74
+ raise capo_codedeploy.errors.deployment_group_does_not_exist_exception.DeploymentGroupDoesNotExistException.from_aws_json_1_1(
75
+ data, message
76
+ )
77
+ case "DeploymentGroupNameRequiredException":
78
+ raise capo_codedeploy.errors.deployment_group_name_required_exception.DeploymentGroupNameRequiredException.from_aws_json_1_1(
79
+ data, message
80
+ )
81
+ case "DeploymentLimitExceededException":
82
+ raise capo_codedeploy.errors.deployment_limit_exceeded_exception.DeploymentLimitExceededException.from_aws_json_1_1(
83
+ data, message
84
+ )
85
+ case "DescriptionTooLongException":
86
+ raise capo_codedeploy.errors.description_too_long_exception.DescriptionTooLongException.from_aws_json_1_1(
87
+ data, message
88
+ )
89
+ case "InvalidAlarmConfigException":
90
+ raise capo_codedeploy.errors.invalid_alarm_config_exception.InvalidAlarmConfigException.from_aws_json_1_1(
91
+ data, message
92
+ )
93
+ case "InvalidApplicationNameException":
94
+ raise capo_codedeploy.errors.invalid_application_name_exception.InvalidApplicationNameException.from_aws_json_1_1(
95
+ data, message
96
+ )
97
+ case "InvalidAutoRollbackConfigException":
98
+ raise capo_codedeploy.errors.invalid_auto_rollback_config_exception.InvalidAutoRollbackConfigException.from_aws_json_1_1(
99
+ data, message
100
+ )
101
+ case "InvalidAutoScalingGroupException":
102
+ raise capo_codedeploy.errors.invalid_auto_scaling_group_exception.InvalidAutoScalingGroupException.from_aws_json_1_1(
103
+ data, message
104
+ )
105
+ case "InvalidDeploymentConfigNameException":
106
+ raise capo_codedeploy.errors.invalid_deployment_config_name_exception.InvalidDeploymentConfigNameException.from_aws_json_1_1(
107
+ data, message
108
+ )
109
+ case "InvalidDeploymentGroupNameException":
110
+ raise capo_codedeploy.errors.invalid_deployment_group_name_exception.InvalidDeploymentGroupNameException.from_aws_json_1_1(
111
+ data, message
112
+ )
113
+ case "InvalidFileExistsBehaviorException":
114
+ raise capo_codedeploy.errors.invalid_file_exists_behavior_exception.InvalidFileExistsBehaviorException.from_aws_json_1_1(
115
+ data, message
116
+ )
117
+ case "InvalidGitHubAccountTokenException":
118
+ raise capo_codedeploy.errors.invalid_git_hub_account_token_exception.InvalidGitHubAccountTokenException.from_aws_json_1_1(
119
+ data, message
120
+ )
121
+ case "InvalidIgnoreApplicationStopFailuresValueException":
122
+ raise capo_codedeploy.errors.invalid_ignore_application_stop_failures_value_exception.InvalidIgnoreApplicationStopFailuresValueException.from_aws_json_1_1(
123
+ data, message
124
+ )
125
+ case "InvalidLoadBalancerInfoException":
126
+ raise capo_codedeploy.errors.invalid_load_balancer_info_exception.InvalidLoadBalancerInfoException.from_aws_json_1_1(
127
+ data, message
128
+ )
129
+ case "InvalidRevisionException":
130
+ raise capo_codedeploy.errors.invalid_revision_exception.InvalidRevisionException.from_aws_json_1_1(
131
+ data, message
132
+ )
133
+ case "InvalidRoleException":
134
+ raise capo_codedeploy.errors.invalid_role_exception.InvalidRoleException.from_aws_json_1_1(
135
+ data, message
136
+ )
137
+ case "InvalidTargetInstancesException":
138
+ raise capo_codedeploy.errors.invalid_target_instances_exception.InvalidTargetInstancesException.from_aws_json_1_1(
139
+ data, message
140
+ )
141
+ case "InvalidTrafficRoutingConfigurationException":
142
+ raise capo_codedeploy.errors.invalid_traffic_routing_configuration_exception.InvalidTrafficRoutingConfigurationException.from_aws_json_1_1(
143
+ data, message
144
+ )
145
+ case "InvalidUpdateOutdatedInstancesOnlyValueException":
146
+ raise capo_codedeploy.errors.invalid_update_outdated_instances_only_value_exception.InvalidUpdateOutdatedInstancesOnlyValueException.from_aws_json_1_1(
147
+ data, message
148
+ )
149
+ case "RevisionDoesNotExistException":
150
+ raise capo_codedeploy.errors.revision_does_not_exist_exception.RevisionDoesNotExistException.from_aws_json_1_1(
151
+ data, message
152
+ )
153
+ case "RevisionRequiredException":
154
+ raise capo_codedeploy.errors.revision_required_exception.RevisionRequiredException.from_aws_json_1_1(
155
+ data, message
156
+ )
157
+ case "ThrottlingException":
158
+ raise capo_codedeploy.errors.throttling_exception.ThrottlingException.from_aws_json_1_1(
159
+ data, message
160
+ )
161
+ case _:
162
+ raise UnknownServiceError(code=code, message=message, response=response)
163
+
164
+
165
+ def handle_response(
166
+ response: zapros.Response,
167
+ ) -> capo_codedeploy.types.create_deployment_output.CreateDeploymentOutput:
168
+ out: capo_codedeploy.types.create_deployment_output.CreateDeploymentOutput = (
169
+ capo_codedeploy.types.create_deployment_output.deserialize_aws_json_1_1(
170
+ json.loads(response.read())
171
+ )
172
+ )
173
+ return out
174
+
175
+
176
+ async def async_handle_response(
177
+ response: zapros.Response,
178
+ ) -> capo_codedeploy.types.create_deployment_output.CreateDeploymentOutput:
179
+ out: capo_codedeploy.types.create_deployment_output.CreateDeploymentOutput = (
180
+ capo_codedeploy.types.create_deployment_output.deserialize_aws_json_1_1(
181
+ json.loads(await response.aread())
182
+ )
183
+ )
184
+ return out
185
+
186
+
187
+ def get_signer(
188
+ options: AsyncOperationOptions | OperationOptions,
189
+ auth_schemes: list[dict[str, Any]] | None = None,
190
+ ) -> capo_codedeploy._auth._signers.Signer | None:
191
+ name_to_schema = {s["name"]: s for s in (auth_schemes or [])} # noqa: F841
192
+ if (
193
+ options.credentials_provider is not None
194
+ and name_to_schema
195
+ and not name_to_schema.keys() & {"sigv4", "sigv4-s3express"}
196
+ ):
197
+ raise RuntimeError(
198
+ "Endpoint requires an unsupported auth scheme: " + ", ".join(name_to_schema)
199
+ )
200
+ if options.credentials_provider is not None:
201
+ endpoint_scheme = name_to_schema.get("sigv4") or name_to_schema.get(
202
+ "sigv4-s3express"
203
+ )
204
+ if endpoint_scheme is not None or not name_to_schema:
205
+ sigv4_config = capo_codedeploy._auth._sigv4.build_sigv4_auth_scheme(
206
+ "codedeploy", options.region, endpoint_scheme
207
+ )
208
+ if sigv4_config is not None:
209
+ return capo_codedeploy._auth._signers.SigV4Signer(
210
+ options.credentials_provider, auth_scheme=sigv4_config
211
+ )
212
+ raise RuntimeError("Auth was not resolved")
213
+
214
+
215
+ def build_request(
216
+ options: OperationOptions | AsyncOperationOptions,
217
+ input_: capo_codedeploy.types.create_deployment_input.CreateDeploymentInput,
218
+ ) -> zapros.Request:
219
+ endpoint = resolve(
220
+ EndpointParams(
221
+ Region=options.region,
222
+ UseDualStack=options.use_dual_stack,
223
+ UseFIPS=options.use_fips,
224
+ Endpoint=options.endpoint,
225
+ )
226
+ ) # noqa: F841
227
+ url = endpoint.url.rstrip("/") + ""
228
+ params: list[tuple[str, str]] = []
229
+ headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
230
+ headers["X-Amz-Target"] = "CodeDeploy_20141006.CreateDeployment"
231
+ body: bytes | None = json.dumps(
232
+ capo_codedeploy.types.create_deployment_input.serialize_aws_json_1_1(input_),
233
+ allow_nan=False,
234
+ ).encode()
235
+ headers["content-type"] = "application/x-amz-json-1.1"
236
+ signer = get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
237
+ normalized_url = zapros.URL(url)
238
+ for k, v in params:
239
+ normalized_url.search_params.append(k, v)
240
+ return zapros.Request(
241
+ normalized_url, "POST", headers=headers, body=body, context={"signer": signer}
242
+ )
243
+
244
+
245
+ def create_deployment(
246
+ options: OperationOptions,
247
+ input_: capo_codedeploy.types.create_deployment_input.CreateDeploymentInput,
248
+ ) -> tuple[
249
+ capo_codedeploy.types.create_deployment_output.CreateDeploymentOutput,
250
+ zapros.Response,
251
+ ]:
252
+ response = options.client.handler.handle(build_request(options, input_))
253
+ try:
254
+ if response.status >= 300:
255
+ response.read()
256
+ handle_error(response)
257
+ return handle_response(response), response
258
+ except BaseException:
259
+ response.close()
260
+ raise
261
+
262
+
263
+ async def async_create_deployment(
264
+ options: AsyncOperationOptions,
265
+ input_: capo_codedeploy.types.create_deployment_input.CreateDeploymentInput,
266
+ ) -> tuple[
267
+ capo_codedeploy.types.create_deployment_output.CreateDeploymentOutput,
268
+ zapros.Response,
269
+ ]:
270
+ response = await options.client.handler.ahandle(build_request(options, input_))
271
+ try:
272
+ if response.status >= 300:
273
+ await response.aread()
274
+ handle_error(response)
275
+ return await async_handle_response(response), response
276
+ except BaseException:
277
+ await response.aclose()
278
+ raise
@@ -0,0 +1,185 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codedeploy#CreateDeploymentConfig``."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import json
6
+ from typing import Any
7
+
8
+ import zapros
9
+ from typing_extensions import Never
10
+
11
+ import capo_codedeploy._auth._signers
12
+ import capo_codedeploy._auth._sigv4
13
+ import capo_codedeploy._protocol.eventstream
14
+ import capo_codedeploy.errors.deployment_config_already_exists_exception
15
+ import capo_codedeploy.errors.deployment_config_limit_exceeded_exception
16
+ import capo_codedeploy.errors.deployment_config_name_required_exception
17
+ import capo_codedeploy.errors.invalid_compute_platform_exception
18
+ import capo_codedeploy.errors.invalid_deployment_config_name_exception
19
+ import capo_codedeploy.errors.invalid_minimum_healthy_host_value_exception
20
+ import capo_codedeploy.errors.invalid_traffic_routing_configuration_exception
21
+ import capo_codedeploy.errors.invalid_zonal_deployment_configuration_exception
22
+ import capo_codedeploy.types.compute_platform
23
+ import capo_codedeploy.types.create_deployment_config_input
24
+ import capo_codedeploy.types.create_deployment_config_output
25
+ import capo_codedeploy.types.minimum_healthy_hosts
26
+ import capo_codedeploy.types.traffic_routing_config
27
+ import capo_codedeploy.types.zonal_config
28
+ from capo_codedeploy._protocol.errors import parse_error_metadata_json
29
+ from capo_codedeploy._rule_engine._endpoint_rule_set import EndpointParams, resolve
30
+ from capo_codedeploy._services._pipeline import AsyncOperationOptions, OperationOptions
31
+ from capo_codedeploy.errors import UnknownServiceError
32
+
33
+
34
+ def handle_error(response: zapros.Response) -> Never:
35
+ data = json.loads(response.read())
36
+ code, message = parse_error_metadata_json(response, data)
37
+ match code:
38
+ case "DeploymentConfigAlreadyExistsException":
39
+ raise capo_codedeploy.errors.deployment_config_already_exists_exception.DeploymentConfigAlreadyExistsException.from_aws_json_1_1(
40
+ data, message
41
+ )
42
+ case "DeploymentConfigLimitExceededException":
43
+ raise capo_codedeploy.errors.deployment_config_limit_exceeded_exception.DeploymentConfigLimitExceededException.from_aws_json_1_1(
44
+ data, message
45
+ )
46
+ case "DeploymentConfigNameRequiredException":
47
+ raise capo_codedeploy.errors.deployment_config_name_required_exception.DeploymentConfigNameRequiredException.from_aws_json_1_1(
48
+ data, message
49
+ )
50
+ case "InvalidComputePlatformException":
51
+ raise capo_codedeploy.errors.invalid_compute_platform_exception.InvalidComputePlatformException.from_aws_json_1_1(
52
+ data, message
53
+ )
54
+ case "InvalidDeploymentConfigNameException":
55
+ raise capo_codedeploy.errors.invalid_deployment_config_name_exception.InvalidDeploymentConfigNameException.from_aws_json_1_1(
56
+ data, message
57
+ )
58
+ case "InvalidMinimumHealthyHostValueException":
59
+ raise capo_codedeploy.errors.invalid_minimum_healthy_host_value_exception.InvalidMinimumHealthyHostValueException.from_aws_json_1_1(
60
+ data, message
61
+ )
62
+ case "InvalidTrafficRoutingConfigurationException":
63
+ raise capo_codedeploy.errors.invalid_traffic_routing_configuration_exception.InvalidTrafficRoutingConfigurationException.from_aws_json_1_1(
64
+ data, message
65
+ )
66
+ case "InvalidZonalDeploymentConfigurationException":
67
+ raise capo_codedeploy.errors.invalid_zonal_deployment_configuration_exception.InvalidZonalDeploymentConfigurationException.from_aws_json_1_1(
68
+ data, message
69
+ )
70
+ case _:
71
+ raise UnknownServiceError(code=code, message=message, response=response)
72
+
73
+
74
+ def handle_response(
75
+ response: zapros.Response,
76
+ ) -> capo_codedeploy.types.create_deployment_config_output.CreateDeploymentConfigOutput:
77
+ out: capo_codedeploy.types.create_deployment_config_output.CreateDeploymentConfigOutput = capo_codedeploy.types.create_deployment_config_output.deserialize_aws_json_1_1(
78
+ json.loads(response.read())
79
+ )
80
+ return out
81
+
82
+
83
+ async def async_handle_response(
84
+ response: zapros.Response,
85
+ ) -> capo_codedeploy.types.create_deployment_config_output.CreateDeploymentConfigOutput:
86
+ out: capo_codedeploy.types.create_deployment_config_output.CreateDeploymentConfigOutput = capo_codedeploy.types.create_deployment_config_output.deserialize_aws_json_1_1(
87
+ json.loads(await response.aread())
88
+ )
89
+ return out
90
+
91
+
92
+ def get_signer(
93
+ options: AsyncOperationOptions | OperationOptions,
94
+ auth_schemes: list[dict[str, Any]] | None = None,
95
+ ) -> capo_codedeploy._auth._signers.Signer | None:
96
+ name_to_schema = {s["name"]: s for s in (auth_schemes or [])} # noqa: F841
97
+ if (
98
+ options.credentials_provider is not None
99
+ and name_to_schema
100
+ and not name_to_schema.keys() & {"sigv4", "sigv4-s3express"}
101
+ ):
102
+ raise RuntimeError(
103
+ "Endpoint requires an unsupported auth scheme: " + ", ".join(name_to_schema)
104
+ )
105
+ if options.credentials_provider is not None:
106
+ endpoint_scheme = name_to_schema.get("sigv4") or name_to_schema.get(
107
+ "sigv4-s3express"
108
+ )
109
+ if endpoint_scheme is not None or not name_to_schema:
110
+ sigv4_config = capo_codedeploy._auth._sigv4.build_sigv4_auth_scheme(
111
+ "codedeploy", options.region, endpoint_scheme
112
+ )
113
+ if sigv4_config is not None:
114
+ return capo_codedeploy._auth._signers.SigV4Signer(
115
+ options.credentials_provider, auth_scheme=sigv4_config
116
+ )
117
+ raise RuntimeError("Auth was not resolved")
118
+
119
+
120
+ def build_request(
121
+ options: OperationOptions | AsyncOperationOptions,
122
+ input_: capo_codedeploy.types.create_deployment_config_input.CreateDeploymentConfigInput,
123
+ ) -> zapros.Request:
124
+ endpoint = resolve(
125
+ EndpointParams(
126
+ Region=options.region,
127
+ UseDualStack=options.use_dual_stack,
128
+ UseFIPS=options.use_fips,
129
+ Endpoint=options.endpoint,
130
+ )
131
+ ) # noqa: F841
132
+ url = endpoint.url.rstrip("/") + ""
133
+ params: list[tuple[str, str]] = []
134
+ headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
135
+ headers["X-Amz-Target"] = "CodeDeploy_20141006.CreateDeploymentConfig"
136
+ body: bytes | None = json.dumps(
137
+ capo_codedeploy.types.create_deployment_config_input.serialize_aws_json_1_1(
138
+ input_
139
+ ),
140
+ allow_nan=False,
141
+ ).encode()
142
+ headers["content-type"] = "application/x-amz-json-1.1"
143
+ signer = get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
144
+ normalized_url = zapros.URL(url)
145
+ for k, v in params:
146
+ normalized_url.search_params.append(k, v)
147
+ return zapros.Request(
148
+ normalized_url, "POST", headers=headers, body=body, context={"signer": signer}
149
+ )
150
+
151
+
152
+ def create_deployment_config(
153
+ options: OperationOptions,
154
+ input_: capo_codedeploy.types.create_deployment_config_input.CreateDeploymentConfigInput,
155
+ ) -> tuple[
156
+ capo_codedeploy.types.create_deployment_config_output.CreateDeploymentConfigOutput,
157
+ zapros.Response,
158
+ ]:
159
+ response = options.client.handler.handle(build_request(options, input_))
160
+ try:
161
+ if response.status >= 300:
162
+ response.read()
163
+ handle_error(response)
164
+ return handle_response(response), response
165
+ except BaseException:
166
+ response.close()
167
+ raise
168
+
169
+
170
+ async def async_create_deployment_config(
171
+ options: AsyncOperationOptions,
172
+ input_: capo_codedeploy.types.create_deployment_config_input.CreateDeploymentConfigInput,
173
+ ) -> tuple[
174
+ capo_codedeploy.types.create_deployment_config_output.CreateDeploymentConfigOutput,
175
+ zapros.Response,
176
+ ]:
177
+ response = await options.client.handler.ahandle(build_request(options, input_))
178
+ try:
179
+ if response.status >= 300:
180
+ await response.aread()
181
+ handle_error(response)
182
+ return await async_handle_response(response), response
183
+ except BaseException:
184
+ await response.aclose()
185
+ raise