capo-lambda 0.5.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 (681) hide show
  1. capo_lambda/__init__.py +52 -0
  2. capo_lambda/_async.py +25 -0
  3. capo_lambda/_auth/_identity.py +16 -0
  4. capo_lambda/_auth/_providers.py +318 -0
  5. capo_lambda/_auth/_signers.py +84 -0
  6. capo_lambda/_auth/_sigv4.py +382 -0
  7. capo_lambda/_auth/_zapros_handler.py +62 -0
  8. capo_lambda/_iter.py +113 -0
  9. capo_lambda/_operations/aws_gir_api_service/add_layer_version_permission.py +169 -0
  10. capo_lambda/_operations/aws_gir_api_service/add_permission.py +168 -0
  11. capo_lambda/_operations/aws_gir_api_service/checkpoint_durable_execution.py +150 -0
  12. capo_lambda/_operations/aws_gir_api_service/create_alias.py +152 -0
  13. capo_lambda/_operations/aws_gir_api_service/create_capacity_provider.py +157 -0
  14. capo_lambda/_operations/aws_gir_api_service/create_code_signing_config.py +140 -0
  15. capo_lambda/_operations/aws_gir_api_service/create_event_source_mapping.py +173 -0
  16. capo_lambda/_operations/aws_gir_api_service/create_function.py +208 -0
  17. capo_lambda/_operations/aws_gir_api_service/create_function_url_config.py +158 -0
  18. capo_lambda/_operations/aws_gir_api_service/delete_alias.py +123 -0
  19. capo_lambda/_operations/aws_gir_api_service/delete_capacity_provider.py +156 -0
  20. capo_lambda/_operations/aws_gir_api_service/delete_code_signing_config.py +146 -0
  21. capo_lambda/_operations/aws_gir_api_service/delete_event_source_mapping.py +176 -0
  22. capo_lambda/_operations/aws_gir_api_service/delete_function.py +148 -0
  23. capo_lambda/_operations/aws_gir_api_service/delete_function_code_signing_config.py +133 -0
  24. capo_lambda/_operations/aws_gir_api_service/delete_function_concurrency.py +125 -0
  25. capo_lambda/_operations/aws_gir_api_service/delete_function_event_invoke_config.py +130 -0
  26. capo_lambda/_operations/aws_gir_api_service/delete_function_url_config.py +122 -0
  27. capo_lambda/_operations/aws_gir_api_service/delete_layer_version.py +114 -0
  28. capo_lambda/_operations/aws_gir_api_service/delete_provisioned_concurrency_config.py +130 -0
  29. capo_lambda/_operations/aws_gir_api_service/get_account_settings.py +139 -0
  30. capo_lambda/_operations/aws_gir_api_service/get_alias.py +147 -0
  31. capo_lambda/_operations/aws_gir_api_service/get_capacity_provider.py +151 -0
  32. capo_lambda/_operations/aws_gir_api_service/get_code_signing_config.py +146 -0
  33. capo_lambda/_operations/aws_gir_api_service/get_durable_execution.py +154 -0
  34. capo_lambda/_operations/aws_gir_api_service/get_durable_execution_history.py +158 -0
  35. capo_lambda/_operations/aws_gir_api_service/get_durable_execution_state.py +151 -0
  36. capo_lambda/_operations/aws_gir_api_service/get_event_source_mapping.py +166 -0
  37. capo_lambda/_operations/aws_gir_api_service/get_function.py +154 -0
  38. capo_lambda/_operations/aws_gir_api_service/get_function_code_signing_config.py +148 -0
  39. capo_lambda/_operations/aws_gir_api_service/get_function_concurrency.py +145 -0
  40. capo_lambda/_operations/aws_gir_api_service/get_function_configuration.py +172 -0
  41. capo_lambda/_operations/aws_gir_api_service/get_function_event_invoke_config.py +156 -0
  42. capo_lambda/_operations/aws_gir_api_service/get_function_recursion_config.py +149 -0
  43. capo_lambda/_operations/aws_gir_api_service/get_function_scaling_config.py +151 -0
  44. capo_lambda/_operations/aws_gir_api_service/get_function_url_config.py +150 -0
  45. capo_lambda/_operations/aws_gir_api_service/get_layer_version.py +156 -0
  46. capo_lambda/_operations/aws_gir_api_service/get_layer_version_by_arn.py +152 -0
  47. capo_lambda/_operations/aws_gir_api_service/get_layer_version_policy.py +149 -0
  48. capo_lambda/_operations/aws_gir_api_service/get_policy.py +145 -0
  49. capo_lambda/_operations/aws_gir_api_service/get_provisioned_concurrency_config.py +156 -0
  50. capo_lambda/_operations/aws_gir_api_service/get_runtime_management_config.py +151 -0
  51. capo_lambda/_operations/aws_gir_api_service/invoke.py +342 -0
  52. capo_lambda/_operations/aws_gir_api_service/invoke_async.py +153 -0
  53. capo_lambda/_operations/aws_gir_api_service/invoke_with_response_stream.py +346 -0
  54. capo_lambda/_operations/aws_gir_api_service/list_aliases.py +154 -0
  55. capo_lambda/_operations/aws_gir_api_service/list_capacity_providers.py +146 -0
  56. capo_lambda/_operations/aws_gir_api_service/list_code_signing_configs.py +142 -0
  57. capo_lambda/_operations/aws_gir_api_service/list_durable_executions_by_function.py +166 -0
  58. capo_lambda/_operations/aws_gir_api_service/list_event_source_mappings.py +152 -0
  59. capo_lambda/_operations/aws_gir_api_service/list_function_event_invoke_configs.py +153 -0
  60. capo_lambda/_operations/aws_gir_api_service/list_function_url_configs.py +154 -0
  61. capo_lambda/_operations/aws_gir_api_service/list_function_versions_by_capacity_provider.py +155 -0
  62. capo_lambda/_operations/aws_gir_api_service/list_functions.py +150 -0
  63. capo_lambda/_operations/aws_gir_api_service/list_functions_by_code_signing_config.py +150 -0
  64. capo_lambda/_operations/aws_gir_api_service/list_layer_versions.py +160 -0
  65. capo_lambda/_operations/aws_gir_api_service/list_layers.py +147 -0
  66. capo_lambda/_operations/aws_gir_api_service/list_provisioned_concurrency_configs.py +153 -0
  67. capo_lambda/_operations/aws_gir_api_service/list_tags.py +144 -0
  68. capo_lambda/_operations/aws_gir_api_service/list_versions_by_function.py +154 -0
  69. capo_lambda/_operations/aws_gir_api_service/publish_layer_version.py +157 -0
  70. capo_lambda/_operations/aws_gir_api_service/publish_version.py +192 -0
  71. capo_lambda/_operations/aws_gir_api_service/put_function_code_signing_config.py +163 -0
  72. capo_lambda/_operations/aws_gir_api_service/put_function_concurrency.py +149 -0
  73. capo_lambda/_operations/aws_gir_api_service/put_function_event_invoke_config.py +166 -0
  74. capo_lambda/_operations/aws_gir_api_service/put_function_recursion_config.py +157 -0
  75. capo_lambda/_operations/aws_gir_api_service/put_function_scaling_config.py +160 -0
  76. capo_lambda/_operations/aws_gir_api_service/put_provisioned_concurrency_config.py +161 -0
  77. capo_lambda/_operations/aws_gir_api_service/put_runtime_management_config.py +159 -0
  78. capo_lambda/_operations/aws_gir_api_service/remove_layer_version_permission.py +132 -0
  79. capo_lambda/_operations/aws_gir_api_service/remove_permission.py +133 -0
  80. capo_lambda/_operations/aws_gir_api_service/send_durable_execution_callback_failure.py +151 -0
  81. capo_lambda/_operations/aws_gir_api_service/send_durable_execution_callback_heartbeat.py +144 -0
  82. capo_lambda/_operations/aws_gir_api_service/send_durable_execution_callback_success.py +151 -0
  83. capo_lambda/_operations/aws_gir_api_service/stop_durable_execution.py +158 -0
  84. capo_lambda/_operations/aws_gir_api_service/tag_resource.py +129 -0
  85. capo_lambda/_operations/aws_gir_api_service/untag_resource.py +128 -0
  86. capo_lambda/_operations/aws_gir_api_service/update_alias.py +160 -0
  87. capo_lambda/_operations/aws_gir_api_service/update_capacity_provider.py +160 -0
  88. capo_lambda/_operations/aws_gir_api_service/update_code_signing_config.py +151 -0
  89. capo_lambda/_operations/aws_gir_api_service/update_event_source_mapping.py +179 -0
  90. capo_lambda/_operations/aws_gir_api_service/update_function_code.py +203 -0
  91. capo_lambda/_operations/aws_gir_api_service/update_function_configuration.py +204 -0
  92. capo_lambda/_operations/aws_gir_api_service/update_function_event_invoke_config.py +166 -0
  93. capo_lambda/_operations/aws_gir_api_service/update_function_url_config.py +158 -0
  94. capo_lambda/_pagination.py +21 -0
  95. capo_lambda/_protocol/__init__.py +1 -0
  96. capo_lambda/_protocol/errors.py +59 -0
  97. capo_lambda/_protocol/eventstream.py +238 -0
  98. capo_lambda/_protocol/xml.py +27 -0
  99. capo_lambda/_resources/aws_gir_api_service/capacity_provider_resource.py +713 -0
  100. capo_lambda/_resources/aws_gir_api_service/code_signing_config_resource.py +656 -0
  101. capo_lambda/_resources/aws_gir_api_service/event_source_mapping.py +1163 -0
  102. capo_lambda/_resources/aws_gir_api_service/function.py +3923 -0
  103. capo_lambda/_resources/aws_gir_api_service/function_alias.py +670 -0
  104. capo_lambda/_resources/aws_gir_api_service/function_version_resource.py +303 -0
  105. capo_lambda/_resources/aws_gir_api_service/layer_resource.py +170 -0
  106. capo_lambda/_resources/aws_gir_api_service/layer_version.py +1022 -0
  107. capo_lambda/_resources/aws_gir_api_service/permission.py +389 -0
  108. capo_lambda/_resources/aws_gir_api_service/provisioned_concurrency_config.py +376 -0
  109. capo_lambda/_resources/aws_gir_api_service/resource_policy.py +19 -0
  110. capo_lambda/_rule_engine/__init__.py +0 -0
  111. capo_lambda/_rule_engine/_aws_partition.py +160 -0
  112. capo_lambda/_rule_engine/_endpoint_rule_set.py +136 -0
  113. capo_lambda/_rule_engine/_endpoint_runtime.py +389 -0
  114. capo_lambda/_services/_aws_config.py +152 -0
  115. capo_lambda/_services/_lambda.py +1388 -0
  116. capo_lambda/_services/_pipeline.py +198 -0
  117. capo_lambda/_services/async__lambda.py +1411 -0
  118. capo_lambda/errors/__init__.py +148 -0
  119. capo_lambda/errors/_base.py +94 -0
  120. capo_lambda/errors/callback_timeout_exception.py +54 -0
  121. capo_lambda/errors/capacity_provider_limit_exceeded_exception.py +54 -0
  122. capo_lambda/errors/code_signing_config_not_found_exception.py +53 -0
  123. capo_lambda/errors/code_storage_exceeded_exception.py +54 -0
  124. capo_lambda/errors/code_verification_failed_exception.py +53 -0
  125. capo_lambda/errors/durable_execution_already_started_exception.py +54 -0
  126. capo_lambda/errors/ec2_access_denied_exception.py +53 -0
  127. capo_lambda/errors/ec2_throttled_exception.py +53 -0
  128. capo_lambda/errors/ec2_unexpected_exception.py +58 -0
  129. capo_lambda/errors/efs_mount_connectivity_exception.py +53 -0
  130. capo_lambda/errors/efs_mount_failure_exception.py +53 -0
  131. capo_lambda/errors/efs_mount_timeout_exception.py +53 -0
  132. capo_lambda/errors/efsio_exception.py +53 -0
  133. capo_lambda/errors/eni_limit_reached_exception.py +53 -0
  134. capo_lambda/errors/function_versions_per_capacity_provider_limit_exceeded_exception.py +64 -0
  135. capo_lambda/errors/invalid_code_signature_exception.py +53 -0
  136. capo_lambda/errors/invalid_parameter_value_exception.py +55 -0
  137. capo_lambda/errors/invalid_request_content_exception.py +55 -0
  138. capo_lambda/errors/invalid_runtime_exception.py +53 -0
  139. capo_lambda/errors/invalid_security_group_id_exception.py +53 -0
  140. capo_lambda/errors/invalid_subnet_id_exception.py +53 -0
  141. capo_lambda/errors/invalid_zip_file_exception.py +53 -0
  142. capo_lambda/errors/kms_access_denied_exception.py +53 -0
  143. capo_lambda/errors/kms_disabled_exception.py +53 -0
  144. capo_lambda/errors/kms_invalid_state_exception.py +53 -0
  145. capo_lambda/errors/kms_not_found_exception.py +53 -0
  146. capo_lambda/errors/no_published_version_exception.py +54 -0
  147. capo_lambda/errors/policy_length_exceeded_exception.py +53 -0
  148. capo_lambda/errors/precondition_failed_exception.py +55 -0
  149. capo_lambda/errors/provisioned_concurrency_config_not_found_exception.py +53 -0
  150. capo_lambda/errors/recursive_invocation_exception.py +55 -0
  151. capo_lambda/errors/request_too_large_exception.py +53 -0
  152. capo_lambda/errors/resource_conflict_exception.py +55 -0
  153. capo_lambda/errors/resource_in_use_exception.py +53 -0
  154. capo_lambda/errors/resource_not_found_exception.py +53 -0
  155. capo_lambda/errors/resource_not_ready_exception.py +55 -0
  156. capo_lambda/errors/s3_files_mount_connectivity_exception.py +55 -0
  157. capo_lambda/errors/s3_files_mount_failure_exception.py +55 -0
  158. capo_lambda/errors/s3_files_mount_timeout_exception.py +55 -0
  159. capo_lambda/errors/serialized_request_entity_too_large_exception.py +54 -0
  160. capo_lambda/errors/service_exception.py +53 -0
  161. capo_lambda/errors/snap_start_exception.py +53 -0
  162. capo_lambda/errors/snap_start_not_ready_exception.py +53 -0
  163. capo_lambda/errors/snap_start_timeout_exception.py +53 -0
  164. capo_lambda/errors/subnet_ip_address_limit_reached_exception.py +53 -0
  165. capo_lambda/errors/too_many_requests_exception.py +69 -0
  166. capo_lambda/errors/unsupported_media_type_exception.py +53 -0
  167. capo_lambda/py.typed +0 -0
  168. capo_lambda/types/_prelude/blob.py +12 -0
  169. capo_lambda/types/_prelude/timestamp.py +12 -0
  170. capo_lambda/types/account_limit.py +62 -0
  171. capo_lambda/types/account_usage.py +36 -0
  172. capo_lambda/types/action.py +5 -0
  173. capo_lambda/types/add_layer_version_permission_request.py +69 -0
  174. capo_lambda/types/add_layer_version_permission_response.py +34 -0
  175. capo_lambda/types/add_permission_request.py +122 -0
  176. capo_lambda/types/add_permission_response.py +28 -0
  177. capo_lambda/types/additional_version.py +5 -0
  178. capo_lambda/types/additional_version_weights.py +27 -0
  179. capo_lambda/types/alias.py +5 -0
  180. capo_lambda/types/alias_configuration.py +77 -0
  181. capo_lambda/types/alias_list.py +27 -0
  182. capo_lambda/types/alias_routing_configuration.py +42 -0
  183. capo_lambda/types/allow_credentials.py +5 -0
  184. capo_lambda/types/allow_methods_list.py +17 -0
  185. capo_lambda/types/allow_origins_list.py +17 -0
  186. capo_lambda/types/allowed_publishers.py +47 -0
  187. capo_lambda/types/amazon_managed_kafka_event_source_config.py +49 -0
  188. capo_lambda/types/application_log_level.py +21 -0
  189. capo_lambda/types/architecture.py +17 -0
  190. capo_lambda/types/architectures_list.py +27 -0
  191. capo_lambda/types/arn.py +5 -0
  192. capo_lambda/types/attempt_count.py +5 -0
  193. capo_lambda/types/batch_size.py +5 -0
  194. capo_lambda/types/binary_operation_payload.py +15 -0
  195. capo_lambda/types/bisect_batch_on_function_error.py +5 -0
  196. capo_lambda/types/blob.py +15 -0
  197. capo_lambda/types/blob_stream.py +7 -0
  198. capo_lambda/types/boolean.py +5 -0
  199. capo_lambda/types/callback_details.py +46 -0
  200. capo_lambda/types/callback_failed_details.py +35 -0
  201. capo_lambda/types/callback_id.py +5 -0
  202. capo_lambda/types/callback_options.py +36 -0
  203. capo_lambda/types/callback_started_details.py +44 -0
  204. capo_lambda/types/callback_succeeded_details.py +35 -0
  205. capo_lambda/types/callback_timed_out_details.py +35 -0
  206. capo_lambda/types/capacity_provider.py +143 -0
  207. capo_lambda/types/capacity_provider_arn.py +5 -0
  208. capo_lambda/types/capacity_provider_config.py +45 -0
  209. capo_lambda/types/capacity_provider_max_v_cpu_count.py +5 -0
  210. capo_lambda/types/capacity_provider_name.py +5 -0
  211. capo_lambda/types/capacity_provider_permissions_config.py +37 -0
  212. capo_lambda/types/capacity_provider_predefined_metric_type.py +16 -0
  213. capo_lambda/types/capacity_provider_scaling_config.py +72 -0
  214. capo_lambda/types/capacity_provider_scaling_mode.py +17 -0
  215. capo_lambda/types/capacity_provider_scaling_policies_list.py +33 -0
  216. capo_lambda/types/capacity_provider_security_group_ids.py +19 -0
  217. capo_lambda/types/capacity_provider_state.py +19 -0
  218. capo_lambda/types/capacity_provider_subnet_ids.py +17 -0
  219. capo_lambda/types/capacity_provider_vpc_config.py +65 -0
  220. capo_lambda/types/capacity_providers_list.py +29 -0
  221. capo_lambda/types/chained_invoke_details.py +39 -0
  222. capo_lambda/types/chained_invoke_failed_details.py +35 -0
  223. capo_lambda/types/chained_invoke_options.py +38 -0
  224. capo_lambda/types/chained_invoke_started_details.py +67 -0
  225. capo_lambda/types/chained_invoke_stopped_details.py +35 -0
  226. capo_lambda/types/chained_invoke_succeeded_details.py +35 -0
  227. capo_lambda/types/chained_invoke_timed_out_details.py +35 -0
  228. capo_lambda/types/checkpoint_durable_execution_request.py +58 -0
  229. capo_lambda/types/checkpoint_durable_execution_response.py +52 -0
  230. capo_lambda/types/checkpoint_token.py +5 -0
  231. capo_lambda/types/checkpoint_updated_execution_state.py +43 -0
  232. capo_lambda/types/client_token.py +5 -0
  233. capo_lambda/types/code_signing_config.py +94 -0
  234. capo_lambda/types/code_signing_config_arn.py +5 -0
  235. capo_lambda/types/code_signing_config_id.py +5 -0
  236. capo_lambda/types/code_signing_config_list.py +29 -0
  237. capo_lambda/types/code_signing_policies.py +42 -0
  238. capo_lambda/types/code_signing_policy.py +17 -0
  239. capo_lambda/types/collection_name.py +5 -0
  240. capo_lambda/types/compatible_architectures.py +27 -0
  241. capo_lambda/types/compatible_runtimes.py +27 -0
  242. capo_lambda/types/concurrency.py +30 -0
  243. capo_lambda/types/context_details.py +46 -0
  244. capo_lambda/types/context_failed_details.py +35 -0
  245. capo_lambda/types/context_options.py +28 -0
  246. capo_lambda/types/context_started_details.py +18 -0
  247. capo_lambda/types/context_succeeded_details.py +35 -0
  248. capo_lambda/types/cors.py +96 -0
  249. capo_lambda/types/create_alias_request.py +72 -0
  250. capo_lambda/types/create_capacity_provider_request.py +139 -0
  251. capo_lambda/types/create_capacity_provider_response.py +41 -0
  252. capo_lambda/types/create_code_signing_config_request.py +82 -0
  253. capo_lambda/types/create_code_signing_config_response.py +43 -0
  254. capo_lambda/types/create_event_source_mapping_request.py +426 -0
  255. capo_lambda/types/create_function_request.py +385 -0
  256. capo_lambda/types/create_function_url_config_request.py +73 -0
  257. capo_lambda/types/create_function_url_config_response.py +95 -0
  258. capo_lambda/types/database_name.py +5 -0
  259. capo_lambda/types/date.py +15 -0
  260. capo_lambda/types/dead_letter_config.py +28 -0
  261. capo_lambda/types/delete_alias_request.py +27 -0
  262. capo_lambda/types/delete_capacity_provider_request.py +26 -0
  263. capo_lambda/types/delete_capacity_provider_response.py +41 -0
  264. capo_lambda/types/delete_code_signing_config_request.py +26 -0
  265. capo_lambda/types/delete_code_signing_config_response.py +18 -0
  266. capo_lambda/types/delete_event_source_mapping_request.py +24 -0
  267. capo_lambda/types/delete_function_code_signing_config_request.py +24 -0
  268. capo_lambda/types/delete_function_concurrency_request.py +24 -0
  269. capo_lambda/types/delete_function_event_invoke_config_request.py +29 -0
  270. capo_lambda/types/delete_function_request.py +29 -0
  271. capo_lambda/types/delete_function_response.py +24 -0
  272. capo_lambda/types/delete_function_url_config_request.py +29 -0
  273. capo_lambda/types/delete_layer_version_request.py +27 -0
  274. capo_lambda/types/delete_provisioned_concurrency_config_request.py +27 -0
  275. capo_lambda/types/description.py +5 -0
  276. capo_lambda/types/destination_arn.py +5 -0
  277. capo_lambda/types/destination_config.py +51 -0
  278. capo_lambda/types/document_db_event_source_config.py +50 -0
  279. capo_lambda/types/durable_config.py +39 -0
  280. capo_lambda/types/durable_execution_arn.py +5 -0
  281. capo_lambda/types/durable_execution_name.py +5 -0
  282. capo_lambda/types/durable_executions.py +27 -0
  283. capo_lambda/types/duration_seconds.py +5 -0
  284. capo_lambda/types/enabled.py +5 -0
  285. capo_lambda/types/end_point_type.py +14 -0
  286. capo_lambda/types/endpoint.py +5 -0
  287. capo_lambda/types/endpoint_lists.py +17 -0
  288. capo_lambda/types/endpoints.py +37 -0
  289. capo_lambda/types/environment.py +38 -0
  290. capo_lambda/types/environment_error.py +35 -0
  291. capo_lambda/types/environment_response.py +53 -0
  292. capo_lambda/types/environment_variable_name.py +5 -0
  293. capo_lambda/types/environment_variable_value.py +5 -0
  294. capo_lambda/types/environment_variables.py +27 -0
  295. capo_lambda/types/ephemeral_storage.py +31 -0
  296. capo_lambda/types/ephemeral_storage_size.py +5 -0
  297. capo_lambda/types/error_data.py +5 -0
  298. capo_lambda/types/error_message.py +5 -0
  299. capo_lambda/types/error_object.py +57 -0
  300. capo_lambda/types/error_type.py +5 -0
  301. capo_lambda/types/event.py +584 -0
  302. capo_lambda/types/event_error.py +41 -0
  303. capo_lambda/types/event_id.py +5 -0
  304. capo_lambda/types/event_input.py +35 -0
  305. capo_lambda/types/event_result.py +35 -0
  306. capo_lambda/types/event_source_mapping_arn.py +5 -0
  307. capo_lambda/types/event_source_mapping_configuration.py +472 -0
  308. capo_lambda/types/event_source_mapping_logging_config.py +42 -0
  309. capo_lambda/types/event_source_mapping_metric.py +18 -0
  310. capo_lambda/types/event_source_mapping_metric_list.py +29 -0
  311. capo_lambda/types/event_source_mapping_metrics_config.py +42 -0
  312. capo_lambda/types/event_source_mapping_system_log_level.py +18 -0
  313. capo_lambda/types/event_source_mappings_list.py +33 -0
  314. capo_lambda/types/event_source_position.py +18 -0
  315. capo_lambda/types/event_source_token.py +5 -0
  316. capo_lambda/types/event_type.py +39 -0
  317. capo_lambda/types/events.py +27 -0
  318. capo_lambda/types/execution.py +95 -0
  319. capo_lambda/types/execution_details.py +28 -0
  320. capo_lambda/types/execution_environment_memory_gi_b_per_v_cpu.py +5 -0
  321. capo_lambda/types/execution_failed_details.py +35 -0
  322. capo_lambda/types/execution_started_details.py +43 -0
  323. capo_lambda/types/execution_status.py +20 -0
  324. capo_lambda/types/execution_status_list.py +29 -0
  325. capo_lambda/types/execution_stopped_details.py +35 -0
  326. capo_lambda/types/execution_succeeded_details.py +35 -0
  327. capo_lambda/types/execution_timed_out_details.py +32 -0
  328. capo_lambda/types/execution_timeout.py +5 -0
  329. capo_lambda/types/execution_timestamp.py +15 -0
  330. capo_lambda/types/file_system_arn.py +5 -0
  331. capo_lambda/types/file_system_config.py +39 -0
  332. capo_lambda/types/file_system_config_list.py +29 -0
  333. capo_lambda/types/filter.py +28 -0
  334. capo_lambda/types/filter_criteria.py +32 -0
  335. capo_lambda/types/filter_criteria_error.py +39 -0
  336. capo_lambda/types/filter_criteria_error_code.py +5 -0
  337. capo_lambda/types/filter_criteria_error_message.py +5 -0
  338. capo_lambda/types/filter_list.py +27 -0
  339. capo_lambda/types/full_document.py +17 -0
  340. capo_lambda/types/function_arn.py +5 -0
  341. capo_lambda/types/function_arn_list.py +17 -0
  342. capo_lambda/types/function_code.py +69 -0
  343. capo_lambda/types/function_code_location.py +52 -0
  344. capo_lambda/types/function_configuration.py +513 -0
  345. capo_lambda/types/function_event_invoke_config.py +80 -0
  346. capo_lambda/types/function_event_invoke_config_list.py +31 -0
  347. capo_lambda/types/function_list.py +29 -0
  348. capo_lambda/types/function_name.py +5 -0
  349. capo_lambda/types/function_response_type.py +14 -0
  350. capo_lambda/types/function_response_type_list.py +29 -0
  351. capo_lambda/types/function_scaling_config.py +38 -0
  352. capo_lambda/types/function_scaling_config_execution_environments.py +5 -0
  353. capo_lambda/types/function_url.py +5 -0
  354. capo_lambda/types/function_url_auth_type.py +17 -0
  355. capo_lambda/types/function_url_config.py +96 -0
  356. capo_lambda/types/function_url_config_list.py +29 -0
  357. capo_lambda/types/function_url_qualifier.py +5 -0
  358. capo_lambda/types/function_version.py +14 -0
  359. capo_lambda/types/function_version_latest_published.py +14 -0
  360. capo_lambda/types/function_versions_by_capacity_provider_list.py +37 -0
  361. capo_lambda/types/function_versions_by_capacity_provider_list_item.py +47 -0
  362. capo_lambda/types/get_account_settings_request.py +18 -0
  363. capo_lambda/types/get_account_settings_response.py +51 -0
  364. capo_lambda/types/get_alias_request.py +27 -0
  365. capo_lambda/types/get_capacity_provider_request.py +26 -0
  366. capo_lambda/types/get_capacity_provider_response.py +41 -0
  367. capo_lambda/types/get_code_signing_config_request.py +26 -0
  368. capo_lambda/types/get_code_signing_config_response.py +43 -0
  369. capo_lambda/types/get_durable_execution_history_request.py +38 -0
  370. capo_lambda/types/get_durable_execution_history_response.py +42 -0
  371. capo_lambda/types/get_durable_execution_request.py +24 -0
  372. capo_lambda/types/get_durable_execution_response.py +150 -0
  373. capo_lambda/types/get_durable_execution_state_request.py +33 -0
  374. capo_lambda/types/get_durable_execution_state_response.py +46 -0
  375. capo_lambda/types/get_event_source_mapping_request.py +24 -0
  376. capo_lambda/types/get_function_code_signing_config_request.py +24 -0
  377. capo_lambda/types/get_function_code_signing_config_response.py +45 -0
  378. capo_lambda/types/get_function_concurrency_request.py +24 -0
  379. capo_lambda/types/get_function_concurrency_response.py +30 -0
  380. capo_lambda/types/get_function_configuration_request.py +29 -0
  381. capo_lambda/types/get_function_event_invoke_config_request.py +29 -0
  382. capo_lambda/types/get_function_recursion_config_request.py +24 -0
  383. capo_lambda/types/get_function_recursion_config_response.py +36 -0
  384. capo_lambda/types/get_function_request.py +29 -0
  385. capo_lambda/types/get_function_response.py +96 -0
  386. capo_lambda/types/get_function_scaling_config_request.py +29 -0
  387. capo_lambda/types/get_function_scaling_config_response.py +69 -0
  388. capo_lambda/types/get_function_url_config_request.py +29 -0
  389. capo_lambda/types/get_function_url_config_response.py +100 -0
  390. capo_lambda/types/get_layer_version_by_arn_request.py +24 -0
  391. capo_lambda/types/get_layer_version_policy_request.py +27 -0
  392. capo_lambda/types/get_layer_version_policy_response.py +34 -0
  393. capo_lambda/types/get_layer_version_request.py +27 -0
  394. capo_lambda/types/get_layer_version_response.py +127 -0
  395. capo_lambda/types/get_policy_request.py +29 -0
  396. capo_lambda/types/get_policy_response.py +34 -0
  397. capo_lambda/types/get_provisioned_concurrency_config_request.py +27 -0
  398. capo_lambda/types/get_provisioned_concurrency_config_response.py +94 -0
  399. capo_lambda/types/get_runtime_management_config_request.py +29 -0
  400. capo_lambda/types/get_runtime_management_config_response.py +56 -0
  401. capo_lambda/types/handler.py +5 -0
  402. capo_lambda/types/header.py +5 -0
  403. capo_lambda/types/headers_list.py +17 -0
  404. capo_lambda/types/http_status.py +5 -0
  405. capo_lambda/types/image_config.py +55 -0
  406. capo_lambda/types/image_config_error.py +35 -0
  407. capo_lambda/types/image_config_response.py +51 -0
  408. capo_lambda/types/include_execution_data.py +5 -0
  409. capo_lambda/types/input_payload.py +5 -0
  410. capo_lambda/types/instance_requirements.py +77 -0
  411. capo_lambda/types/instance_type.py +5 -0
  412. capo_lambda/types/instance_type_set.py +17 -0
  413. capo_lambda/types/integer.py +5 -0
  414. capo_lambda/types/invocation_completed_details.py +75 -0
  415. capo_lambda/types/invocation_request.py +57 -0
  416. capo_lambda/types/invocation_response.py +48 -0
  417. capo_lambda/types/invocation_type.py +18 -0
  418. capo_lambda/types/invoke_async_request.py +16 -0
  419. capo_lambda/types/invoke_async_response.py +24 -0
  420. capo_lambda/types/invoke_mode.py +17 -0
  421. capo_lambda/types/invoke_response_stream_update.py +42 -0
  422. capo_lambda/types/invoke_with_response_stream_complete_event.py +55 -0
  423. capo_lambda/types/invoke_with_response_stream_request.py +54 -0
  424. capo_lambda/types/invoke_with_response_stream_response.py +24 -0
  425. capo_lambda/types/invoke_with_response_stream_response_event.py +78 -0
  426. capo_lambda/types/invoked_via_function_url.py +5 -0
  427. capo_lambda/types/item_count.py +5 -0
  428. capo_lambda/types/kafka_schema_registry_access_config.py +47 -0
  429. capo_lambda/types/kafka_schema_registry_access_config_list.py +33 -0
  430. capo_lambda/types/kafka_schema_registry_auth_type.py +18 -0
  431. capo_lambda/types/kafka_schema_registry_config.py +93 -0
  432. capo_lambda/types/kafka_schema_validation_attribute.py +17 -0
  433. capo_lambda/types/kafka_schema_validation_config.py +42 -0
  434. capo_lambda/types/kafka_schema_validation_config_list.py +33 -0
  435. capo_lambda/types/kms_key_arn.py +5 -0
  436. capo_lambda/types/kms_key_arn_non_empty.py +5 -0
  437. capo_lambda/types/lambda_managed_instances_capacity_provider_config.py +59 -0
  438. capo_lambda/types/last_update_status.py +18 -0
  439. capo_lambda/types/last_update_status_reason.py +5 -0
  440. capo_lambda/types/last_update_status_reason_code.py +49 -0
  441. capo_lambda/types/layer.py +49 -0
  442. capo_lambda/types/layer_arn.py +5 -0
  443. capo_lambda/types/layer_list.py +17 -0
  444. capo_lambda/types/layer_name.py +5 -0
  445. capo_lambda/types/layer_permission_allowed_action.py +5 -0
  446. capo_lambda/types/layer_permission_allowed_principal.py +5 -0
  447. capo_lambda/types/layer_version_arn.py +5 -0
  448. capo_lambda/types/layer_version_content_input.py +55 -0
  449. capo_lambda/types/layer_version_content_output.py +54 -0
  450. capo_lambda/types/layer_version_number.py +5 -0
  451. capo_lambda/types/layer_versions_list.py +29 -0
  452. capo_lambda/types/layer_versions_list_item.py +101 -0
  453. capo_lambda/types/layers_list.py +27 -0
  454. capo_lambda/types/layers_list_item.py +56 -0
  455. capo_lambda/types/layers_reference_list.py +27 -0
  456. capo_lambda/types/license_info.py +5 -0
  457. capo_lambda/types/list_aliases_request.py +35 -0
  458. capo_lambda/types/list_aliases_response.py +39 -0
  459. capo_lambda/types/list_capacity_providers_request.py +32 -0
  460. capo_lambda/types/list_capacity_providers_response.py +52 -0
  461. capo_lambda/types/list_code_signing_configs_request.py +27 -0
  462. capo_lambda/types/list_code_signing_configs_response.py +49 -0
  463. capo_lambda/types/list_durable_executions_by_function_request.py +55 -0
  464. capo_lambda/types/list_durable_executions_by_function_response.py +47 -0
  465. capo_lambda/types/list_event_source_mappings_request.py +35 -0
  466. capo_lambda/types/list_event_source_mappings_response.py +49 -0
  467. capo_lambda/types/list_function_event_invoke_configs_request.py +32 -0
  468. capo_lambda/types/list_function_event_invoke_configs_response.py +49 -0
  469. capo_lambda/types/list_function_url_configs_request.py +30 -0
  470. capo_lambda/types/list_function_url_configs_response.py +54 -0
  471. capo_lambda/types/list_function_versions_by_capacity_provider_request.py +32 -0
  472. capo_lambda/types/list_function_versions_by_capacity_provider_response.py +62 -0
  473. capo_lambda/types/list_functions_by_code_signing_config_request.py +32 -0
  474. capo_lambda/types/list_functions_by_code_signing_config_response.py +43 -0
  475. capo_lambda/types/list_functions_request.py +33 -0
  476. capo_lambda/types/list_functions_response.py +43 -0
  477. capo_lambda/types/list_layer_versions_request.py +36 -0
  478. capo_lambda/types/list_layer_versions_response.py +45 -0
  479. capo_lambda/types/list_layers_request.py +33 -0
  480. capo_lambda/types/list_layers_response.py +39 -0
  481. capo_lambda/types/list_provisioned_concurrency_configs_request.py +32 -0
  482. capo_lambda/types/list_provisioned_concurrency_configs_response.py +49 -0
  483. capo_lambda/types/list_tags_request.py +24 -0
  484. capo_lambda/types/list_tags_response.py +32 -0
  485. capo_lambda/types/list_versions_by_function_request.py +30 -0
  486. capo_lambda/types/list_versions_by_function_response.py +43 -0
  487. capo_lambda/types/local_mount_path.py +5 -0
  488. capo_lambda/types/log_format.py +17 -0
  489. capo_lambda/types/log_group.py +5 -0
  490. capo_lambda/types/log_type.py +17 -0
  491. capo_lambda/types/logging_config.py +79 -0
  492. capo_lambda/types/long.py +5 -0
  493. capo_lambda/types/master_region.py +5 -0
  494. capo_lambda/types/max_age.py +5 -0
  495. capo_lambda/types/max_fifty_list_items.py +5 -0
  496. capo_lambda/types/max_function_event_invoke_config_list_items.py +5 -0
  497. capo_lambda/types/max_items.py +5 -0
  498. capo_lambda/types/max_layer_list_items.py +5 -0
  499. capo_lambda/types/max_list_items.py +5 -0
  500. capo_lambda/types/max_provisioned_concurrency_config_list_items.py +5 -0
  501. capo_lambda/types/maximum_batching_window_in_seconds.py +5 -0
  502. capo_lambda/types/maximum_concurrency.py +5 -0
  503. capo_lambda/types/maximum_event_age_in_seconds.py +5 -0
  504. capo_lambda/types/maximum_number_of_pollers.py +5 -0
  505. capo_lambda/types/maximum_record_age_in_seconds.py +5 -0
  506. capo_lambda/types/maximum_retry_attempts.py +5 -0
  507. capo_lambda/types/maximum_retry_attempts_event_source_mapping.py +5 -0
  508. capo_lambda/types/memory_size.py +5 -0
  509. capo_lambda/types/method.py +5 -0
  510. capo_lambda/types/metric_target_value.py +5 -0
  511. capo_lambda/types/minimum_number_of_pollers.py +5 -0
  512. capo_lambda/types/name_spaced_function_arn.py +5 -0
  513. capo_lambda/types/namespaced_function_name.py +5 -0
  514. capo_lambda/types/namespaced_statement_id.py +5 -0
  515. capo_lambda/types/non_negative_integer.py +5 -0
  516. capo_lambda/types/nullable_boolean.py +5 -0
  517. capo_lambda/types/numeric_latest_published_or_alias_qualifier.py +5 -0
  518. capo_lambda/types/on_failure.py +28 -0
  519. capo_lambda/types/on_success.py +28 -0
  520. capo_lambda/types/operation.py +205 -0
  521. capo_lambda/types/operation_action.py +20 -0
  522. capo_lambda/types/operation_id.py +5 -0
  523. capo_lambda/types/operation_name.py +5 -0
  524. capo_lambda/types/operation_payload.py +5 -0
  525. capo_lambda/types/operation_status.py +23 -0
  526. capo_lambda/types/operation_sub_type.py +5 -0
  527. capo_lambda/types/operation_type.py +21 -0
  528. capo_lambda/types/operation_update.py +174 -0
  529. capo_lambda/types/operation_updates.py +27 -0
  530. capo_lambda/types/operations.py +27 -0
  531. capo_lambda/types/organization_id.py +5 -0
  532. capo_lambda/types/origin.py +5 -0
  533. capo_lambda/types/output_payload.py +5 -0
  534. capo_lambda/types/package_type.py +17 -0
  535. capo_lambda/types/parallelization_factor.py +5 -0
  536. capo_lambda/types/pattern.py +5 -0
  537. capo_lambda/types/per_execution_environment_max_concurrency.py +5 -0
  538. capo_lambda/types/positive_integer.py +5 -0
  539. capo_lambda/types/principal.py +5 -0
  540. capo_lambda/types/principal_org_id.py +5 -0
  541. capo_lambda/types/provisioned_concurrency_config_list.py +37 -0
  542. capo_lambda/types/provisioned_concurrency_config_list_item.py +101 -0
  543. capo_lambda/types/provisioned_concurrency_status_enum.py +18 -0
  544. capo_lambda/types/provisioned_poller_config.py +48 -0
  545. capo_lambda/types/provisioned_poller_group_name.py +5 -0
  546. capo_lambda/types/publish_layer_version_request.py +98 -0
  547. capo_lambda/types/publish_layer_version_response.py +127 -0
  548. capo_lambda/types/publish_version_request.py +65 -0
  549. capo_lambda/types/published_function_qualifier.py +5 -0
  550. capo_lambda/types/put_function_code_signing_config_request.py +38 -0
  551. capo_lambda/types/put_function_code_signing_config_response.py +45 -0
  552. capo_lambda/types/put_function_concurrency_request.py +38 -0
  553. capo_lambda/types/put_function_event_invoke_config_request.py +66 -0
  554. capo_lambda/types/put_function_recursion_config_request.py +44 -0
  555. capo_lambda/types/put_function_recursion_config_response.py +36 -0
  556. capo_lambda/types/put_function_scaling_config_request.py +50 -0
  557. capo_lambda/types/put_function_scaling_config_response.py +36 -0
  558. capo_lambda/types/put_provisioned_concurrency_config_request.py +43 -0
  559. capo_lambda/types/put_provisioned_concurrency_config_response.py +94 -0
  560. capo_lambda/types/put_runtime_management_config_request.py +58 -0
  561. capo_lambda/types/put_runtime_management_config_response.py +60 -0
  562. capo_lambda/types/qualifier.py +5 -0
  563. capo_lambda/types/queue.py +5 -0
  564. capo_lambda/types/queues.py +17 -0
  565. capo_lambda/types/recursive_loop.py +17 -0
  566. capo_lambda/types/remove_layer_version_permission_request.py +33 -0
  567. capo_lambda/types/remove_permission_request.py +35 -0
  568. capo_lambda/types/replay_children.py +5 -0
  569. capo_lambda/types/reserved_concurrent_executions.py +5 -0
  570. capo_lambda/types/resource_arn.py +5 -0
  571. capo_lambda/types/response_streaming_invocation_type.py +17 -0
  572. capo_lambda/types/retention_period_in_days.py +5 -0
  573. capo_lambda/types/retry_details.py +38 -0
  574. capo_lambda/types/reverse_order.py +5 -0
  575. capo_lambda/types/role_arn.py +5 -0
  576. capo_lambda/types/runtime.py +61 -0
  577. capo_lambda/types/runtime_version_arn.py +5 -0
  578. capo_lambda/types/runtime_version_config.py +45 -0
  579. capo_lambda/types/runtime_version_error.py +35 -0
  580. capo_lambda/types/s3_bucket.py +5 -0
  581. capo_lambda/types/s3_key.py +5 -0
  582. capo_lambda/types/s3_object_version.py +5 -0
  583. capo_lambda/types/scaling_config.py +30 -0
  584. capo_lambda/types/schema_registry_event_record_format.py +17 -0
  585. capo_lambda/types/schema_registry_uri.py +5 -0
  586. capo_lambda/types/security_group_id.py +5 -0
  587. capo_lambda/types/security_group_ids.py +19 -0
  588. capo_lambda/types/self_managed_event_source.py +36 -0
  589. capo_lambda/types/self_managed_kafka_event_source_config.py +49 -0
  590. capo_lambda/types/send_durable_execution_callback_failure_request.py +35 -0
  591. capo_lambda/types/send_durable_execution_callback_failure_response.py +18 -0
  592. capo_lambda/types/send_durable_execution_callback_heartbeat_request.py +24 -0
  593. capo_lambda/types/send_durable_execution_callback_heartbeat_response.py +18 -0
  594. capo_lambda/types/send_durable_execution_callback_success_request.py +41 -0
  595. capo_lambda/types/send_durable_execution_callback_success_response.py +18 -0
  596. capo_lambda/types/sensitive_string.py +5 -0
  597. capo_lambda/types/signing_profile_version_arns.py +17 -0
  598. capo_lambda/types/snap_start.py +36 -0
  599. capo_lambda/types/snap_start_apply_on.py +17 -0
  600. capo_lambda/types/snap_start_optimization_status.py +17 -0
  601. capo_lambda/types/snap_start_response.py +57 -0
  602. capo_lambda/types/source_access_configuration.py +41 -0
  603. capo_lambda/types/source_access_configurations.py +29 -0
  604. capo_lambda/types/source_access_type.py +23 -0
  605. capo_lambda/types/source_owner.py +5 -0
  606. capo_lambda/types/stack_trace_entries.py +19 -0
  607. capo_lambda/types/stack_trace_entry.py +5 -0
  608. capo_lambda/types/state.py +23 -0
  609. capo_lambda/types/state_reason.py +5 -0
  610. capo_lambda/types/state_reason_code.py +53 -0
  611. capo_lambda/types/statement_id.py +5 -0
  612. capo_lambda/types/step_details.py +68 -0
  613. capo_lambda/types/step_failed_details.py +51 -0
  614. capo_lambda/types/step_options.py +30 -0
  615. capo_lambda/types/step_started_details.py +18 -0
  616. capo_lambda/types/step_succeeded_details.py +51 -0
  617. capo_lambda/types/stop_durable_execution_request.py +35 -0
  618. capo_lambda/types/stop_durable_execution_response.py +41 -0
  619. capo_lambda/types/string.py +5 -0
  620. capo_lambda/types/string_list.py +17 -0
  621. capo_lambda/types/subnet_id.py +5 -0
  622. capo_lambda/types/subnet_ids.py +17 -0
  623. capo_lambda/types/system_log_level.py +18 -0
  624. capo_lambda/types/tag_key.py +5 -0
  625. capo_lambda/types/tag_key_list.py +17 -0
  626. capo_lambda/types/tag_resource_request.py +38 -0
  627. capo_lambda/types/tag_value.py +5 -0
  628. capo_lambda/types/taggable_resource.py +5 -0
  629. capo_lambda/types/tags.py +26 -0
  630. capo_lambda/types/tags_error.py +39 -0
  631. capo_lambda/types/tags_error_code.py +5 -0
  632. capo_lambda/types/tags_error_message.py +5 -0
  633. capo_lambda/types/target_tracking_scaling_policy.py +53 -0
  634. capo_lambda/types/tenancy_config.py +41 -0
  635. capo_lambda/types/tenant_id.py +5 -0
  636. capo_lambda/types/tenant_isolation_mode.py +14 -0
  637. capo_lambda/types/throttle_reason.py +21 -0
  638. capo_lambda/types/timeout.py +5 -0
  639. capo_lambda/types/timestamp.py +5 -0
  640. capo_lambda/types/topic.py +5 -0
  641. capo_lambda/types/topics.py +17 -0
  642. capo_lambda/types/trace_header.py +28 -0
  643. capo_lambda/types/tracing_config.py +32 -0
  644. capo_lambda/types/tracing_config_response.py +32 -0
  645. capo_lambda/types/tracing_mode.py +17 -0
  646. capo_lambda/types/truncated.py +5 -0
  647. capo_lambda/types/tumbling_window_in_seconds.py +5 -0
  648. capo_lambda/types/unqualified_function_name.py +5 -0
  649. capo_lambda/types/unreserved_concurrent_executions.py +5 -0
  650. capo_lambda/types/untag_resource_request.py +27 -0
  651. capo_lambda/types/update_alias_request.py +71 -0
  652. capo_lambda/types/update_capacity_provider_request.py +47 -0
  653. capo_lambda/types/update_capacity_provider_response.py +41 -0
  654. capo_lambda/types/update_code_signing_config_request.py +73 -0
  655. capo_lambda/types/update_code_signing_config_response.py +43 -0
  656. capo_lambda/types/update_event_source_mapping_request.py +326 -0
  657. capo_lambda/types/update_function_code_request.py +129 -0
  658. capo_lambda/types/update_function_configuration_request.py +278 -0
  659. capo_lambda/types/update_function_event_invoke_config_request.py +66 -0
  660. capo_lambda/types/update_function_url_config_request.py +72 -0
  661. capo_lambda/types/update_function_url_config_response.py +104 -0
  662. capo_lambda/types/update_runtime_on.py +18 -0
  663. capo_lambda/types/uri.py +5 -0
  664. capo_lambda/types/version.py +5 -0
  665. capo_lambda/types/version_with_latest_published.py +5 -0
  666. capo_lambda/types/vpc_config.py +64 -0
  667. capo_lambda/types/vpc_config_response.py +71 -0
  668. capo_lambda/types/vpc_id.py +5 -0
  669. capo_lambda/types/wait_cancelled_details.py +32 -0
  670. capo_lambda/types/wait_details.py +42 -0
  671. capo_lambda/types/wait_options.py +28 -0
  672. capo_lambda/types/wait_started_details.py +51 -0
  673. capo_lambda/types/wait_succeeded_details.py +28 -0
  674. capo_lambda/types/weight.py +5 -0
  675. capo_lambda/types/working_directory.py +5 -0
  676. capo_lambda/types/x_amzn_trace_id.py +5 -0
  677. capo_lambda-0.5.0.dist-info/METADATA +97 -0
  678. capo_lambda-0.5.0.dist-info/RECORD +681 -0
  679. capo_lambda-0.5.0.dist-info/WHEEL +5 -0
  680. capo_lambda-0.5.0.dist-info/licenses/LICENSE +21 -0
  681. capo_lambda-0.5.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,151 @@
1
+ """Generated from Smithy shape ``com.amazonaws.lambda#GetRuntimeManagementConfig``."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import json
6
+ from typing import Any
7
+ from urllib.parse import quote
8
+
9
+ import zapros
10
+ from typing_extensions import Never
11
+
12
+ import capo_lambda._auth._signers
13
+ import capo_lambda._auth._sigv4
14
+ import capo_lambda.errors.invalid_parameter_value_exception
15
+ import capo_lambda.errors.resource_not_found_exception
16
+ import capo_lambda.errors.service_exception
17
+ import capo_lambda.errors.too_many_requests_exception
18
+ import capo_lambda.types.get_runtime_management_config_request
19
+ import capo_lambda.types.get_runtime_management_config_response
20
+ import capo_lambda.types.update_runtime_on
21
+ from capo_lambda._protocol.errors import parse_error_metadata_json
22
+ from capo_lambda._rule_engine._endpoint_rule_set import EndpointParams, resolve
23
+ from capo_lambda._services._pipeline import AsyncOperationOptions, OperationOptions
24
+ from capo_lambda.errors import UnknownServiceError
25
+
26
+
27
+ def handle_error(response: zapros.Response) -> Never:
28
+ data = json.loads(response.read())
29
+ code, message = parse_error_metadata_json(response, data)
30
+ match code:
31
+ case "InvalidParameterValueException":
32
+ raise capo_lambda.errors.invalid_parameter_value_exception.InvalidParameterValueException.from_json(
33
+ data
34
+ )
35
+ case "ResourceNotFoundException":
36
+ raise capo_lambda.errors.resource_not_found_exception.ResourceNotFoundException.from_json(
37
+ data
38
+ )
39
+ case "ServiceException":
40
+ raise capo_lambda.errors.service_exception.ServiceException.from_json(data)
41
+ case "TooManyRequestsException":
42
+ raise capo_lambda.errors.too_many_requests_exception.TooManyRequestsException.from_json(
43
+ data
44
+ )
45
+ case _:
46
+ raise UnknownServiceError(code=code, message=message, response=response)
47
+
48
+
49
+ def handle_response(
50
+ response: zapros.Response,
51
+ ) -> capo_lambda.types.get_runtime_management_config_response.GetRuntimeManagementConfigResponse:
52
+ out: capo_lambda.types.get_runtime_management_config_response.GetRuntimeManagementConfigResponse = capo_lambda.types.get_runtime_management_config_response.deserialize_json(
53
+ json.loads(response.read())
54
+ )
55
+ return out
56
+
57
+
58
+ async def async_handle_response(
59
+ response: zapros.Response,
60
+ ) -> capo_lambda.types.get_runtime_management_config_response.GetRuntimeManagementConfigResponse:
61
+ out: capo_lambda.types.get_runtime_management_config_response.GetRuntimeManagementConfigResponse = capo_lambda.types.get_runtime_management_config_response.deserialize_json(
62
+ json.loads(await response.aread())
63
+ )
64
+ return out
65
+
66
+
67
+ def get_signer(
68
+ options: AsyncOperationOptions | OperationOptions,
69
+ auth_schemes: list[dict[str, Any]] | None = None,
70
+ ) -> capo_lambda._auth._signers.Signer | None:
71
+ name_to_schema = {s["name"]: s for s in (auth_schemes or [])} # noqa: F841
72
+ if options.credentials_provider is not None:
73
+ sigv4_config = (
74
+ name_to_schema.get("sigv4")
75
+ or name_to_schema.get("sigv4a")
76
+ or name_to_schema.get("sigv4-s3express")
77
+ or capo_lambda._auth._sigv4.build_sigv4_auth_scheme(
78
+ "lambda", options.region
79
+ )
80
+ )
81
+ if sigv4_config is not None:
82
+ return capo_lambda._auth._signers.SigV4Signer(
83
+ options.credentials_provider, auth_scheme=sigv4_config
84
+ )
85
+ raise RuntimeError("Auth was not resolved")
86
+
87
+
88
+ def build_request(
89
+ options: OperationOptions | AsyncOperationOptions,
90
+ input_: capo_lambda.types.get_runtime_management_config_request.GetRuntimeManagementConfigRequest,
91
+ ) -> zapros.Request:
92
+ endpoint = resolve(
93
+ EndpointParams(
94
+ Region=options.region,
95
+ UseDualStack=options.use_dual_stack,
96
+ UseFIPS=options.use_fips,
97
+ Endpoint=options.endpoint,
98
+ )
99
+ ) # noqa: F841
100
+ url = (
101
+ endpoint.url.rstrip("/")
102
+ + "/2021-07-20/functions/{FunctionName}/runtime-management-config"
103
+ )
104
+ url = url.replace("{FunctionName}", quote(str(input_["function_name"]), safe=""))
105
+ params: dict[str, str] = {}
106
+ if "qualifier" in input_:
107
+ params["Qualifier"] = str(input_["qualifier"])
108
+ headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
109
+ body: bytes | None = b""
110
+ signer = get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
111
+ normalized_url = zapros.URL(url)
112
+ normalized_url.search_params.update(params)
113
+ return zapros.Request(
114
+ normalized_url, "GET", headers=headers, body=body, context={"signer": signer}
115
+ )
116
+
117
+
118
+ def get_runtime_management_config(
119
+ options: OperationOptions,
120
+ input_: capo_lambda.types.get_runtime_management_config_request.GetRuntimeManagementConfigRequest,
121
+ ) -> tuple[
122
+ capo_lambda.types.get_runtime_management_config_response.GetRuntimeManagementConfigResponse,
123
+ zapros.Response,
124
+ ]:
125
+ response = options.client.handler.handle(build_request(options, input_))
126
+ try:
127
+ if response.status >= 400:
128
+ response.read()
129
+ handle_error(response)
130
+ return handle_response(response), response
131
+ except BaseException:
132
+ response.close()
133
+ raise
134
+
135
+
136
+ async def async_get_runtime_management_config(
137
+ options: AsyncOperationOptions,
138
+ input_: capo_lambda.types.get_runtime_management_config_request.GetRuntimeManagementConfigRequest,
139
+ ) -> tuple[
140
+ capo_lambda.types.get_runtime_management_config_response.GetRuntimeManagementConfigResponse,
141
+ zapros.Response,
142
+ ]:
143
+ response = await options.client.handler.ahandle(build_request(options, input_))
144
+ try:
145
+ if response.status >= 400:
146
+ await response.aread()
147
+ handle_error(response)
148
+ return await async_handle_response(response), response
149
+ except BaseException:
150
+ await response.aclose()
151
+ raise
@@ -0,0 +1,342 @@
1
+ """Generated from Smithy shape ``com.amazonaws.lambda#Invoke``."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import json
6
+ from typing import Any
7
+ from urllib.parse import quote
8
+
9
+ import zapros
10
+ from typing_extensions import Never
11
+
12
+ import capo_lambda._auth._signers
13
+ import capo_lambda._auth._sigv4
14
+ import capo_lambda.errors.durable_execution_already_started_exception
15
+ import capo_lambda.errors.ec2_access_denied_exception
16
+ import capo_lambda.errors.ec2_throttled_exception
17
+ import capo_lambda.errors.ec2_unexpected_exception
18
+ import capo_lambda.errors.efs_mount_connectivity_exception
19
+ import capo_lambda.errors.efs_mount_failure_exception
20
+ import capo_lambda.errors.efs_mount_timeout_exception
21
+ import capo_lambda.errors.efsio_exception
22
+ import capo_lambda.errors.eni_limit_reached_exception
23
+ import capo_lambda.errors.invalid_parameter_value_exception
24
+ import capo_lambda.errors.invalid_request_content_exception
25
+ import capo_lambda.errors.invalid_runtime_exception
26
+ import capo_lambda.errors.invalid_security_group_id_exception
27
+ import capo_lambda.errors.invalid_subnet_id_exception
28
+ import capo_lambda.errors.invalid_zip_file_exception
29
+ import capo_lambda.errors.kms_access_denied_exception
30
+ import capo_lambda.errors.kms_disabled_exception
31
+ import capo_lambda.errors.kms_invalid_state_exception
32
+ import capo_lambda.errors.kms_not_found_exception
33
+ import capo_lambda.errors.no_published_version_exception
34
+ import capo_lambda.errors.recursive_invocation_exception
35
+ import capo_lambda.errors.request_too_large_exception
36
+ import capo_lambda.errors.resource_conflict_exception
37
+ import capo_lambda.errors.resource_not_found_exception
38
+ import capo_lambda.errors.resource_not_ready_exception
39
+ import capo_lambda.errors.s3_files_mount_connectivity_exception
40
+ import capo_lambda.errors.s3_files_mount_failure_exception
41
+ import capo_lambda.errors.s3_files_mount_timeout_exception
42
+ import capo_lambda.errors.serialized_request_entity_too_large_exception
43
+ import capo_lambda.errors.service_exception
44
+ import capo_lambda.errors.snap_start_exception
45
+ import capo_lambda.errors.snap_start_not_ready_exception
46
+ import capo_lambda.errors.snap_start_timeout_exception
47
+ import capo_lambda.errors.subnet_ip_address_limit_reached_exception
48
+ import capo_lambda.errors.too_many_requests_exception
49
+ import capo_lambda.errors.unsupported_media_type_exception
50
+ import capo_lambda.types.blob
51
+ import capo_lambda.types.invocation_request
52
+ import capo_lambda.types.invocation_response
53
+ import capo_lambda.types.invocation_type
54
+ import capo_lambda.types.log_type
55
+ from capo_lambda._protocol.errors import parse_error_metadata_json
56
+ from capo_lambda._rule_engine._endpoint_rule_set import EndpointParams, resolve
57
+ from capo_lambda._services._pipeline import AsyncOperationOptions, OperationOptions
58
+ from capo_lambda.errors import UnknownServiceError
59
+
60
+
61
+ def handle_error(response: zapros.Response) -> Never:
62
+ data = json.loads(response.read())
63
+ code, message = parse_error_metadata_json(response, data)
64
+ match code:
65
+ case "DurableExecutionAlreadyStartedException":
66
+ raise capo_lambda.errors.durable_execution_already_started_exception.DurableExecutionAlreadyStartedException.from_json(
67
+ data
68
+ )
69
+ case "EC2AccessDeniedException":
70
+ raise capo_lambda.errors.ec2_access_denied_exception.EC2AccessDeniedException.from_json(
71
+ data
72
+ )
73
+ case "EC2ThrottledException":
74
+ raise capo_lambda.errors.ec2_throttled_exception.EC2ThrottledException.from_json(
75
+ data
76
+ )
77
+ case "EC2UnexpectedException":
78
+ raise capo_lambda.errors.ec2_unexpected_exception.EC2UnexpectedException.from_json(
79
+ data
80
+ )
81
+ case "EFSIOException":
82
+ raise capo_lambda.errors.efsio_exception.EFSIOException.from_json(data)
83
+ case "EFSMountConnectivityException":
84
+ raise capo_lambda.errors.efs_mount_connectivity_exception.EFSMountConnectivityException.from_json(
85
+ data
86
+ )
87
+ case "EFSMountFailureException":
88
+ raise capo_lambda.errors.efs_mount_failure_exception.EFSMountFailureException.from_json(
89
+ data
90
+ )
91
+ case "EFSMountTimeoutException":
92
+ raise capo_lambda.errors.efs_mount_timeout_exception.EFSMountTimeoutException.from_json(
93
+ data
94
+ )
95
+ case "ENILimitReachedException":
96
+ raise capo_lambda.errors.eni_limit_reached_exception.ENILimitReachedException.from_json(
97
+ data
98
+ )
99
+ case "InvalidParameterValueException":
100
+ raise capo_lambda.errors.invalid_parameter_value_exception.InvalidParameterValueException.from_json(
101
+ data
102
+ )
103
+ case "InvalidRequestContentException":
104
+ raise capo_lambda.errors.invalid_request_content_exception.InvalidRequestContentException.from_json(
105
+ data
106
+ )
107
+ case "InvalidRuntimeException":
108
+ raise capo_lambda.errors.invalid_runtime_exception.InvalidRuntimeException.from_json(
109
+ data
110
+ )
111
+ case "InvalidSecurityGroupIDException":
112
+ raise capo_lambda.errors.invalid_security_group_id_exception.InvalidSecurityGroupIDException.from_json(
113
+ data
114
+ )
115
+ case "InvalidSubnetIDException":
116
+ raise capo_lambda.errors.invalid_subnet_id_exception.InvalidSubnetIDException.from_json(
117
+ data
118
+ )
119
+ case "InvalidZipFileException":
120
+ raise capo_lambda.errors.invalid_zip_file_exception.InvalidZipFileException.from_json(
121
+ data
122
+ )
123
+ case "KMSAccessDeniedException":
124
+ raise capo_lambda.errors.kms_access_denied_exception.KMSAccessDeniedException.from_json(
125
+ data
126
+ )
127
+ case "KMSDisabledException":
128
+ raise capo_lambda.errors.kms_disabled_exception.KMSDisabledException.from_json(
129
+ data
130
+ )
131
+ case "KMSInvalidStateException":
132
+ raise capo_lambda.errors.kms_invalid_state_exception.KMSInvalidStateException.from_json(
133
+ data
134
+ )
135
+ case "KMSNotFoundException":
136
+ raise capo_lambda.errors.kms_not_found_exception.KMSNotFoundException.from_json(
137
+ data
138
+ )
139
+ case "NoPublishedVersionException":
140
+ raise capo_lambda.errors.no_published_version_exception.NoPublishedVersionException.from_json(
141
+ data
142
+ )
143
+ case "RecursiveInvocationException":
144
+ raise capo_lambda.errors.recursive_invocation_exception.RecursiveInvocationException.from_json(
145
+ data
146
+ )
147
+ case "RequestTooLargeException":
148
+ raise capo_lambda.errors.request_too_large_exception.RequestTooLargeException.from_json(
149
+ data
150
+ )
151
+ case "ResourceConflictException":
152
+ raise capo_lambda.errors.resource_conflict_exception.ResourceConflictException.from_json(
153
+ data
154
+ )
155
+ case "ResourceNotFoundException":
156
+ raise capo_lambda.errors.resource_not_found_exception.ResourceNotFoundException.from_json(
157
+ data
158
+ )
159
+ case "ResourceNotReadyException":
160
+ raise capo_lambda.errors.resource_not_ready_exception.ResourceNotReadyException.from_json(
161
+ data
162
+ )
163
+ case "S3FilesMountConnectivityException":
164
+ raise capo_lambda.errors.s3_files_mount_connectivity_exception.S3FilesMountConnectivityException.from_json(
165
+ data
166
+ )
167
+ case "S3FilesMountFailureException":
168
+ raise capo_lambda.errors.s3_files_mount_failure_exception.S3FilesMountFailureException.from_json(
169
+ data
170
+ )
171
+ case "S3FilesMountTimeoutException":
172
+ raise capo_lambda.errors.s3_files_mount_timeout_exception.S3FilesMountTimeoutException.from_json(
173
+ data
174
+ )
175
+ case "SerializedRequestEntityTooLargeException":
176
+ raise capo_lambda.errors.serialized_request_entity_too_large_exception.SerializedRequestEntityTooLargeException.from_json(
177
+ data
178
+ )
179
+ case "ServiceException":
180
+ raise capo_lambda.errors.service_exception.ServiceException.from_json(data)
181
+ case "SnapStartException":
182
+ raise capo_lambda.errors.snap_start_exception.SnapStartException.from_json(
183
+ data
184
+ )
185
+ case "SnapStartNotReadyException":
186
+ raise capo_lambda.errors.snap_start_not_ready_exception.SnapStartNotReadyException.from_json(
187
+ data
188
+ )
189
+ case "SnapStartTimeoutException":
190
+ raise capo_lambda.errors.snap_start_timeout_exception.SnapStartTimeoutException.from_json(
191
+ data
192
+ )
193
+ case "SubnetIPAddressLimitReachedException":
194
+ raise capo_lambda.errors.subnet_ip_address_limit_reached_exception.SubnetIPAddressLimitReachedException.from_json(
195
+ data
196
+ )
197
+ case "TooManyRequestsException":
198
+ raise capo_lambda.errors.too_many_requests_exception.TooManyRequestsException.from_json(
199
+ data
200
+ )
201
+ case "UnsupportedMediaTypeException":
202
+ raise capo_lambda.errors.unsupported_media_type_exception.UnsupportedMediaTypeException.from_json(
203
+ data
204
+ )
205
+ case _:
206
+ raise UnknownServiceError(code=code, message=message, response=response)
207
+
208
+
209
+ def handle_response(
210
+ response: zapros.Response,
211
+ ) -> capo_lambda.types.invocation_response.InvocationResponse:
212
+ out: capo_lambda.types.invocation_response.InvocationResponse = {
213
+ "payload": capo_lambda.types.blob.deserialize_json(json.loads(response.read()))
214
+ } # type: ignore[typeddict-item]
215
+ if "X-Amz-Function-Error" in response.headers:
216
+ out["function_error"] = str(response.headers["X-Amz-Function-Error"])
217
+ if "X-Amz-Log-Result" in response.headers:
218
+ out["log_result"] = str(response.headers["X-Amz-Log-Result"])
219
+ if "X-Amz-Executed-Version" in response.headers:
220
+ out["executed_version"] = str(response.headers["X-Amz-Executed-Version"])
221
+ if "X-Amz-Durable-Execution-Arn" in response.headers:
222
+ out["durable_execution_arn"] = str(
223
+ response.headers["X-Amz-Durable-Execution-Arn"]
224
+ )
225
+ out["status_code"] = response.status
226
+ return out
227
+
228
+
229
+ async def async_handle_response(
230
+ response: zapros.Response,
231
+ ) -> capo_lambda.types.invocation_response.InvocationResponse:
232
+ out: capo_lambda.types.invocation_response.InvocationResponse = {
233
+ "payload": capo_lambda.types.blob.deserialize_json(
234
+ json.loads(await response.aread())
235
+ )
236
+ } # type: ignore[typeddict-item]
237
+ if "X-Amz-Function-Error" in response.headers:
238
+ out["function_error"] = str(response.headers["X-Amz-Function-Error"])
239
+ if "X-Amz-Log-Result" in response.headers:
240
+ out["log_result"] = str(response.headers["X-Amz-Log-Result"])
241
+ if "X-Amz-Executed-Version" in response.headers:
242
+ out["executed_version"] = str(response.headers["X-Amz-Executed-Version"])
243
+ if "X-Amz-Durable-Execution-Arn" in response.headers:
244
+ out["durable_execution_arn"] = str(
245
+ response.headers["X-Amz-Durable-Execution-Arn"]
246
+ )
247
+ out["status_code"] = response.status
248
+ return out
249
+
250
+
251
+ def get_signer(
252
+ options: AsyncOperationOptions | OperationOptions,
253
+ auth_schemes: list[dict[str, Any]] | None = None,
254
+ ) -> capo_lambda._auth._signers.Signer | None:
255
+ name_to_schema = {s["name"]: s for s in (auth_schemes or [])} # noqa: F841
256
+ if options.credentials_provider is not None:
257
+ sigv4_config = (
258
+ name_to_schema.get("sigv4")
259
+ or name_to_schema.get("sigv4a")
260
+ or name_to_schema.get("sigv4-s3express")
261
+ or capo_lambda._auth._sigv4.build_sigv4_auth_scheme(
262
+ "lambda", options.region
263
+ )
264
+ )
265
+ if sigv4_config is not None:
266
+ return capo_lambda._auth._signers.SigV4Signer(
267
+ options.credentials_provider, auth_scheme=sigv4_config
268
+ )
269
+ raise RuntimeError("Auth was not resolved")
270
+
271
+
272
+ def build_request(
273
+ options: OperationOptions | AsyncOperationOptions,
274
+ input_: capo_lambda.types.invocation_request.InvocationRequest,
275
+ ) -> zapros.Request:
276
+ endpoint = resolve(
277
+ EndpointParams(
278
+ Region=options.region,
279
+ UseDualStack=options.use_dual_stack,
280
+ UseFIPS=options.use_fips,
281
+ Endpoint=options.endpoint,
282
+ )
283
+ ) # noqa: F841
284
+ url = endpoint.url.rstrip("/") + "/2015-03-31/functions/{FunctionName}/invocations"
285
+ url = url.replace("{FunctionName}", quote(str(input_["function_name"]), safe=""))
286
+ params: dict[str, str] = {}
287
+ if "qualifier" in input_:
288
+ params["Qualifier"] = str(input_["qualifier"])
289
+ headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
290
+ if "invocation_type" in input_:
291
+ headers["X-Amz-Invocation-Type"] = str(input_["invocation_type"])
292
+ if "log_type" in input_:
293
+ headers["X-Amz-Log-Type"] = str(input_["log_type"])
294
+ if "client_context" in input_:
295
+ headers["X-Amz-Client-Context"] = str(input_["client_context"])
296
+ if "durable_execution_name" in input_:
297
+ headers["X-Amz-Durable-Execution-Name"] = str(input_["durable_execution_name"])
298
+ if "tenant_id" in input_:
299
+ headers["X-Amz-Tenant-Id"] = str(input_["tenant_id"])
300
+ if "payload" in input_:
301
+ body: bytes | None = json.dumps(
302
+ capo_lambda.types.blob.serialize_json(input_["payload"])
303
+ ).encode()
304
+ headers["content-type"] = "application/json"
305
+ else:
306
+ body = b""
307
+ signer = get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
308
+ normalized_url = zapros.URL(url)
309
+ normalized_url.search_params.update(params)
310
+ return zapros.Request(
311
+ normalized_url, "POST", headers=headers, body=body, context={"signer": signer}
312
+ )
313
+
314
+
315
+ def invoke(
316
+ options: OperationOptions,
317
+ input_: capo_lambda.types.invocation_request.InvocationRequest,
318
+ ) -> tuple[capo_lambda.types.invocation_response.InvocationResponse, zapros.Response]:
319
+ response = options.client.handler.handle(build_request(options, input_))
320
+ try:
321
+ if response.status >= 400:
322
+ response.read()
323
+ handle_error(response)
324
+ return handle_response(response), response
325
+ except BaseException:
326
+ response.close()
327
+ raise
328
+
329
+
330
+ async def async_invoke(
331
+ options: AsyncOperationOptions,
332
+ input_: capo_lambda.types.invocation_request.InvocationRequest,
333
+ ) -> tuple[capo_lambda.types.invocation_response.InvocationResponse, zapros.Response]:
334
+ response = await options.client.handler.ahandle(build_request(options, input_))
335
+ try:
336
+ if response.status >= 400:
337
+ await response.aread()
338
+ handle_error(response)
339
+ return await async_handle_response(response), response
340
+ except BaseException:
341
+ await response.aclose()
342
+ raise
@@ -0,0 +1,153 @@
1
+ """Generated from Smithy shape ``com.amazonaws.lambda#InvokeAsync``."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import json
6
+ from typing import Any, cast
7
+ from urllib.parse import quote
8
+
9
+ import zapros
10
+ from typing_extensions import Never
11
+
12
+ import capo_lambda._auth._signers
13
+ import capo_lambda._auth._sigv4
14
+ import capo_lambda.errors.invalid_request_content_exception
15
+ import capo_lambda.errors.invalid_runtime_exception
16
+ import capo_lambda.errors.resource_conflict_exception
17
+ import capo_lambda.errors.resource_not_found_exception
18
+ import capo_lambda.errors.service_exception
19
+ import capo_lambda.types.blob_stream
20
+ import capo_lambda.types.invoke_async_request
21
+ import capo_lambda.types.invoke_async_response
22
+ from capo_lambda._protocol.errors import parse_error_metadata_json
23
+ from capo_lambda._rule_engine._endpoint_rule_set import EndpointParams, resolve
24
+ from capo_lambda._services._pipeline import AsyncOperationOptions, OperationOptions
25
+ from capo_lambda.errors import UnknownServiceError
26
+
27
+
28
+ def handle_error(response: zapros.Response) -> Never:
29
+ data = json.loads(response.read())
30
+ code, message = parse_error_metadata_json(response, data)
31
+ match code:
32
+ case "InvalidRequestContentException":
33
+ raise capo_lambda.errors.invalid_request_content_exception.InvalidRequestContentException.from_json(
34
+ data
35
+ )
36
+ case "InvalidRuntimeException":
37
+ raise capo_lambda.errors.invalid_runtime_exception.InvalidRuntimeException.from_json(
38
+ data
39
+ )
40
+ case "ResourceConflictException":
41
+ raise capo_lambda.errors.resource_conflict_exception.ResourceConflictException.from_json(
42
+ data
43
+ )
44
+ case "ResourceNotFoundException":
45
+ raise capo_lambda.errors.resource_not_found_exception.ResourceNotFoundException.from_json(
46
+ data
47
+ )
48
+ case "ServiceException":
49
+ raise capo_lambda.errors.service_exception.ServiceException.from_json(data)
50
+ case _:
51
+ raise UnknownServiceError(code=code, message=message, response=response)
52
+
53
+
54
+ def handle_response(
55
+ response: zapros.Response,
56
+ ) -> capo_lambda.types.invoke_async_response.InvokeAsyncResponse:
57
+ out: capo_lambda.types.invoke_async_response.InvokeAsyncResponse = {} # type: ignore[typeddict-item]
58
+ out["status"] = response.status
59
+ return out
60
+
61
+
62
+ async def async_handle_response(
63
+ response: zapros.Response,
64
+ ) -> capo_lambda.types.invoke_async_response.InvokeAsyncResponse:
65
+ out: capo_lambda.types.invoke_async_response.InvokeAsyncResponse = {} # type: ignore[typeddict-item]
66
+ out["status"] = response.status
67
+ return out
68
+
69
+
70
+ def get_signer(
71
+ options: AsyncOperationOptions | OperationOptions,
72
+ auth_schemes: list[dict[str, Any]] | None = None,
73
+ ) -> capo_lambda._auth._signers.Signer | None:
74
+ name_to_schema = {s["name"]: s for s in (auth_schemes or [])} # noqa: F841
75
+ if options.credentials_provider is not None:
76
+ sigv4_config = (
77
+ name_to_schema.get("sigv4")
78
+ or name_to_schema.get("sigv4a")
79
+ or name_to_schema.get("sigv4-s3express")
80
+ or capo_lambda._auth._sigv4.build_sigv4_auth_scheme(
81
+ "lambda", options.region
82
+ )
83
+ )
84
+ if sigv4_config is not None:
85
+ return capo_lambda._auth._signers.SigV4Signer(
86
+ options.credentials_provider, auth_scheme=sigv4_config
87
+ )
88
+ raise RuntimeError("Auth was not resolved")
89
+
90
+
91
+ def build_request(
92
+ options: OperationOptions | AsyncOperationOptions,
93
+ input_: capo_lambda.types.invoke_async_request.InvokeAsyncRequest,
94
+ ) -> zapros.Request:
95
+ endpoint = resolve(
96
+ EndpointParams(
97
+ Region=options.region,
98
+ UseDualStack=options.use_dual_stack,
99
+ UseFIPS=options.use_fips,
100
+ Endpoint=options.endpoint,
101
+ )
102
+ ) # noqa: F841
103
+ url = endpoint.url.rstrip("/") + "/2014-11-13/functions/{FunctionName}/invoke-async"
104
+ url = url.replace("{FunctionName}", quote(str(input_["function_name"]), safe=""))
105
+ params: dict[str, str] = {}
106
+ headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
107
+ body = input_["invoke_args"]
108
+ if isinstance(body, capo_lambda._iter.StaticAnyIterator):
109
+ body = cast(bytes, body.content)
110
+ if not isinstance(body, bytes) and "content-length" not in [
111
+ header.lower() for header in headers
112
+ ]:
113
+ raise ValueError("Content-Length is required for streaming input")
114
+ signer = get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
115
+ normalized_url = zapros.URL(url)
116
+ normalized_url.search_params.update(params)
117
+ return zapros.Request(
118
+ normalized_url, "POST", headers=headers, body=body, context={"signer": signer}
119
+ )
120
+
121
+
122
+ def invoke_async(
123
+ options: OperationOptions,
124
+ input_: capo_lambda.types.invoke_async_request.InvokeAsyncRequest,
125
+ ) -> tuple[
126
+ capo_lambda.types.invoke_async_response.InvokeAsyncResponse, zapros.Response
127
+ ]:
128
+ response = options.client.handler.handle(build_request(options, input_))
129
+ try:
130
+ if response.status >= 400:
131
+ response.read()
132
+ handle_error(response)
133
+ return handle_response(response), response
134
+ except BaseException:
135
+ response.close()
136
+ raise
137
+
138
+
139
+ async def async_invoke_async(
140
+ options: AsyncOperationOptions,
141
+ input_: capo_lambda.types.invoke_async_request.InvokeAsyncRequest,
142
+ ) -> tuple[
143
+ capo_lambda.types.invoke_async_response.InvokeAsyncResponse, zapros.Response
144
+ ]:
145
+ response = await options.client.handler.ahandle(build_request(options, input_))
146
+ try:
147
+ if response.status >= 400:
148
+ await response.aread()
149
+ handle_error(response)
150
+ return await async_handle_response(response), response
151
+ except BaseException:
152
+ await response.aclose()
153
+ raise