capo-codebuild 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 (419) hide show
  1. capo_codebuild/__init__.py +70 -0
  2. capo_codebuild/_async.py +25 -0
  3. capo_codebuild/_auth/_identity.py +16 -0
  4. capo_codebuild/_auth/_providers.py +886 -0
  5. capo_codebuild/_auth/_signers.py +88 -0
  6. capo_codebuild/_auth/_sigv4.py +434 -0
  7. capo_codebuild/_auth/_zapros_handler.py +80 -0
  8. capo_codebuild/_iter.py +113 -0
  9. capo_codebuild/_operations/code_build_20161006/batch_delete_builds.py +150 -0
  10. capo_codebuild/_operations/code_build_20161006/batch_get_build_batches.py +148 -0
  11. capo_codebuild/_operations/code_build_20161006/batch_get_builds.py +148 -0
  12. capo_codebuild/_operations/code_build_20161006/batch_get_command_executions.py +148 -0
  13. capo_codebuild/_operations/code_build_20161006/batch_get_fleets.py +148 -0
  14. capo_codebuild/_operations/code_build_20161006/batch_get_projects.py +150 -0
  15. capo_codebuild/_operations/code_build_20161006/batch_get_report_groups.py +148 -0
  16. capo_codebuild/_operations/code_build_20161006/batch_get_reports.py +148 -0
  17. capo_codebuild/_operations/code_build_20161006/batch_get_sandboxes.py +150 -0
  18. capo_codebuild/_operations/code_build_20161006/create_fleet.py +161 -0
  19. capo_codebuild/_operations/code_build_20161006/create_project.py +169 -0
  20. capo_codebuild/_operations/code_build_20161006/create_report_group.py +162 -0
  21. capo_codebuild/_operations/code_build_20161006/create_webhook.py +166 -0
  22. capo_codebuild/_operations/code_build_20161006/delete_build_batch.py +150 -0
  23. capo_codebuild/_operations/code_build_20161006/delete_fleet.py +134 -0
  24. capo_codebuild/_operations/code_build_20161006/delete_project.py +138 -0
  25. capo_codebuild/_operations/code_build_20161006/delete_report.py +138 -0
  26. capo_codebuild/_operations/code_build_20161006/delete_report_group.py +140 -0
  27. capo_codebuild/_operations/code_build_20161006/delete_resource_policy.py +142 -0
  28. capo_codebuild/_operations/code_build_20161006/delete_source_credentials.py +155 -0
  29. capo_codebuild/_operations/code_build_20161006/delete_webhook.py +148 -0
  30. capo_codebuild/_operations/code_build_20161006/describe_code_coverages.py +149 -0
  31. capo_codebuild/_operations/code_build_20161006/describe_test_cases.py +155 -0
  32. capo_codebuild/_operations/code_build_20161006/get_report_group_trend.py +154 -0
  33. capo_codebuild/_operations/code_build_20161006/get_resource_policy.py +153 -0
  34. capo_codebuild/_operations/code_build_20161006/import_source_credentials.py +162 -0
  35. capo_codebuild/_operations/code_build_20161006/invalidate_project_cache.py +147 -0
  36. capo_codebuild/_operations/code_build_20161006/list_build_batches.py +151 -0
  37. capo_codebuild/_operations/code_build_20161006/list_build_batches_for_project.py +154 -0
  38. capo_codebuild/_operations/code_build_20161006/list_builds.py +144 -0
  39. capo_codebuild/_operations/code_build_20161006/list_builds_for_project.py +153 -0
  40. capo_codebuild/_operations/code_build_20161006/list_command_executions_for_sandbox.py +153 -0
  41. capo_codebuild/_operations/code_build_20161006/list_curated_environment_images.py +142 -0
  42. capo_codebuild/_operations/code_build_20161006/list_fleets.py +145 -0
  43. capo_codebuild/_operations/code_build_20161006/list_projects.py +149 -0
  44. capo_codebuild/_operations/code_build_20161006/list_report_groups.py +151 -0
  45. capo_codebuild/_operations/code_build_20161006/list_reports.py +145 -0
  46. capo_codebuild/_operations/code_build_20161006/list_reports_for_report_group.py +154 -0
  47. capo_codebuild/_operations/code_build_20161006/list_sandboxes.py +148 -0
  48. capo_codebuild/_operations/code_build_20161006/list_sandboxes_for_project.py +157 -0
  49. capo_codebuild/_operations/code_build_20161006/list_shared_projects.py +151 -0
  50. capo_codebuild/_operations/code_build_20161006/list_shared_report_groups.py +149 -0
  51. capo_codebuild/_operations/code_build_20161006/list_source_credentials.py +147 -0
  52. capo_codebuild/_operations/code_build_20161006/put_resource_policy.py +153 -0
  53. capo_codebuild/_operations/code_build_20161006/retry_build.py +153 -0
  54. capo_codebuild/_operations/code_build_20161006/retry_build_batch.py +153 -0
  55. capo_codebuild/_operations/code_build_20161006/start_build.py +169 -0
  56. capo_codebuild/_operations/code_build_20161006/start_build_batch.py +167 -0
  57. capo_codebuild/_operations/code_build_20161006/start_command_execution.py +153 -0
  58. capo_codebuild/_operations/code_build_20161006/start_sandbox.py +157 -0
  59. capo_codebuild/_operations/code_build_20161006/start_sandbox_connection.py +152 -0
  60. capo_codebuild/_operations/code_build_20161006/stop_build.py +148 -0
  61. capo_codebuild/_operations/code_build_20161006/stop_build_batch.py +152 -0
  62. capo_codebuild/_operations/code_build_20161006/stop_sandbox.py +148 -0
  63. capo_codebuild/_operations/code_build_20161006/update_fleet.py +161 -0
  64. capo_codebuild/_operations/code_build_20161006/update_project.py +164 -0
  65. capo_codebuild/_operations/code_build_20161006/update_project_visibility.py +156 -0
  66. capo_codebuild/_operations/code_build_20161006/update_report_group.py +156 -0
  67. capo_codebuild/_operations/code_build_20161006/update_webhook.py +160 -0
  68. capo_codebuild/_pagination.py +21 -0
  69. capo_codebuild/_protocol/__init__.py +1 -0
  70. capo_codebuild/_protocol/errors.py +93 -0
  71. capo_codebuild/_protocol/eventstream.py +238 -0
  72. capo_codebuild/_protocol/serialize.py +47 -0
  73. capo_codebuild/_protocol/xml.py +33 -0
  74. capo_codebuild/_rule_engine/__init__.py +0 -0
  75. capo_codebuild/_rule_engine/_aws_partition.py +160 -0
  76. capo_codebuild/_rule_engine/_endpoint_rule_set.py +136 -0
  77. capo_codebuild/_rule_engine/_endpoint_runtime.py +389 -0
  78. capo_codebuild/_services/_aws_config.py +160 -0
  79. capo_codebuild/_services/_pipeline.py +198 -0
  80. capo_codebuild/_services/async_code_build.py +4509 -0
  81. capo_codebuild/_services/code_build.py +4450 -0
  82. capo_codebuild/errors/__init__.py +37 -0
  83. capo_codebuild/errors/_base.py +94 -0
  84. capo_codebuild/errors/account_limit_exceeded_exception.py +53 -0
  85. capo_codebuild/errors/account_suspended_exception.py +51 -0
  86. capo_codebuild/errors/invalid_input_exception.py +51 -0
  87. capo_codebuild/errors/o_auth_provider_exception.py +51 -0
  88. capo_codebuild/errors/resource_already_exists_exception.py +53 -0
  89. capo_codebuild/errors/resource_not_found_exception.py +51 -0
  90. capo_codebuild/py.typed +0 -0
  91. capo_codebuild/types/_prelude/blob.py +12 -0
  92. capo_codebuild/types/_prelude/timestamp.py +17 -0
  93. capo_codebuild/types/artifact_namespace.py +17 -0
  94. capo_codebuild/types/artifact_packaging.py +17 -0
  95. capo_codebuild/types/artifacts_type.py +18 -0
  96. capo_codebuild/types/auth_type.py +20 -0
  97. capo_codebuild/types/auto_retry_config.py +47 -0
  98. capo_codebuild/types/batch_delete_builds_input.py +37 -0
  99. capo_codebuild/types/batch_delete_builds_output.py +57 -0
  100. capo_codebuild/types/batch_get_build_batches_input.py +39 -0
  101. capo_codebuild/types/batch_get_build_batches_output.py +59 -0
  102. capo_codebuild/types/batch_get_builds_input.py +37 -0
  103. capo_codebuild/types/batch_get_builds_output.py +53 -0
  104. capo_codebuild/types/batch_get_command_executions_input.py +55 -0
  105. capo_codebuild/types/batch_get_command_executions_output.py +63 -0
  106. capo_codebuild/types/batch_get_fleets_input.py +39 -0
  107. capo_codebuild/types/batch_get_fleets_output.py +53 -0
  108. capo_codebuild/types/batch_get_projects_input.py +39 -0
  109. capo_codebuild/types/batch_get_projects_output.py +55 -0
  110. capo_codebuild/types/batch_get_report_groups_input.py +45 -0
  111. capo_codebuild/types/batch_get_report_groups_output.py +59 -0
  112. capo_codebuild/types/batch_get_reports_input.py +39 -0
  113. capo_codebuild/types/batch_get_reports_output.py +55 -0
  114. capo_codebuild/types/batch_get_sandboxes_input.py +37 -0
  115. capo_codebuild/types/batch_get_sandboxes_output.py +55 -0
  116. capo_codebuild/types/batch_report_mode_type.py +17 -0
  117. capo_codebuild/types/batch_restrictions.py +68 -0
  118. capo_codebuild/types/boolean.py +5 -0
  119. capo_codebuild/types/bucket_owner_access.py +19 -0
  120. capo_codebuild/types/build.py +455 -0
  121. capo_codebuild/types/build_artifacts.py +83 -0
  122. capo_codebuild/types/build_artifacts_list.py +31 -0
  123. capo_codebuild/types/build_batch.py +416 -0
  124. capo_codebuild/types/build_batch_filter.py +36 -0
  125. capo_codebuild/types/build_batch_ids.py +17 -0
  126. capo_codebuild/types/build_batch_phase.py +108 -0
  127. capo_codebuild/types/build_batch_phase_type.py +22 -0
  128. capo_codebuild/types/build_batch_phases.py +33 -0
  129. capo_codebuild/types/build_batches.py +29 -0
  130. capo_codebuild/types/build_group.py +93 -0
  131. capo_codebuild/types/build_groups.py +29 -0
  132. capo_codebuild/types/build_ids.py +17 -0
  133. capo_codebuild/types/build_not_deleted.py +35 -0
  134. capo_codebuild/types/build_phase.py +104 -0
  135. capo_codebuild/types/build_phase_type.py +26 -0
  136. capo_codebuild/types/build_phases.py +29 -0
  137. capo_codebuild/types/build_report_arns.py +17 -0
  138. capo_codebuild/types/build_status_config.py +34 -0
  139. capo_codebuild/types/build_summaries.py +29 -0
  140. capo_codebuild/types/build_summary.py +100 -0
  141. capo_codebuild/types/build_time_out.py +5 -0
  142. capo_codebuild/types/builds.py +29 -0
  143. capo_codebuild/types/builds_not_deleted.py +33 -0
  144. capo_codebuild/types/cache_mode.py +18 -0
  145. capo_codebuild/types/cache_type.py +18 -0
  146. capo_codebuild/types/cloud_watch_logs_config.py +54 -0
  147. capo_codebuild/types/code_coverage.py +114 -0
  148. capo_codebuild/types/code_coverage_report_summary.py +80 -0
  149. capo_codebuild/types/code_coverages.py +29 -0
  150. capo_codebuild/types/command_execution.py +149 -0
  151. capo_codebuild/types/command_execution_ids.py +19 -0
  152. capo_codebuild/types/command_executions.py +33 -0
  153. capo_codebuild/types/command_type.py +14 -0
  154. capo_codebuild/types/compute_configuration.py +64 -0
  155. capo_codebuild/types/compute_type.py +27 -0
  156. capo_codebuild/types/compute_types_allowed.py +19 -0
  157. capo_codebuild/types/create_fleet_input.py +205 -0
  158. capo_codebuild/types/create_fleet_output.py +34 -0
  159. capo_codebuild/types/create_project_input.py +314 -0
  160. capo_codebuild/types/create_project_output.py +36 -0
  161. capo_codebuild/types/create_report_group_input.py +80 -0
  162. capo_codebuild/types/create_report_group_output.py +38 -0
  163. capo_codebuild/types/create_webhook_input.py +123 -0
  164. capo_codebuild/types/create_webhook_output.py +36 -0
  165. capo_codebuild/types/credential_provider_type.py +14 -0
  166. capo_codebuild/types/debug_session.py +35 -0
  167. capo_codebuild/types/delete_build_batch_input.py +31 -0
  168. capo_codebuild/types/delete_build_batch_output.py +64 -0
  169. capo_codebuild/types/delete_fleet_input.py +31 -0
  170. capo_codebuild/types/delete_fleet_output.py +18 -0
  171. capo_codebuild/types/delete_project_input.py +31 -0
  172. capo_codebuild/types/delete_project_output.py +18 -0
  173. capo_codebuild/types/delete_report_group_input.py +39 -0
  174. capo_codebuild/types/delete_report_group_output.py +18 -0
  175. capo_codebuild/types/delete_report_input.py +31 -0
  176. capo_codebuild/types/delete_report_output.py +18 -0
  177. capo_codebuild/types/delete_resource_policy_input.py +31 -0
  178. capo_codebuild/types/delete_resource_policy_output.py +18 -0
  179. capo_codebuild/types/delete_source_credentials_input.py +31 -0
  180. capo_codebuild/types/delete_source_credentials_output.py +28 -0
  181. capo_codebuild/types/delete_webhook_input.py +31 -0
  182. capo_codebuild/types/delete_webhook_output.py +18 -0
  183. capo_codebuild/types/describe_code_coverages_input.py +118 -0
  184. capo_codebuild/types/describe_code_coverages_output.py +47 -0
  185. capo_codebuild/types/describe_test_cases_input.py +59 -0
  186. capo_codebuild/types/describe_test_cases_output.py +43 -0
  187. capo_codebuild/types/docker_server.py +81 -0
  188. capo_codebuild/types/docker_server_status.py +34 -0
  189. capo_codebuild/types/environment_image.py +49 -0
  190. capo_codebuild/types/environment_images.py +33 -0
  191. capo_codebuild/types/environment_language.py +53 -0
  192. capo_codebuild/types/environment_languages.py +35 -0
  193. capo_codebuild/types/environment_platform.py +57 -0
  194. capo_codebuild/types/environment_platforms.py +35 -0
  195. capo_codebuild/types/environment_type.py +27 -0
  196. capo_codebuild/types/environment_variable.py +60 -0
  197. capo_codebuild/types/environment_variable_type.py +18 -0
  198. capo_codebuild/types/environment_variables.py +35 -0
  199. capo_codebuild/types/exported_environment_variable.py +35 -0
  200. capo_codebuild/types/exported_environment_variables.py +39 -0
  201. capo_codebuild/types/file_system_type.py +14 -0
  202. capo_codebuild/types/filter_group.py +29 -0
  203. capo_codebuild/types/filter_groups.py +29 -0
  204. capo_codebuild/types/fleet.py +257 -0
  205. capo_codebuild/types/fleet_arns.py +17 -0
  206. capo_codebuild/types/fleet_capacity.py +5 -0
  207. capo_codebuild/types/fleet_context_code.py +20 -0
  208. capo_codebuild/types/fleet_name.py +5 -0
  209. capo_codebuild/types/fleet_names.py +17 -0
  210. capo_codebuild/types/fleet_overflow_behavior.py +17 -0
  211. capo_codebuild/types/fleet_proxy_rule.py +81 -0
  212. capo_codebuild/types/fleet_proxy_rule_behavior.py +17 -0
  213. capo_codebuild/types/fleet_proxy_rule_effect_type.py +17 -0
  214. capo_codebuild/types/fleet_proxy_rule_entities.py +17 -0
  215. capo_codebuild/types/fleet_proxy_rule_type.py +17 -0
  216. capo_codebuild/types/fleet_proxy_rules.py +31 -0
  217. capo_codebuild/types/fleet_scaling_metric_type.py +14 -0
  218. capo_codebuild/types/fleet_scaling_type.py +14 -0
  219. capo_codebuild/types/fleet_sort_by_type.py +18 -0
  220. capo_codebuild/types/fleet_status.py +64 -0
  221. capo_codebuild/types/fleet_status_code.py +23 -0
  222. capo_codebuild/types/fleets.py +29 -0
  223. capo_codebuild/types/fleets_allowed.py +17 -0
  224. capo_codebuild/types/get_report_group_trend_input.py +60 -0
  225. capo_codebuild/types/get_report_group_trend_output.py +63 -0
  226. capo_codebuild/types/get_resource_policy_input.py +31 -0
  227. capo_codebuild/types/get_resource_policy_output.py +28 -0
  228. capo_codebuild/types/git_clone_depth.py +5 -0
  229. capo_codebuild/types/git_submodules_config.py +31 -0
  230. capo_codebuild/types/identifiers.py +17 -0
  231. capo_codebuild/types/image_pull_credentials_type.py +17 -0
  232. capo_codebuild/types/image_versions.py +17 -0
  233. capo_codebuild/types/import_source_credentials_input.py +77 -0
  234. capo_codebuild/types/import_source_credentials_output.py +28 -0
  235. capo_codebuild/types/invalidate_project_cache_input.py +31 -0
  236. capo_codebuild/types/invalidate_project_cache_output.py +18 -0
  237. capo_codebuild/types/key_input.py +5 -0
  238. capo_codebuild/types/language_type.py +25 -0
  239. capo_codebuild/types/list_build_batches_for_project_input.py +76 -0
  240. capo_codebuild/types/list_build_batches_for_project_output.py +43 -0
  241. capo_codebuild/types/list_build_batches_input.py +69 -0
  242. capo_codebuild/types/list_build_batches_output.py +43 -0
  243. capo_codebuild/types/list_builds_for_project_input.py +55 -0
  244. capo_codebuild/types/list_builds_for_project_output.py +41 -0
  245. capo_codebuild/types/list_builds_input.py +45 -0
  246. capo_codebuild/types/list_builds_output.py +41 -0
  247. capo_codebuild/types/list_command_executions_for_sandbox_input.py +64 -0
  248. capo_codebuild/types/list_command_executions_for_sandbox_output.py +49 -0
  249. capo_codebuild/types/list_curated_environment_images_input.py +18 -0
  250. capo_codebuild/types/list_curated_environment_images_output.py +42 -0
  251. capo_codebuild/types/list_fleets_input.py +69 -0
  252. capo_codebuild/types/list_fleets_output.py +43 -0
  253. capo_codebuild/types/list_projects_input.py +64 -0
  254. capo_codebuild/types/list_projects_output.py +43 -0
  255. capo_codebuild/types/list_report_groups_input.py +73 -0
  256. capo_codebuild/types/list_report_groups_output.py +47 -0
  257. capo_codebuild/types/list_reports_for_report_group_input.py +78 -0
  258. capo_codebuild/types/list_reports_for_report_group_output.py +43 -0
  259. capo_codebuild/types/list_reports_input.py +67 -0
  260. capo_codebuild/types/list_reports_output.py +43 -0
  261. capo_codebuild/types/list_sandboxes_for_project_input.py +62 -0
  262. capo_codebuild/types/list_sandboxes_for_project_output.py +43 -0
  263. capo_codebuild/types/list_sandboxes_input.py +52 -0
  264. capo_codebuild/types/list_sandboxes_output.py +43 -0
  265. capo_codebuild/types/list_shared_projects_input.py +73 -0
  266. capo_codebuild/types/list_shared_projects_output.py +43 -0
  267. capo_codebuild/types/list_shared_report_groups_input.py +73 -0
  268. capo_codebuild/types/list_shared_report_groups_output.py +47 -0
  269. capo_codebuild/types/list_source_credentials_input.py +18 -0
  270. capo_codebuild/types/list_source_credentials_output.py +42 -0
  271. capo_codebuild/types/logs_config.py +57 -0
  272. capo_codebuild/types/logs_config_status_type.py +17 -0
  273. capo_codebuild/types/logs_location.py +94 -0
  274. capo_codebuild/types/machine_type.py +17 -0
  275. capo_codebuild/types/network_interface.py +36 -0
  276. capo_codebuild/types/non_empty_string.py +5 -0
  277. capo_codebuild/types/non_negative_int.py +5 -0
  278. capo_codebuild/types/page_size.py +5 -0
  279. capo_codebuild/types/percentage.py +5 -0
  280. capo_codebuild/types/phase_context.py +34 -0
  281. capo_codebuild/types/phase_contexts.py +29 -0
  282. capo_codebuild/types/platform_type.py +19 -0
  283. capo_codebuild/types/project.py +405 -0
  284. capo_codebuild/types/project_arns.py +17 -0
  285. capo_codebuild/types/project_artifacts.py +141 -0
  286. capo_codebuild/types/project_artifacts_list.py +33 -0
  287. capo_codebuild/types/project_badge.py +36 -0
  288. capo_codebuild/types/project_build_batch_config.py +86 -0
  289. capo_codebuild/types/project_cache.py +67 -0
  290. capo_codebuild/types/project_cache_modes.py +29 -0
  291. capo_codebuild/types/project_description.py +5 -0
  292. capo_codebuild/types/project_environment.py +195 -0
  293. capo_codebuild/types/project_file_system_location.py +61 -0
  294. capo_codebuild/types/project_file_system_locations.py +39 -0
  295. capo_codebuild/types/project_fleet.py +28 -0
  296. capo_codebuild/types/project_name.py +5 -0
  297. capo_codebuild/types/project_names.py +17 -0
  298. capo_codebuild/types/project_secondary_source_versions.py +35 -0
  299. capo_codebuild/types/project_sort_by_type.py +18 -0
  300. capo_codebuild/types/project_source.py +135 -0
  301. capo_codebuild/types/project_source_version.py +38 -0
  302. capo_codebuild/types/project_sources.py +29 -0
  303. capo_codebuild/types/project_visibility_type.py +18 -0
  304. capo_codebuild/types/projects.py +29 -0
  305. capo_codebuild/types/proxy_configuration.py +63 -0
  306. capo_codebuild/types/pull_request_build_approver_role.py +29 -0
  307. capo_codebuild/types/pull_request_build_approver_roles.py +39 -0
  308. capo_codebuild/types/pull_request_build_comment_approval.py +18 -0
  309. capo_codebuild/types/pull_request_build_policy.py +66 -0
  310. capo_codebuild/types/put_resource_policy_input.py +38 -0
  311. capo_codebuild/types/put_resource_policy_output.py +28 -0
  312. capo_codebuild/types/registry_credential.py +53 -0
  313. capo_codebuild/types/report.py +180 -0
  314. capo_codebuild/types/report_arns.py +17 -0
  315. capo_codebuild/types/report_code_coverage_sort_by_type.py +17 -0
  316. capo_codebuild/types/report_export_config.py +63 -0
  317. capo_codebuild/types/report_export_config_type.py +17 -0
  318. capo_codebuild/types/report_filter.py +38 -0
  319. capo_codebuild/types/report_group.py +136 -0
  320. capo_codebuild/types/report_group_arns.py +19 -0
  321. capo_codebuild/types/report_group_name.py +5 -0
  322. capo_codebuild/types/report_group_sort_by_type.py +18 -0
  323. capo_codebuild/types/report_group_status_type.py +17 -0
  324. capo_codebuild/types/report_group_trend_field_type.py +24 -0
  325. capo_codebuild/types/report_group_trend_raw_data_list.py +35 -0
  326. capo_codebuild/types/report_group_trend_stats.py +40 -0
  327. capo_codebuild/types/report_groups.py +29 -0
  328. capo_codebuild/types/report_packaging_type.py +17 -0
  329. capo_codebuild/types/report_status_counts.py +28 -0
  330. capo_codebuild/types/report_status_type.py +20 -0
  331. capo_codebuild/types/report_type.py +17 -0
  332. capo_codebuild/types/report_with_raw_data.py +35 -0
  333. capo_codebuild/types/reports.py +29 -0
  334. capo_codebuild/types/resolved_artifact.py +49 -0
  335. capo_codebuild/types/resolved_secondary_artifacts.py +33 -0
  336. capo_codebuild/types/retry_build_batch_input.py +56 -0
  337. capo_codebuild/types/retry_build_batch_output.py +35 -0
  338. capo_codebuild/types/retry_build_batch_type.py +17 -0
  339. capo_codebuild/types/retry_build_input.py +35 -0
  340. capo_codebuild/types/retry_build_output.py +33 -0
  341. capo_codebuild/types/s3_logs_config.py +77 -0
  342. capo_codebuild/types/s3_report_export_config.py +77 -0
  343. capo_codebuild/types/sandbox.py +267 -0
  344. capo_codebuild/types/sandbox_ids.py +17 -0
  345. capo_codebuild/types/sandbox_session.py +133 -0
  346. capo_codebuild/types/sandbox_session_phase.py +94 -0
  347. capo_codebuild/types/sandbox_session_phases.py +35 -0
  348. capo_codebuild/types/sandboxes.py +29 -0
  349. capo_codebuild/types/scaling_configuration_input.py +70 -0
  350. capo_codebuild/types/scaling_configuration_output.py +76 -0
  351. capo_codebuild/types/scope_configuration.py +53 -0
  352. capo_codebuild/types/security_group_ids.py +19 -0
  353. capo_codebuild/types/sensitive_non_empty_string.py +5 -0
  354. capo_codebuild/types/sensitive_string.py +5 -0
  355. capo_codebuild/types/server_type.py +20 -0
  356. capo_codebuild/types/shared_resource_sort_by_type.py +17 -0
  357. capo_codebuild/types/sort_order_type.py +17 -0
  358. capo_codebuild/types/source_auth.py +46 -0
  359. capo_codebuild/types/source_auth_type.py +18 -0
  360. capo_codebuild/types/source_credentials_info.py +65 -0
  361. capo_codebuild/types/source_credentials_infos.py +35 -0
  362. capo_codebuild/types/source_type.py +24 -0
  363. capo_codebuild/types/ssm_session.py +40 -0
  364. capo_codebuild/types/start_build_batch_input.py +459 -0
  365. capo_codebuild/types/start_build_batch_output.py +36 -0
  366. capo_codebuild/types/start_build_input.py +481 -0
  367. capo_codebuild/types/start_build_output.py +34 -0
  368. capo_codebuild/types/start_command_execution_input.py +54 -0
  369. capo_codebuild/types/start_command_execution_output.py +42 -0
  370. capo_codebuild/types/start_sandbox_connection_input.py +31 -0
  371. capo_codebuild/types/start_sandbox_connection_output.py +36 -0
  372. capo_codebuild/types/start_sandbox_input.py +37 -0
  373. capo_codebuild/types/start_sandbox_output.py +36 -0
  374. capo_codebuild/types/status_type.py +21 -0
  375. capo_codebuild/types/stop_build_batch_input.py +31 -0
  376. capo_codebuild/types/stop_build_batch_output.py +35 -0
  377. capo_codebuild/types/stop_build_input.py +31 -0
  378. capo_codebuild/types/stop_build_output.py +34 -0
  379. capo_codebuild/types/stop_sandbox_input.py +31 -0
  380. capo_codebuild/types/stop_sandbox_output.py +36 -0
  381. capo_codebuild/types/string.py +5 -0
  382. capo_codebuild/types/subnets.py +17 -0
  383. capo_codebuild/types/tag.py +35 -0
  384. capo_codebuild/types/tag_list.py +29 -0
  385. capo_codebuild/types/target_tracking_scaling_configuration.py +57 -0
  386. capo_codebuild/types/target_tracking_scaling_configurations.py +39 -0
  387. capo_codebuild/types/test_case.py +89 -0
  388. capo_codebuild/types/test_case_filter.py +34 -0
  389. capo_codebuild/types/test_cases.py +29 -0
  390. capo_codebuild/types/test_report_summary.py +61 -0
  391. capo_codebuild/types/time_out.py +5 -0
  392. capo_codebuild/types/timestamp.py +20 -0
  393. capo_codebuild/types/update_fleet_input.py +203 -0
  394. capo_codebuild/types/update_fleet_output.py +34 -0
  395. capo_codebuild/types/update_project_input.py +312 -0
  396. capo_codebuild/types/update_project_output.py +36 -0
  397. capo_codebuild/types/update_project_visibility_input.py +62 -0
  398. capo_codebuild/types/update_project_visibility_output.py +56 -0
  399. capo_codebuild/types/update_report_group_input.py +67 -0
  400. capo_codebuild/types/update_report_group_output.py +38 -0
  401. capo_codebuild/types/update_webhook_input.py +103 -0
  402. capo_codebuild/types/update_webhook_output.py +36 -0
  403. capo_codebuild/types/value_input.py +5 -0
  404. capo_codebuild/types/vpc_config.py +64 -0
  405. capo_codebuild/types/webhook.py +171 -0
  406. capo_codebuild/types/webhook_build_type.py +18 -0
  407. capo_codebuild/types/webhook_filter.py +56 -0
  408. capo_codebuild/types/webhook_filter_type.py +26 -0
  409. capo_codebuild/types/webhook_scope_type.py +18 -0
  410. capo_codebuild/types/webhook_status.py +19 -0
  411. capo_codebuild/types/wrapper_boolean.py +5 -0
  412. capo_codebuild/types/wrapper_double.py +5 -0
  413. capo_codebuild/types/wrapper_int.py +5 -0
  414. capo_codebuild/types/wrapper_long.py +5 -0
  415. capo_codebuild-0.1.0.dist-info/METADATA +101 -0
  416. capo_codebuild-0.1.0.dist-info/RECORD +419 -0
  417. capo_codebuild-0.1.0.dist-info/WHEEL +5 -0
  418. capo_codebuild-0.1.0.dist-info/licenses/LICENSE +21 -0
  419. capo_codebuild-0.1.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,4509 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codebuild#CodeBuild_20161006``."""
2
+
3
+ import warnings
4
+ from collections.abc import AsyncIterator
5
+ from typing import TYPE_CHECKING, Any, Iterable, Optional
6
+
7
+ from typing_extensions import Self, TypedDict
8
+ from zapros import AsyncBaseHandler, AsyncClient
9
+
10
+ import capo_codebuild._auth._signers
11
+ import capo_codebuild._auth._sigv4
12
+ from capo_codebuild._auth._identity import Credentials
13
+ from capo_codebuild._auth._providers import (
14
+ CredentialsProvider,
15
+ IdentityProvider,
16
+ StaticAwsCredentialsProvider,
17
+ default_aws_credentials_chain,
18
+ )
19
+ from capo_codebuild._auth._zapros_handler import AuthMiddleware
20
+ from capo_codebuild._pagination import resolve_path as _resolve_path
21
+ from capo_codebuild._services._aws_config import aaws_config
22
+ from capo_codebuild._services._pipeline import (
23
+ AsyncInterceptor,
24
+ AsyncOperationOptions,
25
+ AsyncOperationRequest,
26
+ AsyncOperationResponse,
27
+ aexecute_pipeline,
28
+ aretry,
29
+ )
30
+
31
+ if TYPE_CHECKING:
32
+ import capo_codebuild.types.auth_type
33
+ import capo_codebuild.types.batch_delete_builds_input
34
+ import capo_codebuild.types.batch_delete_builds_output
35
+ import capo_codebuild.types.batch_get_build_batches_input
36
+ import capo_codebuild.types.batch_get_build_batches_output
37
+ import capo_codebuild.types.batch_get_builds_input
38
+ import capo_codebuild.types.batch_get_builds_output
39
+ import capo_codebuild.types.batch_get_command_executions_input
40
+ import capo_codebuild.types.batch_get_command_executions_output
41
+ import capo_codebuild.types.batch_get_fleets_input
42
+ import capo_codebuild.types.batch_get_fleets_output
43
+ import capo_codebuild.types.batch_get_projects_input
44
+ import capo_codebuild.types.batch_get_projects_output
45
+ import capo_codebuild.types.batch_get_report_groups_input
46
+ import capo_codebuild.types.batch_get_report_groups_output
47
+ import capo_codebuild.types.batch_get_reports_input
48
+ import capo_codebuild.types.batch_get_reports_output
49
+ import capo_codebuild.types.batch_get_sandboxes_input
50
+ import capo_codebuild.types.batch_get_sandboxes_output
51
+ import capo_codebuild.types.boolean
52
+ import capo_codebuild.types.build_batch_filter
53
+ import capo_codebuild.types.build_batch_ids
54
+ import capo_codebuild.types.build_ids
55
+ import capo_codebuild.types.build_status_config
56
+ import capo_codebuild.types.build_time_out
57
+ import capo_codebuild.types.code_coverage
58
+ import capo_codebuild.types.command_execution
59
+ import capo_codebuild.types.command_execution_ids
60
+ import capo_codebuild.types.command_type
61
+ import capo_codebuild.types.compute_configuration
62
+ import capo_codebuild.types.compute_type
63
+ import capo_codebuild.types.create_fleet_input
64
+ import capo_codebuild.types.create_fleet_output
65
+ import capo_codebuild.types.create_project_input
66
+ import capo_codebuild.types.create_project_output
67
+ import capo_codebuild.types.create_report_group_input
68
+ import capo_codebuild.types.create_report_group_output
69
+ import capo_codebuild.types.create_webhook_input
70
+ import capo_codebuild.types.create_webhook_output
71
+ import capo_codebuild.types.delete_build_batch_input
72
+ import capo_codebuild.types.delete_build_batch_output
73
+ import capo_codebuild.types.delete_fleet_input
74
+ import capo_codebuild.types.delete_fleet_output
75
+ import capo_codebuild.types.delete_project_input
76
+ import capo_codebuild.types.delete_project_output
77
+ import capo_codebuild.types.delete_report_group_input
78
+ import capo_codebuild.types.delete_report_group_output
79
+ import capo_codebuild.types.delete_report_input
80
+ import capo_codebuild.types.delete_report_output
81
+ import capo_codebuild.types.delete_resource_policy_input
82
+ import capo_codebuild.types.delete_resource_policy_output
83
+ import capo_codebuild.types.delete_source_credentials_input
84
+ import capo_codebuild.types.delete_source_credentials_output
85
+ import capo_codebuild.types.delete_webhook_input
86
+ import capo_codebuild.types.delete_webhook_output
87
+ import capo_codebuild.types.describe_code_coverages_input
88
+ import capo_codebuild.types.describe_code_coverages_output
89
+ import capo_codebuild.types.describe_test_cases_input
90
+ import capo_codebuild.types.describe_test_cases_output
91
+ import capo_codebuild.types.environment_type
92
+ import capo_codebuild.types.environment_variables
93
+ import capo_codebuild.types.filter_groups
94
+ import capo_codebuild.types.fleet_capacity
95
+ import capo_codebuild.types.fleet_name
96
+ import capo_codebuild.types.fleet_names
97
+ import capo_codebuild.types.fleet_overflow_behavior
98
+ import capo_codebuild.types.fleet_sort_by_type
99
+ import capo_codebuild.types.get_report_group_trend_input
100
+ import capo_codebuild.types.get_report_group_trend_output
101
+ import capo_codebuild.types.get_resource_policy_input
102
+ import capo_codebuild.types.get_resource_policy_output
103
+ import capo_codebuild.types.git_clone_depth
104
+ import capo_codebuild.types.git_submodules_config
105
+ import capo_codebuild.types.image_pull_credentials_type
106
+ import capo_codebuild.types.import_source_credentials_input
107
+ import capo_codebuild.types.import_source_credentials_output
108
+ import capo_codebuild.types.invalidate_project_cache_input
109
+ import capo_codebuild.types.invalidate_project_cache_output
110
+ import capo_codebuild.types.list_build_batches_for_project_input
111
+ import capo_codebuild.types.list_build_batches_for_project_output
112
+ import capo_codebuild.types.list_build_batches_input
113
+ import capo_codebuild.types.list_build_batches_output
114
+ import capo_codebuild.types.list_builds_for_project_input
115
+ import capo_codebuild.types.list_builds_for_project_output
116
+ import capo_codebuild.types.list_builds_input
117
+ import capo_codebuild.types.list_builds_output
118
+ import capo_codebuild.types.list_command_executions_for_sandbox_input
119
+ import capo_codebuild.types.list_command_executions_for_sandbox_output
120
+ import capo_codebuild.types.list_curated_environment_images_input
121
+ import capo_codebuild.types.list_curated_environment_images_output
122
+ import capo_codebuild.types.list_fleets_input
123
+ import capo_codebuild.types.list_fleets_output
124
+ import capo_codebuild.types.list_projects_input
125
+ import capo_codebuild.types.list_projects_output
126
+ import capo_codebuild.types.list_report_groups_input
127
+ import capo_codebuild.types.list_report_groups_output
128
+ import capo_codebuild.types.list_reports_for_report_group_input
129
+ import capo_codebuild.types.list_reports_for_report_group_output
130
+ import capo_codebuild.types.list_reports_input
131
+ import capo_codebuild.types.list_reports_output
132
+ import capo_codebuild.types.list_sandboxes_for_project_input
133
+ import capo_codebuild.types.list_sandboxes_for_project_output
134
+ import capo_codebuild.types.list_sandboxes_input
135
+ import capo_codebuild.types.list_sandboxes_output
136
+ import capo_codebuild.types.list_shared_projects_input
137
+ import capo_codebuild.types.list_shared_projects_output
138
+ import capo_codebuild.types.list_shared_report_groups_input
139
+ import capo_codebuild.types.list_shared_report_groups_output
140
+ import capo_codebuild.types.list_source_credentials_input
141
+ import capo_codebuild.types.list_source_credentials_output
142
+ import capo_codebuild.types.logs_config
143
+ import capo_codebuild.types.non_empty_string
144
+ import capo_codebuild.types.page_size
145
+ import capo_codebuild.types.percentage
146
+ import capo_codebuild.types.project_artifacts
147
+ import capo_codebuild.types.project_artifacts_list
148
+ import capo_codebuild.types.project_build_batch_config
149
+ import capo_codebuild.types.project_cache
150
+ import capo_codebuild.types.project_description
151
+ import capo_codebuild.types.project_environment
152
+ import capo_codebuild.types.project_file_system_locations
153
+ import capo_codebuild.types.project_fleet
154
+ import capo_codebuild.types.project_name
155
+ import capo_codebuild.types.project_names
156
+ import capo_codebuild.types.project_secondary_source_versions
157
+ import capo_codebuild.types.project_sort_by_type
158
+ import capo_codebuild.types.project_source
159
+ import capo_codebuild.types.project_sources
160
+ import capo_codebuild.types.project_visibility_type
161
+ import capo_codebuild.types.proxy_configuration
162
+ import capo_codebuild.types.pull_request_build_policy
163
+ import capo_codebuild.types.put_resource_policy_input
164
+ import capo_codebuild.types.put_resource_policy_output
165
+ import capo_codebuild.types.registry_credential
166
+ import capo_codebuild.types.report_arns
167
+ import capo_codebuild.types.report_code_coverage_sort_by_type
168
+ import capo_codebuild.types.report_export_config
169
+ import capo_codebuild.types.report_filter
170
+ import capo_codebuild.types.report_group_arns
171
+ import capo_codebuild.types.report_group_name
172
+ import capo_codebuild.types.report_group_sort_by_type
173
+ import capo_codebuild.types.report_group_trend_field_type
174
+ import capo_codebuild.types.report_type
175
+ import capo_codebuild.types.retry_build_batch_input
176
+ import capo_codebuild.types.retry_build_batch_output
177
+ import capo_codebuild.types.retry_build_batch_type
178
+ import capo_codebuild.types.retry_build_input
179
+ import capo_codebuild.types.retry_build_output
180
+ import capo_codebuild.types.sandbox_ids
181
+ import capo_codebuild.types.scaling_configuration_input
182
+ import capo_codebuild.types.scope_configuration
183
+ import capo_codebuild.types.sensitive_non_empty_string
184
+ import capo_codebuild.types.sensitive_string
185
+ import capo_codebuild.types.server_type
186
+ import capo_codebuild.types.shared_resource_sort_by_type
187
+ import capo_codebuild.types.sort_order_type
188
+ import capo_codebuild.types.source_auth
189
+ import capo_codebuild.types.source_type
190
+ import capo_codebuild.types.start_build_batch_input
191
+ import capo_codebuild.types.start_build_batch_output
192
+ import capo_codebuild.types.start_build_input
193
+ import capo_codebuild.types.start_build_output
194
+ import capo_codebuild.types.start_command_execution_input
195
+ import capo_codebuild.types.start_command_execution_output
196
+ import capo_codebuild.types.start_sandbox_connection_input
197
+ import capo_codebuild.types.start_sandbox_connection_output
198
+ import capo_codebuild.types.start_sandbox_input
199
+ import capo_codebuild.types.start_sandbox_output
200
+ import capo_codebuild.types.stop_build_batch_input
201
+ import capo_codebuild.types.stop_build_batch_output
202
+ import capo_codebuild.types.stop_build_input
203
+ import capo_codebuild.types.stop_build_output
204
+ import capo_codebuild.types.stop_sandbox_input
205
+ import capo_codebuild.types.stop_sandbox_output
206
+ import capo_codebuild.types.string
207
+ import capo_codebuild.types.tag_list
208
+ import capo_codebuild.types.test_case
209
+ import capo_codebuild.types.test_case_filter
210
+ import capo_codebuild.types.time_out
211
+ import capo_codebuild.types.update_fleet_input
212
+ import capo_codebuild.types.update_fleet_output
213
+ import capo_codebuild.types.update_project_input
214
+ import capo_codebuild.types.update_project_output
215
+ import capo_codebuild.types.update_project_visibility_input
216
+ import capo_codebuild.types.update_project_visibility_output
217
+ import capo_codebuild.types.update_report_group_input
218
+ import capo_codebuild.types.update_report_group_output
219
+ import capo_codebuild.types.update_webhook_input
220
+ import capo_codebuild.types.update_webhook_output
221
+ import capo_codebuild.types.vpc_config
222
+ import capo_codebuild.types.webhook_build_type
223
+ import capo_codebuild.types.wrapper_boolean
224
+ import capo_codebuild.types.wrapper_int
225
+
226
+
227
+ class AsyncCodeBuildClientConfig(TypedDict, total=False, closed=True):
228
+ operation_interceptors: Iterable[AsyncInterceptor[Any, Any]]
229
+ retry_max_attempts: int | None
230
+ region: str | None
231
+ use_dual_stack: bool | None
232
+ use_fips: bool | None
233
+ endpoint: str | None
234
+ credentials_provider: IdentityProvider[Credentials] | None
235
+
236
+
237
+ class AsyncCodeBuildClient:
238
+ """A client for the ``CodeBuild`` service.
239
+
240
+ Args:
241
+ http_handler: HTTP handler for sending requests. If not provided, creates a default handler.
242
+ operation_interceptors: Interceptors that wrap every operation call. If not provided, defaults to an empty list.
243
+ retry_max_attempts: Maximum number of times to retry a failed operation. Defaults to 3.
244
+ region: The value of the ``AWS::Region`` endpoint parameter.
245
+ use_dual_stack: The value of the ``AWS::UseDualStack`` endpoint parameter.
246
+ use_fips: The value of the ``AWS::UseFIPS`` endpoint parameter.
247
+ endpoint: The value of the ``SDK::Endpoint`` endpoint parameter.
248
+ credentials: AWS credentials for request signing.
249
+ credentials_provider: Provider that resolves AWS credentials. Takes precedence over ``credentials``.
250
+ """
251
+
252
+ def __init__(
253
+ self,
254
+ http_handler: AsyncBaseHandler | None = None,
255
+ operation_interceptors: Iterable[AsyncInterceptor[Any, Any]] | None = None,
256
+ retry_max_attempts: int | None = None,
257
+ region: str | None = None,
258
+ use_dual_stack: bool | None = None,
259
+ use_fips: bool | None = None,
260
+ endpoint: str | None = None,
261
+ credentials: Credentials | None = None,
262
+ credentials_provider: CredentialsProvider | None = None,
263
+ ):
264
+ self._client = AsyncClient(http_handler).wrap_with_middleware(
265
+ lambda next: AuthMiddleware(next)
266
+ )
267
+ if credentials is not None and credentials_provider is not None:
268
+ warnings.warn(
269
+ "Both credentials and credentials_provider given; provider takes precedence"
270
+ )
271
+ resolved_credentials_provider: IdentityProvider[Credentials] | None = (
272
+ credentials_provider
273
+ )
274
+ if resolved_credentials_provider is None and credentials is not None:
275
+ resolved_credentials_provider = StaticAwsCredentialsProvider(credentials)
276
+ if resolved_credentials_provider is None and credentials is None:
277
+ resolved_credentials_provider = default_aws_credentials_chain(
278
+ AsyncClient(http_handler)
279
+ )
280
+ self._config = AsyncCodeBuildClientConfig(
281
+ {
282
+ "operation_interceptors": operation_interceptors or [],
283
+ "retry_max_attempts": retry_max_attempts,
284
+ "region": region,
285
+ "use_dual_stack": use_dual_stack,
286
+ "use_fips": use_fips,
287
+ "endpoint": endpoint,
288
+ "credentials_provider": resolved_credentials_provider,
289
+ }
290
+ )
291
+
292
+ def operation_options(
293
+ self, config_overrides: Optional[AsyncCodeBuildClientConfig] = None
294
+ ) -> tuple[Iterable[AsyncInterceptor[Any, Any]], AsyncOperationOptions]:
295
+ overrides: AsyncCodeBuildClientConfig = config_overrides or {}
296
+ interceptors_: list[AsyncInterceptor[Any, Any]] = [
297
+ *overrides.get(
298
+ "operation_interceptors", self._config.get("operation_interceptors", [])
299
+ ),
300
+ aaws_config(),
301
+ aretry(),
302
+ ]
303
+ options_: AsyncOperationOptions = AsyncOperationOptions(
304
+ client=self._client,
305
+ retry_max_attempts=overrides.get(
306
+ "retry_max_attempts", self._config.get("retry_max_attempts")
307
+ ),
308
+ region=overrides.get("region", self._config.get("region")),
309
+ use_dual_stack=overrides.get(
310
+ "use_dual_stack", self._config.get("use_dual_stack")
311
+ ),
312
+ use_fips=overrides.get("use_fips", self._config.get("use_fips")),
313
+ endpoint=overrides.get("endpoint", self._config.get("endpoint")),
314
+ credentials_provider=overrides.get(
315
+ "credentials_provider", self._config.get("credentials_provider")
316
+ ),
317
+ )
318
+ return interceptors_, options_
319
+
320
+ async def batch_delete_builds(
321
+ self,
322
+ ids: "capo_codebuild.types.build_ids.BuildIds",
323
+ *,
324
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
325
+ ) -> "capo_codebuild.types.batch_delete_builds_output.BatchDeleteBuildsOutput":
326
+ """<p>Deletes one or more builds.</p>
327
+
328
+ Args:
329
+ ids: <p>The IDs of the builds to delete.</p>
330
+
331
+ Raises:
332
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
333
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
334
+ """
335
+
336
+ async def _handler(
337
+ req: "AsyncOperationRequest[capo_codebuild.types.batch_delete_builds_input.BatchDeleteBuildsInput]",
338
+ ) -> AsyncOperationResponse[
339
+ "capo_codebuild.types.batch_delete_builds_output.BatchDeleteBuildsOutput"
340
+ ]:
341
+ import capo_codebuild._operations.code_build_20161006.batch_delete_builds
342
+
343
+ (
344
+ output,
345
+ http_response,
346
+ ) = await capo_codebuild._operations.code_build_20161006.batch_delete_builds.async_batch_delete_builds(
347
+ req.options, req.input
348
+ )
349
+ return AsyncOperationResponse(output=output, response=http_response)
350
+
351
+ interceptors_, options_ = self.operation_options(config_overrides)
352
+ input_: capo_codebuild.types.batch_delete_builds_input.BatchDeleteBuildsInput = {
353
+ "ids": ids
354
+ }
355
+
356
+ response = await aexecute_pipeline(
357
+ AsyncOperationRequest(input=input_, options=options_),
358
+ handler=_handler,
359
+ interceptors=list(interceptors_),
360
+ )
361
+ await response.response.aclose()
362
+ return response.output
363
+
364
+ async def batch_get_build_batches(
365
+ self,
366
+ ids: "capo_codebuild.types.build_batch_ids.BuildBatchIds",
367
+ *,
368
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
369
+ ) -> (
370
+ "capo_codebuild.types.batch_get_build_batches_output.BatchGetBuildBatchesOutput"
371
+ ):
372
+ """<p>Retrieves information about one or more batch builds.</p>
373
+
374
+ Args:
375
+ ids: <p>An array that contains the batch build identifiers to retrieve.</p>
376
+
377
+ Raises:
378
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
379
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
380
+ """
381
+
382
+ async def _handler(
383
+ req: "AsyncOperationRequest[capo_codebuild.types.batch_get_build_batches_input.BatchGetBuildBatchesInput]",
384
+ ) -> AsyncOperationResponse[
385
+ "capo_codebuild.types.batch_get_build_batches_output.BatchGetBuildBatchesOutput"
386
+ ]:
387
+ import capo_codebuild._operations.code_build_20161006.batch_get_build_batches
388
+
389
+ (
390
+ output,
391
+ http_response,
392
+ ) = await capo_codebuild._operations.code_build_20161006.batch_get_build_batches.async_batch_get_build_batches(
393
+ req.options, req.input
394
+ )
395
+ return AsyncOperationResponse(output=output, response=http_response)
396
+
397
+ interceptors_, options_ = self.operation_options(config_overrides)
398
+ input_: capo_codebuild.types.batch_get_build_batches_input.BatchGetBuildBatchesInput = {
399
+ "ids": ids
400
+ }
401
+
402
+ response = await aexecute_pipeline(
403
+ AsyncOperationRequest(input=input_, options=options_),
404
+ handler=_handler,
405
+ interceptors=list(interceptors_),
406
+ )
407
+ await response.response.aclose()
408
+ return response.output
409
+
410
+ async def batch_get_builds(
411
+ self,
412
+ ids: "capo_codebuild.types.build_ids.BuildIds",
413
+ *,
414
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
415
+ ) -> "capo_codebuild.types.batch_get_builds_output.BatchGetBuildsOutput":
416
+ """<p>Gets information about one or more builds.</p>
417
+
418
+ Args:
419
+ ids: <p>The IDs of the builds.</p>
420
+
421
+ Raises:
422
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
423
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
424
+ """
425
+
426
+ async def _handler(
427
+ req: "AsyncOperationRequest[capo_codebuild.types.batch_get_builds_input.BatchGetBuildsInput]",
428
+ ) -> AsyncOperationResponse[
429
+ "capo_codebuild.types.batch_get_builds_output.BatchGetBuildsOutput"
430
+ ]:
431
+ import capo_codebuild._operations.code_build_20161006.batch_get_builds
432
+
433
+ (
434
+ output,
435
+ http_response,
436
+ ) = await capo_codebuild._operations.code_build_20161006.batch_get_builds.async_batch_get_builds(
437
+ req.options, req.input
438
+ )
439
+ return AsyncOperationResponse(output=output, response=http_response)
440
+
441
+ interceptors_, options_ = self.operation_options(config_overrides)
442
+ input_: capo_codebuild.types.batch_get_builds_input.BatchGetBuildsInput = {
443
+ "ids": ids
444
+ }
445
+
446
+ response = await aexecute_pipeline(
447
+ AsyncOperationRequest(input=input_, options=options_),
448
+ handler=_handler,
449
+ interceptors=list(interceptors_),
450
+ )
451
+ await response.response.aclose()
452
+ return response.output
453
+
454
+ async def batch_get_command_executions(
455
+ self,
456
+ sandbox_id: "capo_codebuild.types.non_empty_string.NonEmptyString",
457
+ command_execution_ids: "capo_codebuild.types.command_execution_ids.CommandExecutionIds",
458
+ *,
459
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
460
+ ) -> "capo_codebuild.types.batch_get_command_executions_output.BatchGetCommandExecutionsOutput":
461
+ """<p>Gets information about the command executions.</p>
462
+
463
+ Args:
464
+ sandbox_id: <p>A <code>sandboxId</code> or <code>sandboxArn</code>.</p>
465
+ command_execution_ids: <p>A comma separated list of <code>commandExecutionIds</code>.</p>
466
+
467
+ Raises:
468
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
469
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
470
+ """
471
+
472
+ async def _handler(
473
+ req: "AsyncOperationRequest[capo_codebuild.types.batch_get_command_executions_input.BatchGetCommandExecutionsInput]",
474
+ ) -> AsyncOperationResponse[
475
+ "capo_codebuild.types.batch_get_command_executions_output.BatchGetCommandExecutionsOutput"
476
+ ]:
477
+ import capo_codebuild._operations.code_build_20161006.batch_get_command_executions
478
+
479
+ (
480
+ output,
481
+ http_response,
482
+ ) = await capo_codebuild._operations.code_build_20161006.batch_get_command_executions.async_batch_get_command_executions(
483
+ req.options, req.input
484
+ )
485
+ return AsyncOperationResponse(output=output, response=http_response)
486
+
487
+ interceptors_, options_ = self.operation_options(config_overrides)
488
+ input_: capo_codebuild.types.batch_get_command_executions_input.BatchGetCommandExecutionsInput = {
489
+ "sandbox_id": sandbox_id,
490
+ "command_execution_ids": command_execution_ids,
491
+ }
492
+
493
+ response = await aexecute_pipeline(
494
+ AsyncOperationRequest(input=input_, options=options_),
495
+ handler=_handler,
496
+ interceptors=list(interceptors_),
497
+ )
498
+ await response.response.aclose()
499
+ return response.output
500
+
501
+ async def batch_get_fleets(
502
+ self,
503
+ names: "capo_codebuild.types.fleet_names.FleetNames",
504
+ *,
505
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
506
+ ) -> "capo_codebuild.types.batch_get_fleets_output.BatchGetFleetsOutput":
507
+ """<p>Gets information about one or more compute fleets.</p>
508
+
509
+ Args:
510
+ names: <p>The names or ARNs of the compute fleets.</p>
511
+
512
+ Raises:
513
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
514
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
515
+ """
516
+
517
+ async def _handler(
518
+ req: "AsyncOperationRequest[capo_codebuild.types.batch_get_fleets_input.BatchGetFleetsInput]",
519
+ ) -> AsyncOperationResponse[
520
+ "capo_codebuild.types.batch_get_fleets_output.BatchGetFleetsOutput"
521
+ ]:
522
+ import capo_codebuild._operations.code_build_20161006.batch_get_fleets
523
+
524
+ (
525
+ output,
526
+ http_response,
527
+ ) = await capo_codebuild._operations.code_build_20161006.batch_get_fleets.async_batch_get_fleets(
528
+ req.options, req.input
529
+ )
530
+ return AsyncOperationResponse(output=output, response=http_response)
531
+
532
+ interceptors_, options_ = self.operation_options(config_overrides)
533
+ input_: capo_codebuild.types.batch_get_fleets_input.BatchGetFleetsInput = {
534
+ "names": names
535
+ }
536
+
537
+ response = await aexecute_pipeline(
538
+ AsyncOperationRequest(input=input_, options=options_),
539
+ handler=_handler,
540
+ interceptors=list(interceptors_),
541
+ )
542
+ await response.response.aclose()
543
+ return response.output
544
+
545
+ async def batch_get_projects(
546
+ self,
547
+ names: "capo_codebuild.types.project_names.ProjectNames",
548
+ *,
549
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
550
+ ) -> "capo_codebuild.types.batch_get_projects_output.BatchGetProjectsOutput":
551
+ """<p>Gets information about one or more build projects.</p>
552
+
553
+ Args:
554
+ names: <p>The names or ARNs of the build projects. To get information about a project shared with your Amazon Web Services account, its ARN must be specified. You cannot specify a shared project using its name.</p>
555
+
556
+ Raises:
557
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
558
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
559
+ """
560
+
561
+ async def _handler(
562
+ req: "AsyncOperationRequest[capo_codebuild.types.batch_get_projects_input.BatchGetProjectsInput]",
563
+ ) -> AsyncOperationResponse[
564
+ "capo_codebuild.types.batch_get_projects_output.BatchGetProjectsOutput"
565
+ ]:
566
+ import capo_codebuild._operations.code_build_20161006.batch_get_projects
567
+
568
+ (
569
+ output,
570
+ http_response,
571
+ ) = await capo_codebuild._operations.code_build_20161006.batch_get_projects.async_batch_get_projects(
572
+ req.options, req.input
573
+ )
574
+ return AsyncOperationResponse(output=output, response=http_response)
575
+
576
+ interceptors_, options_ = self.operation_options(config_overrides)
577
+ input_: capo_codebuild.types.batch_get_projects_input.BatchGetProjectsInput = {
578
+ "names": names
579
+ }
580
+
581
+ response = await aexecute_pipeline(
582
+ AsyncOperationRequest(input=input_, options=options_),
583
+ handler=_handler,
584
+ interceptors=list(interceptors_),
585
+ )
586
+ await response.response.aclose()
587
+ return response.output
588
+
589
+ async def batch_get_report_groups(
590
+ self,
591
+ report_group_arns: "capo_codebuild.types.report_group_arns.ReportGroupArns",
592
+ *,
593
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
594
+ ) -> (
595
+ "capo_codebuild.types.batch_get_report_groups_output.BatchGetReportGroupsOutput"
596
+ ):
597
+ """<p> Returns an array of report groups. </p>
598
+
599
+ Args:
600
+ report_group_arns: <p> An array of report group ARNs that identify the report groups to return. </p>
601
+
602
+ Raises:
603
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
604
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
605
+ """
606
+
607
+ async def _handler(
608
+ req: "AsyncOperationRequest[capo_codebuild.types.batch_get_report_groups_input.BatchGetReportGroupsInput]",
609
+ ) -> AsyncOperationResponse[
610
+ "capo_codebuild.types.batch_get_report_groups_output.BatchGetReportGroupsOutput"
611
+ ]:
612
+ import capo_codebuild._operations.code_build_20161006.batch_get_report_groups
613
+
614
+ (
615
+ output,
616
+ http_response,
617
+ ) = await capo_codebuild._operations.code_build_20161006.batch_get_report_groups.async_batch_get_report_groups(
618
+ req.options, req.input
619
+ )
620
+ return AsyncOperationResponse(output=output, response=http_response)
621
+
622
+ interceptors_, options_ = self.operation_options(config_overrides)
623
+ input_: capo_codebuild.types.batch_get_report_groups_input.BatchGetReportGroupsInput = {
624
+ "report_group_arns": report_group_arns
625
+ }
626
+
627
+ response = await aexecute_pipeline(
628
+ AsyncOperationRequest(input=input_, options=options_),
629
+ handler=_handler,
630
+ interceptors=list(interceptors_),
631
+ )
632
+ await response.response.aclose()
633
+ return response.output
634
+
635
+ async def batch_get_reports(
636
+ self,
637
+ report_arns: "capo_codebuild.types.report_arns.ReportArns",
638
+ *,
639
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
640
+ ) -> "capo_codebuild.types.batch_get_reports_output.BatchGetReportsOutput":
641
+ """<p> Returns an array of reports. </p>
642
+
643
+ Args:
644
+ report_arns: <p> An array of ARNs that identify the <code>Report</code> objects to return. </p>
645
+
646
+ Raises:
647
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
648
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
649
+ """
650
+
651
+ async def _handler(
652
+ req: "AsyncOperationRequest[capo_codebuild.types.batch_get_reports_input.BatchGetReportsInput]",
653
+ ) -> AsyncOperationResponse[
654
+ "capo_codebuild.types.batch_get_reports_output.BatchGetReportsOutput"
655
+ ]:
656
+ import capo_codebuild._operations.code_build_20161006.batch_get_reports
657
+
658
+ (
659
+ output,
660
+ http_response,
661
+ ) = await capo_codebuild._operations.code_build_20161006.batch_get_reports.async_batch_get_reports(
662
+ req.options, req.input
663
+ )
664
+ return AsyncOperationResponse(output=output, response=http_response)
665
+
666
+ interceptors_, options_ = self.operation_options(config_overrides)
667
+ input_: capo_codebuild.types.batch_get_reports_input.BatchGetReportsInput = {
668
+ "report_arns": report_arns
669
+ }
670
+
671
+ response = await aexecute_pipeline(
672
+ AsyncOperationRequest(input=input_, options=options_),
673
+ handler=_handler,
674
+ interceptors=list(interceptors_),
675
+ )
676
+ await response.response.aclose()
677
+ return response.output
678
+
679
+ async def batch_get_sandboxes(
680
+ self,
681
+ ids: "capo_codebuild.types.sandbox_ids.SandboxIds",
682
+ *,
683
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
684
+ ) -> "capo_codebuild.types.batch_get_sandboxes_output.BatchGetSandboxesOutput":
685
+ """<p>Gets information about the sandbox status.</p>
686
+
687
+ Args:
688
+ ids: <p>A comma separated list of <code>sandboxIds</code> or <code>sandboxArns</code>.</p>
689
+
690
+ Raises:
691
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
692
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
693
+ """
694
+
695
+ async def _handler(
696
+ req: "AsyncOperationRequest[capo_codebuild.types.batch_get_sandboxes_input.BatchGetSandboxesInput]",
697
+ ) -> AsyncOperationResponse[
698
+ "capo_codebuild.types.batch_get_sandboxes_output.BatchGetSandboxesOutput"
699
+ ]:
700
+ import capo_codebuild._operations.code_build_20161006.batch_get_sandboxes
701
+
702
+ (
703
+ output,
704
+ http_response,
705
+ ) = await capo_codebuild._operations.code_build_20161006.batch_get_sandboxes.async_batch_get_sandboxes(
706
+ req.options, req.input
707
+ )
708
+ return AsyncOperationResponse(output=output, response=http_response)
709
+
710
+ interceptors_, options_ = self.operation_options(config_overrides)
711
+ input_: capo_codebuild.types.batch_get_sandboxes_input.BatchGetSandboxesInput = {
712
+ "ids": ids
713
+ }
714
+
715
+ response = await aexecute_pipeline(
716
+ AsyncOperationRequest(input=input_, options=options_),
717
+ handler=_handler,
718
+ interceptors=list(interceptors_),
719
+ )
720
+ await response.response.aclose()
721
+ return response.output
722
+
723
+ async def create_fleet(
724
+ self,
725
+ name: "capo_codebuild.types.fleet_name.FleetName",
726
+ base_capacity: "capo_codebuild.types.fleet_capacity.FleetCapacity",
727
+ environment_type: "capo_codebuild.types.environment_type.EnvironmentType",
728
+ compute_type: "capo_codebuild.types.compute_type.ComputeType",
729
+ *,
730
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
731
+ compute_configuration: Optional[
732
+ "capo_codebuild.types.compute_configuration.ComputeConfiguration"
733
+ ] = None,
734
+ scaling_configuration: Optional[
735
+ "capo_codebuild.types.scaling_configuration_input.ScalingConfigurationInput"
736
+ ] = None,
737
+ overflow_behavior: Optional[
738
+ "capo_codebuild.types.fleet_overflow_behavior.FleetOverflowBehavior"
739
+ ] = None,
740
+ vpc_config: Optional["capo_codebuild.types.vpc_config.VpcConfig"] = None,
741
+ proxy_configuration: Optional[
742
+ "capo_codebuild.types.proxy_configuration.ProxyConfiguration"
743
+ ] = None,
744
+ image_id: Optional[
745
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
746
+ ] = None,
747
+ fleet_service_role: Optional[
748
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
749
+ ] = None,
750
+ tags: Optional["capo_codebuild.types.tag_list.TagList"] = None,
751
+ ) -> "capo_codebuild.types.create_fleet_output.CreateFleetOutput":
752
+ r"""<p>Creates a compute fleet.</p>
753
+
754
+ Args:
755
+ name: <p>The name of the compute fleet.</p>
756
+ base_capacity: <p>The initial number of machines allocated to the fleet, which defines the number of builds that can run in parallel.</p>
757
+ environment_type: <p>The environment type of the compute fleet.</p> <ul> <li> <p>The environment type <code>ARM_CONTAINER</code> is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), Asia Pacific (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), EU (Frankfurt), and South America (São Paulo).</p> </li> <li> <p>The environment type <code>ARM_EC2</code> is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), South America (São Paulo), and Asia Pacific (Mumbai).</p> </li> <li> <p>The environment type <code>LINUX_CONTAINER</code> is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), South America (São Paulo), and Asia Pacific (Mumbai).</p> </li> <li> <p>The environment type <code>LINUX_EC2</code> is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), South America (São Paulo), and Asia Pacific (Mumbai).</p> </li> <li> <p>The environment type <code>LINUX_GPU_CONTAINER</code> is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), and Asia Pacific (Sydney).</p> </li> <li> <p>The environment type <code>MAC_ARM</code> is available for Medium fleets only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), Asia Pacific (Sydney), and EU (Frankfurt)</p> </li> <li> <p>The environment type <code>MAC_ARM</code> is available for Large fleets only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), and Asia Pacific (Sydney).</p> </li> <li> <p>The environment type <code>WINDOWS_EC2</code> is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), South America (São Paulo), and Asia Pacific (Mumbai).</p> </li> <li> <p>The environment type <code>WINDOWS_SERVER_2019_CONTAINER</code> is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), Asia Pacific (Sydney), Asia Pacific (Tokyo), Asia Pacific (Mumbai) and EU (Ireland).</p> </li> <li> <p>The environment type <code>WINDOWS_SERVER_2022_CONTAINER</code> is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Sydney), Asia Pacific (Singapore), Asia Pacific (Tokyo), South America (São Paulo) and Asia Pacific (Mumbai).</p> </li> </ul> <p>For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html\">Build environment compute types</a> in the <i>CodeBuild user guide</i>.</p>
758
+ compute_type: <p>Information about the compute resources the compute fleet uses. Available values include:</p> <ul> <li> <p> <code>ATTRIBUTE_BASED_COMPUTE</code>: Specify the amount of vCPUs, memory, disk space, and the type of machine.</p> <note> <p> If you use <code>ATTRIBUTE_BASED_COMPUTE</code>, you must define your attributes by using <code>computeConfiguration</code>. CodeBuild will select the cheapest instance that satisfies your specified attributes. For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment-reserved-capacity.types\">Reserved capacity environment types</a> in the <i>CodeBuild User Guide</i>.</p> </note> </li> <li> <p> <code>CUSTOM_INSTANCE_TYPE</code>: Specify the instance type for your compute fleet. For a list of supported instance types, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment-reserved-capacity.instance-types\">Supported instance families </a> in the <i>CodeBuild User Guide</i>.</p> </li> <li> <p> <code>BUILD_GENERAL1_SMALL</code>: Use up to 4 GiB memory and 2 vCPUs for builds.</p> </li> <li> <p> <code>BUILD_GENERAL1_MEDIUM</code>: Use up to 8 GiB memory and 4 vCPUs for builds.</p> </li> <li> <p> <code>BUILD_GENERAL1_LARGE</code>: Use up to 16 GiB memory and 8 vCPUs for builds, depending on your environment type.</p> </li> <li> <p> <code>BUILD_GENERAL1_XLARGE</code>: Use up to 72 GiB memory and 36 vCPUs for builds, depending on your environment type.</p> </li> <li> <p> <code>BUILD_GENERAL1_2XLARGE</code>: Use up to 144 GiB memory, 72 vCPUs, and 824 GB of SSD storage for builds. This compute type supports Docker images up to 100 GB uncompressed.</p> </li> <li> <p> <code>BUILD_LAMBDA_1GB</code>: Use up to 1 GiB memory for builds. Only available for environment type <code>LINUX_LAMBDA_CONTAINER</code> and <code>ARM_LAMBDA_CONTAINER</code>.</p> </li> <li> <p> <code>BUILD_LAMBDA_2GB</code>: Use up to 2 GiB memory for builds. Only available for environment type <code>LINUX_LAMBDA_CONTAINER</code> and <code>ARM_LAMBDA_CONTAINER</code>.</p> </li> <li> <p> <code>BUILD_LAMBDA_4GB</code>: Use up to 4 GiB memory for builds. Only available for environment type <code>LINUX_LAMBDA_CONTAINER</code> and <code>ARM_LAMBDA_CONTAINER</code>.</p> </li> <li> <p> <code>BUILD_LAMBDA_8GB</code>: Use up to 8 GiB memory for builds. Only available for environment type <code>LINUX_LAMBDA_CONTAINER</code> and <code>ARM_LAMBDA_CONTAINER</code>.</p> </li> <li> <p> <code>BUILD_LAMBDA_10GB</code>: Use up to 10 GiB memory for builds. Only available for environment type <code>LINUX_LAMBDA_CONTAINER</code> and <code>ARM_LAMBDA_CONTAINER</code>.</p> </li> </ul> <p> If you use <code>BUILD_GENERAL1_SMALL</code>: </p> <ul> <li> <p> For environment type <code>LINUX_CONTAINER</code>, you can use up to 4 GiB memory and 2 vCPUs for builds. </p> </li> <li> <p> For environment type <code>LINUX_GPU_CONTAINER</code>, you can use up to 16 GiB memory, 4 vCPUs, and 1 NVIDIA A10G Tensor Core GPU for builds.</p> </li> <li> <p> For environment type <code>ARM_CONTAINER</code>, you can use up to 4 GiB memory and 2 vCPUs on ARM-based processors for builds.</p> </li> </ul> <p> If you use <code>BUILD_GENERAL1_LARGE</code>: </p> <ul> <li> <p> For environment type <code>LINUX_CONTAINER</code>, you can use up to 16 GiB memory and 8 vCPUs for builds. </p> </li> <li> <p> For environment type <code>LINUX_GPU_CONTAINER</code>, you can use up to 255 GiB memory, 32 vCPUs, and 4 NVIDIA Tesla V100 GPUs for builds.</p> </li> <li> <p> For environment type <code>ARM_CONTAINER</code>, you can use up to 16 GiB memory and 8 vCPUs on ARM-based processors for builds.</p> </li> </ul> <p>For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types\">On-demand environment types</a> in the <i>CodeBuild User Guide.</i> </p>
759
+ compute_configuration: <p>The compute configuration of the compute fleet. This is only required if <code>computeType</code> is set to <code>ATTRIBUTE_BASED_COMPUTE</code> or <code>CUSTOM_INSTANCE_TYPE</code>.</p>
760
+ scaling_configuration: <p>The scaling configuration of the compute fleet.</p>
761
+ overflow_behavior: <p>The compute fleet overflow behavior.</p> <ul> <li> <p>For overflow behavior <code>QUEUE</code>, your overflow builds need to wait on the existing fleet instance to become available.</p> </li> <li> <p>For overflow behavior <code>ON_DEMAND</code>, your overflow builds run on CodeBuild on-demand.</p> <note> <p>If you choose to set your overflow behavior to on-demand while creating a VPC-connected fleet, make sure that you add the required VPC permissions to your project service role. For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface\">Example policy statement to allow CodeBuild access to Amazon Web Services services required to create a VPC network interface</a>.</p> </note> </li> </ul>
762
+ proxy_configuration: <p>The proxy configuration of the compute fleet.</p>
763
+ image_id: <p>The Amazon Machine Image (AMI) of the compute fleet.</p>
764
+ fleet_service_role: <p>The service role associated with the compute fleet. For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html\"> Allow a user to add a permission policy for a fleet service role</a> in the <i>CodeBuild User Guide</i>.</p>
765
+ tags: <p>A list of tag key and value pairs associated with this compute fleet.</p> <p>These tags are available for use by Amazon Web Services services that support CodeBuild build project tags.</p>
766
+
767
+ Raises:
768
+ capo_codebuild.errors.account_limit_exceeded_exception.AccountLimitExceededException: <p>An Amazon Web Services service limit was exceeded for the calling Amazon Web Services account.</p>
769
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
770
+ capo_codebuild.errors.resource_already_exists_exception.ResourceAlreadyExistsException: <p>The specified Amazon Web Services resource cannot be created, because an Amazon Web Services resource with the same settings already exists.</p>
771
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
772
+ """
773
+
774
+ async def _handler(
775
+ req: "AsyncOperationRequest[capo_codebuild.types.create_fleet_input.CreateFleetInput]",
776
+ ) -> AsyncOperationResponse[
777
+ "capo_codebuild.types.create_fleet_output.CreateFleetOutput"
778
+ ]:
779
+ import capo_codebuild._operations.code_build_20161006.create_fleet
780
+
781
+ (
782
+ output,
783
+ http_response,
784
+ ) = await capo_codebuild._operations.code_build_20161006.create_fleet.async_create_fleet(
785
+ req.options, req.input
786
+ )
787
+ return AsyncOperationResponse(output=output, response=http_response)
788
+
789
+ interceptors_, options_ = self.operation_options(config_overrides)
790
+ input_: capo_codebuild.types.create_fleet_input.CreateFleetInput = {
791
+ "name": name,
792
+ "base_capacity": base_capacity,
793
+ "environment_type": environment_type,
794
+ "compute_type": compute_type,
795
+ }
796
+ if compute_configuration is not None:
797
+ input_["compute_configuration"] = compute_configuration
798
+ if scaling_configuration is not None:
799
+ input_["scaling_configuration"] = scaling_configuration
800
+ if overflow_behavior is not None:
801
+ input_["overflow_behavior"] = overflow_behavior
802
+ if vpc_config is not None:
803
+ input_["vpc_config"] = vpc_config
804
+ if proxy_configuration is not None:
805
+ input_["proxy_configuration"] = proxy_configuration
806
+ if image_id is not None:
807
+ input_["image_id"] = image_id
808
+ if fleet_service_role is not None:
809
+ input_["fleet_service_role"] = fleet_service_role
810
+ if tags is not None:
811
+ input_["tags"] = tags
812
+
813
+ response = await aexecute_pipeline(
814
+ AsyncOperationRequest(input=input_, options=options_),
815
+ handler=_handler,
816
+ interceptors=list(interceptors_),
817
+ )
818
+ await response.response.aclose()
819
+ return response.output
820
+
821
+ async def create_project(
822
+ self,
823
+ name: "capo_codebuild.types.project_name.ProjectName",
824
+ source: "capo_codebuild.types.project_source.ProjectSource",
825
+ artifacts: "capo_codebuild.types.project_artifacts.ProjectArtifacts",
826
+ environment: "capo_codebuild.types.project_environment.ProjectEnvironment",
827
+ service_role: "capo_codebuild.types.non_empty_string.NonEmptyString",
828
+ *,
829
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
830
+ description: Optional[
831
+ "capo_codebuild.types.project_description.ProjectDescription"
832
+ ] = None,
833
+ secondary_sources: Optional[
834
+ "capo_codebuild.types.project_sources.ProjectSources"
835
+ ] = None,
836
+ source_version: Optional["capo_codebuild.types.string.String"] = None,
837
+ secondary_source_versions: Optional[
838
+ "capo_codebuild.types.project_secondary_source_versions.ProjectSecondarySourceVersions"
839
+ ] = None,
840
+ secondary_artifacts: Optional[
841
+ "capo_codebuild.types.project_artifacts_list.ProjectArtifactsList"
842
+ ] = None,
843
+ cache: Optional["capo_codebuild.types.project_cache.ProjectCache"] = None,
844
+ timeout_in_minutes: Optional[
845
+ "capo_codebuild.types.build_time_out.BuildTimeOut"
846
+ ] = None,
847
+ queued_timeout_in_minutes: Optional[
848
+ "capo_codebuild.types.time_out.TimeOut"
849
+ ] = None,
850
+ encryption_key: Optional[
851
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
852
+ ] = None,
853
+ tags: Optional["capo_codebuild.types.tag_list.TagList"] = None,
854
+ vpc_config: Optional["capo_codebuild.types.vpc_config.VpcConfig"] = None,
855
+ badge_enabled: Optional[
856
+ "capo_codebuild.types.wrapper_boolean.WrapperBoolean"
857
+ ] = None,
858
+ logs_config: Optional["capo_codebuild.types.logs_config.LogsConfig"] = None,
859
+ file_system_locations: Optional[
860
+ "capo_codebuild.types.project_file_system_locations.ProjectFileSystemLocations"
861
+ ] = None,
862
+ build_batch_config: Optional[
863
+ "capo_codebuild.types.project_build_batch_config.ProjectBuildBatchConfig"
864
+ ] = None,
865
+ concurrent_build_limit: Optional[
866
+ "capo_codebuild.types.wrapper_int.WrapperInt"
867
+ ] = None,
868
+ auto_retry_limit: Optional[
869
+ "capo_codebuild.types.wrapper_int.WrapperInt"
870
+ ] = None,
871
+ ) -> "capo_codebuild.types.create_project_output.CreateProjectOutput":
872
+ r"""<p>Creates a build project.</p>
873
+
874
+ Args:
875
+ name: <p>The name of the build project.</p>
876
+ description: <p>A description that makes the build project easy to identify.</p>
877
+ source: <p>Information about the build input source code for the build project.</p>
878
+ secondary_sources: <p>An array of <code>ProjectSource</code> objects. </p>
879
+ source_version: <p>A version of the build input to be built for this project. If not specified, the latest version is used. If specified, it must be one of: </p> <ul> <li> <p>For CodeCommit: the commit ID, branch, or Git tag to use.</p> </li> <li> <p>For GitHub: the commit ID, pull request ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a pull request ID is specified, it must use the format <code>pr/pull-request-ID</code> (for example <code>pr/25</code>). If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p> </li> <li> <p>For GitLab: the commit ID, branch, or Git tag to use.</p> </li> <li> <p>For Bitbucket: the commit ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p> </li> <li> <p>For Amazon S3: the version ID of the object that represents the build input ZIP file to use.</p> </li> </ul> <p>If <code>sourceVersion</code> is specified at the build level, then that version takes precedence over this <code>sourceVersion</code> (at the project level). </p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html\">Source Version Sample with CodeBuild</a> in the <i>CodeBuild User Guide</i>. </p>
880
+ secondary_source_versions: <p>An array of <code>ProjectSourceVersion</code> objects. If <code>secondarySourceVersions</code> is specified at the build level, then they take precedence over these <code>secondarySourceVersions</code> (at the project level). </p>
881
+ artifacts: <p>Information about the build output artifacts for the build project.</p>
882
+ secondary_artifacts: <p>An array of <code>ProjectArtifacts</code> objects. </p>
883
+ cache: <p>Stores recently used information so that it can be quickly accessed at a later time.</p>
884
+ environment: <p>Information about the build environment for the build project.</p>
885
+ service_role: <p>The ARN of the IAM role that enables CodeBuild to interact with dependent Amazon Web Services services on behalf of the Amazon Web Services account.</p>
886
+ timeout_in_minutes: <p>How long, in minutes, from 5 to 2160 (36 hours), for CodeBuild to wait before it times out any build that has not been marked as completed. The default is 60 minutes.</p>
887
+ queued_timeout_in_minutes: <p>The number of minutes a build is allowed to be queued before it times out. </p>
888
+ encryption_key: <p>The Key Management Service customer master key (CMK) to be used for encrypting the build output artifacts.</p> <note> <p>You can use a cross-account KMS key to encrypt the build output artifacts if your service role has permission to that key. </p> </note> <p>You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK's alias (using the format <code>alias/<alias-name></code>). </p>
889
+ tags: <p>A list of tag key and value pairs associated with this build project.</p> <p>These tags are available for use by Amazon Web Services services that support CodeBuild build project tags.</p>
890
+ vpc_config: <p>VpcConfig enables CodeBuild to access resources in an Amazon VPC.</p> <note> <p>If you're using compute fleets during project creation, do not provide vpcConfig.</p> </note>
891
+ badge_enabled: <p>Set this to true to generate a publicly accessible URL for your project's build badge.</p>
892
+ logs_config: <p>Information about logs for the build project. These can be logs in CloudWatch Logs, logs uploaded to a specified S3 bucket, or both. </p>
893
+ file_system_locations: <p> An array of <code>ProjectFileSystemLocation</code> objects for a CodeBuild build project. A <code>ProjectFileSystemLocation</code> object specifies the <code>identifier</code>, <code>location</code>, <code>mountOptions</code>, <code>mountPoint</code>, and <code>type</code> of a file system created using Amazon Elastic File System. </p>
894
+ build_batch_config: <p>A <a>ProjectBuildBatchConfig</a> object that defines the batch build options for the project.</p>
895
+ concurrent_build_limit: <p>The maximum number of concurrent builds that are allowed for this project.</p> <p>New builds are only started if the current number of builds is less than or equal to this limit. If the current build count meets this limit, new builds are throttled and are not run.</p>
896
+ auto_retry_limit: <p>The maximum number of additional automatic retries after a failed build. For example, if the auto-retry limit is set to 2, CodeBuild will call the <code>RetryBuild</code> API to automatically retry your build for up to 2 additional times.</p>
897
+
898
+ Raises:
899
+ capo_codebuild.errors.account_limit_exceeded_exception.AccountLimitExceededException: <p>An Amazon Web Services service limit was exceeded for the calling Amazon Web Services account.</p>
900
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
901
+ capo_codebuild.errors.resource_already_exists_exception.ResourceAlreadyExistsException: <p>The specified Amazon Web Services resource cannot be created, because an Amazon Web Services resource with the same settings already exists.</p>
902
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
903
+ """
904
+
905
+ async def _handler(
906
+ req: "AsyncOperationRequest[capo_codebuild.types.create_project_input.CreateProjectInput]",
907
+ ) -> AsyncOperationResponse[
908
+ "capo_codebuild.types.create_project_output.CreateProjectOutput"
909
+ ]:
910
+ import capo_codebuild._operations.code_build_20161006.create_project
911
+
912
+ (
913
+ output,
914
+ http_response,
915
+ ) = await capo_codebuild._operations.code_build_20161006.create_project.async_create_project(
916
+ req.options, req.input
917
+ )
918
+ return AsyncOperationResponse(output=output, response=http_response)
919
+
920
+ interceptors_, options_ = self.operation_options(config_overrides)
921
+ input_: capo_codebuild.types.create_project_input.CreateProjectInput = {
922
+ "name": name,
923
+ "source": source,
924
+ "artifacts": artifacts,
925
+ "environment": environment,
926
+ "service_role": service_role,
927
+ }
928
+ if description is not None:
929
+ input_["description"] = description
930
+ if secondary_sources is not None:
931
+ input_["secondary_sources"] = secondary_sources
932
+ if source_version is not None:
933
+ input_["source_version"] = source_version
934
+ if secondary_source_versions is not None:
935
+ input_["secondary_source_versions"] = secondary_source_versions
936
+ if secondary_artifacts is not None:
937
+ input_["secondary_artifacts"] = secondary_artifacts
938
+ if cache is not None:
939
+ input_["cache"] = cache
940
+ if timeout_in_minutes is not None:
941
+ input_["timeout_in_minutes"] = timeout_in_minutes
942
+ if queued_timeout_in_minutes is not None:
943
+ input_["queued_timeout_in_minutes"] = queued_timeout_in_minutes
944
+ if encryption_key is not None:
945
+ input_["encryption_key"] = encryption_key
946
+ if tags is not None:
947
+ input_["tags"] = tags
948
+ if vpc_config is not None:
949
+ input_["vpc_config"] = vpc_config
950
+ if badge_enabled is not None:
951
+ input_["badge_enabled"] = badge_enabled
952
+ if logs_config is not None:
953
+ input_["logs_config"] = logs_config
954
+ if file_system_locations is not None:
955
+ input_["file_system_locations"] = file_system_locations
956
+ if build_batch_config is not None:
957
+ input_["build_batch_config"] = build_batch_config
958
+ if concurrent_build_limit is not None:
959
+ input_["concurrent_build_limit"] = concurrent_build_limit
960
+ if auto_retry_limit is not None:
961
+ input_["auto_retry_limit"] = auto_retry_limit
962
+
963
+ response = await aexecute_pipeline(
964
+ AsyncOperationRequest(input=input_, options=options_),
965
+ handler=_handler,
966
+ interceptors=list(interceptors_),
967
+ )
968
+ await response.response.aclose()
969
+ return response.output
970
+
971
+ async def create_report_group(
972
+ self,
973
+ name: "capo_codebuild.types.report_group_name.ReportGroupName",
974
+ type: "capo_codebuild.types.report_type.ReportType",
975
+ export_config: "capo_codebuild.types.report_export_config.ReportExportConfig",
976
+ *,
977
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
978
+ tags: Optional["capo_codebuild.types.tag_list.TagList"] = None,
979
+ ) -> "capo_codebuild.types.create_report_group_output.CreateReportGroupOutput":
980
+ """<p> Creates a report group. A report group contains a collection of reports. </p>
981
+
982
+ Args:
983
+ name: <p> The name of the report group. </p>
984
+ type: <p> The type of report group. </p>
985
+ export_config: <p> A <code>ReportExportConfig</code> object that contains information about where the report group test results are exported. </p>
986
+ tags: <p> A list of tag key and value pairs associated with this report group. </p> <p>These tags are available for use by Amazon Web Services services that support CodeBuild report group tags.</p>
987
+
988
+ Raises:
989
+ capo_codebuild.errors.account_limit_exceeded_exception.AccountLimitExceededException: <p>An Amazon Web Services service limit was exceeded for the calling Amazon Web Services account.</p>
990
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
991
+ capo_codebuild.errors.resource_already_exists_exception.ResourceAlreadyExistsException: <p>The specified Amazon Web Services resource cannot be created, because an Amazon Web Services resource with the same settings already exists.</p>
992
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
993
+ """
994
+
995
+ async def _handler(
996
+ req: "AsyncOperationRequest[capo_codebuild.types.create_report_group_input.CreateReportGroupInput]",
997
+ ) -> AsyncOperationResponse[
998
+ "capo_codebuild.types.create_report_group_output.CreateReportGroupOutput"
999
+ ]:
1000
+ import capo_codebuild._operations.code_build_20161006.create_report_group
1001
+
1002
+ (
1003
+ output,
1004
+ http_response,
1005
+ ) = await capo_codebuild._operations.code_build_20161006.create_report_group.async_create_report_group(
1006
+ req.options, req.input
1007
+ )
1008
+ return AsyncOperationResponse(output=output, response=http_response)
1009
+
1010
+ interceptors_, options_ = self.operation_options(config_overrides)
1011
+ input_: capo_codebuild.types.create_report_group_input.CreateReportGroupInput = {
1012
+ "name": name,
1013
+ "type": type,
1014
+ "export_config": export_config,
1015
+ }
1016
+ if tags is not None:
1017
+ input_["tags"] = tags
1018
+
1019
+ response = await aexecute_pipeline(
1020
+ AsyncOperationRequest(input=input_, options=options_),
1021
+ handler=_handler,
1022
+ interceptors=list(interceptors_),
1023
+ )
1024
+ await response.response.aclose()
1025
+ return response.output
1026
+
1027
+ async def create_webhook(
1028
+ self,
1029
+ project_name: "capo_codebuild.types.project_name.ProjectName",
1030
+ *,
1031
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1032
+ branch_filter: Optional["capo_codebuild.types.string.String"] = None,
1033
+ filter_groups: Optional[
1034
+ "capo_codebuild.types.filter_groups.FilterGroups"
1035
+ ] = None,
1036
+ build_type: Optional[
1037
+ "capo_codebuild.types.webhook_build_type.WebhookBuildType"
1038
+ ] = None,
1039
+ manual_creation: Optional[
1040
+ "capo_codebuild.types.wrapper_boolean.WrapperBoolean"
1041
+ ] = None,
1042
+ scope_configuration: Optional[
1043
+ "capo_codebuild.types.scope_configuration.ScopeConfiguration"
1044
+ ] = None,
1045
+ pull_request_build_policy: Optional[
1046
+ "capo_codebuild.types.pull_request_build_policy.PullRequestBuildPolicy"
1047
+ ] = None,
1048
+ ) -> "capo_codebuild.types.create_webhook_output.CreateWebhookOutput":
1049
+ r"""<p>For an existing CodeBuild build project that has its source code stored in a GitHub or Bitbucket repository, enables CodeBuild to start rebuilding the source code every time a code change is pushed to the repository.</p> <important> <p>If you enable webhooks for an CodeBuild project, and the project is used as a build step in CodePipeline, then two identical builds are created for each commit. One build is triggered through webhooks, and one through CodePipeline. Because billing is on a per-build basis, you are billed for both builds. Therefore, if you are using CodePipeline, we recommend that you disable webhooks in CodeBuild. In the CodeBuild console, clear the Webhook box. For more information, see step 5 in <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/change-project.html#change-project-console\">Change a Build Project's Settings</a>.</p> </important>
1050
+
1051
+ Args:
1052
+ project_name: <p>The name of the CodeBuild project.</p>
1053
+ branch_filter: <p>A regular expression used to determine which repository branches are built when a webhook is triggered. If the name of a branch matches the regular expression, then it is built. If <code>branchFilter</code> is empty, then all branches are built.</p> <note> <p>It is recommended that you use <code>filterGroups</code> instead of <code>branchFilter</code>. </p> </note>
1054
+ filter_groups: <p>An array of arrays of <code>WebhookFilter</code> objects used to determine which webhooks are triggered. At least one <code>WebhookFilter</code> in the array must specify <code>EVENT</code> as its <code>type</code>. </p> <p>For a build to be triggered, at least one filter group in the <code>filterGroups</code> array must pass. For a filter group to pass, each of its filters must pass. </p>
1055
+ build_type: <p>Specifies the type of build this webhook will trigger.</p> <note> <p> <code>RUNNER_BUILDKITE_BUILD</code> is only available for <code>NO_SOURCE</code> source type projects configured for Buildkite runner builds. For more information about CodeBuild-hosted Buildkite runner builds, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/sample-runner-buildkite.html\">Tutorial: Configure a CodeBuild-hosted Buildkite runner</a> in the <i>CodeBuild user guide</i>.</p> </note>
1056
+ manual_creation: <p>If manualCreation is true, CodeBuild doesn't create a webhook in GitHub and instead returns <code>payloadUrl</code> and <code>secret</code> values for the webhook. The <code>payloadUrl</code> and <code>secret</code> values in the output can be used to manually create a webhook within GitHub.</p> <note> <p> <code>manualCreation</code> is only available for GitHub webhooks.</p> </note>
1057
+ scope_configuration: <p>The scope configuration for global or organization webhooks.</p> <note> <p>Global or organization webhooks are only available for GitHub and Github Enterprise webhooks.</p> </note>
1058
+ pull_request_build_policy: <p>A PullRequestBuildPolicy object that defines comment-based approval requirements for triggering builds on pull requests. This policy helps control when automated builds are executed based on contributor permissions and approval workflows.</p>
1059
+
1060
+ Raises:
1061
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
1062
+ capo_codebuild.errors.o_auth_provider_exception.OAuthProviderException: <p>There was a problem with the underlying OAuth provider.</p>
1063
+ capo_codebuild.errors.resource_already_exists_exception.ResourceAlreadyExistsException: <p>The specified Amazon Web Services resource cannot be created, because an Amazon Web Services resource with the same settings already exists.</p>
1064
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
1065
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
1066
+ """
1067
+
1068
+ async def _handler(
1069
+ req: "AsyncOperationRequest[capo_codebuild.types.create_webhook_input.CreateWebhookInput]",
1070
+ ) -> AsyncOperationResponse[
1071
+ "capo_codebuild.types.create_webhook_output.CreateWebhookOutput"
1072
+ ]:
1073
+ import capo_codebuild._operations.code_build_20161006.create_webhook
1074
+
1075
+ (
1076
+ output,
1077
+ http_response,
1078
+ ) = await capo_codebuild._operations.code_build_20161006.create_webhook.async_create_webhook(
1079
+ req.options, req.input
1080
+ )
1081
+ return AsyncOperationResponse(output=output, response=http_response)
1082
+
1083
+ interceptors_, options_ = self.operation_options(config_overrides)
1084
+ input_: capo_codebuild.types.create_webhook_input.CreateWebhookInput = {
1085
+ "project_name": project_name
1086
+ }
1087
+ if branch_filter is not None:
1088
+ input_["branch_filter"] = branch_filter
1089
+ if filter_groups is not None:
1090
+ input_["filter_groups"] = filter_groups
1091
+ if build_type is not None:
1092
+ input_["build_type"] = build_type
1093
+ if manual_creation is not None:
1094
+ input_["manual_creation"] = manual_creation
1095
+ if scope_configuration is not None:
1096
+ input_["scope_configuration"] = scope_configuration
1097
+ if pull_request_build_policy is not None:
1098
+ input_["pull_request_build_policy"] = pull_request_build_policy
1099
+
1100
+ response = await aexecute_pipeline(
1101
+ AsyncOperationRequest(input=input_, options=options_),
1102
+ handler=_handler,
1103
+ interceptors=list(interceptors_),
1104
+ )
1105
+ await response.response.aclose()
1106
+ return response.output
1107
+
1108
+ async def delete_build_batch(
1109
+ self,
1110
+ id: "capo_codebuild.types.non_empty_string.NonEmptyString",
1111
+ *,
1112
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1113
+ ) -> "capo_codebuild.types.delete_build_batch_output.DeleteBuildBatchOutput":
1114
+ """<p>Deletes a batch build.</p>
1115
+
1116
+ Args:
1117
+ id: <p>The identifier of the batch build to delete.</p>
1118
+
1119
+ Raises:
1120
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
1121
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
1122
+ """
1123
+
1124
+ async def _handler(
1125
+ req: "AsyncOperationRequest[capo_codebuild.types.delete_build_batch_input.DeleteBuildBatchInput]",
1126
+ ) -> AsyncOperationResponse[
1127
+ "capo_codebuild.types.delete_build_batch_output.DeleteBuildBatchOutput"
1128
+ ]:
1129
+ import capo_codebuild._operations.code_build_20161006.delete_build_batch
1130
+
1131
+ (
1132
+ output,
1133
+ http_response,
1134
+ ) = await capo_codebuild._operations.code_build_20161006.delete_build_batch.async_delete_build_batch(
1135
+ req.options, req.input
1136
+ )
1137
+ return AsyncOperationResponse(output=output, response=http_response)
1138
+
1139
+ interceptors_, options_ = self.operation_options(config_overrides)
1140
+ input_: capo_codebuild.types.delete_build_batch_input.DeleteBuildBatchInput = {
1141
+ "id": id
1142
+ }
1143
+
1144
+ response = await aexecute_pipeline(
1145
+ AsyncOperationRequest(input=input_, options=options_),
1146
+ handler=_handler,
1147
+ interceptors=list(interceptors_),
1148
+ )
1149
+ await response.response.aclose()
1150
+ return response.output
1151
+
1152
+ async def delete_fleet(
1153
+ self,
1154
+ arn: "capo_codebuild.types.non_empty_string.NonEmptyString",
1155
+ *,
1156
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1157
+ ) -> "capo_codebuild.types.delete_fleet_output.DeleteFleetOutput":
1158
+ """<p>Deletes a compute fleet. When you delete a compute fleet, its builds are not deleted.</p>
1159
+
1160
+ Args:
1161
+ arn: <p>The ARN of the compute fleet.</p>
1162
+
1163
+ Raises:
1164
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
1165
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
1166
+ """
1167
+
1168
+ async def _handler(
1169
+ req: "AsyncOperationRequest[capo_codebuild.types.delete_fleet_input.DeleteFleetInput]",
1170
+ ) -> AsyncOperationResponse[
1171
+ "capo_codebuild.types.delete_fleet_output.DeleteFleetOutput"
1172
+ ]:
1173
+ import capo_codebuild._operations.code_build_20161006.delete_fleet
1174
+
1175
+ (
1176
+ output,
1177
+ http_response,
1178
+ ) = await capo_codebuild._operations.code_build_20161006.delete_fleet.async_delete_fleet(
1179
+ req.options, req.input
1180
+ )
1181
+ return AsyncOperationResponse(output=output, response=http_response)
1182
+
1183
+ interceptors_, options_ = self.operation_options(config_overrides)
1184
+ input_: capo_codebuild.types.delete_fleet_input.DeleteFleetInput = {"arn": arn}
1185
+
1186
+ response = await aexecute_pipeline(
1187
+ AsyncOperationRequest(input=input_, options=options_),
1188
+ handler=_handler,
1189
+ interceptors=list(interceptors_),
1190
+ )
1191
+ await response.response.aclose()
1192
+ return response.output
1193
+
1194
+ async def delete_project(
1195
+ self,
1196
+ name: "capo_codebuild.types.non_empty_string.NonEmptyString",
1197
+ *,
1198
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1199
+ ) -> "capo_codebuild.types.delete_project_output.DeleteProjectOutput":
1200
+ """<p> Deletes a build project. When you delete a project, its builds are not deleted. </p>
1201
+
1202
+ Args:
1203
+ name: <p>The name of the build project.</p>
1204
+
1205
+ Raises:
1206
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
1207
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
1208
+ """
1209
+
1210
+ async def _handler(
1211
+ req: "AsyncOperationRequest[capo_codebuild.types.delete_project_input.DeleteProjectInput]",
1212
+ ) -> AsyncOperationResponse[
1213
+ "capo_codebuild.types.delete_project_output.DeleteProjectOutput"
1214
+ ]:
1215
+ import capo_codebuild._operations.code_build_20161006.delete_project
1216
+
1217
+ (
1218
+ output,
1219
+ http_response,
1220
+ ) = await capo_codebuild._operations.code_build_20161006.delete_project.async_delete_project(
1221
+ req.options, req.input
1222
+ )
1223
+ return AsyncOperationResponse(output=output, response=http_response)
1224
+
1225
+ interceptors_, options_ = self.operation_options(config_overrides)
1226
+ input_: capo_codebuild.types.delete_project_input.DeleteProjectInput = {
1227
+ "name": name
1228
+ }
1229
+
1230
+ response = await aexecute_pipeline(
1231
+ AsyncOperationRequest(input=input_, options=options_),
1232
+ handler=_handler,
1233
+ interceptors=list(interceptors_),
1234
+ )
1235
+ await response.response.aclose()
1236
+ return response.output
1237
+
1238
+ async def delete_report(
1239
+ self,
1240
+ arn: "capo_codebuild.types.non_empty_string.NonEmptyString",
1241
+ *,
1242
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1243
+ ) -> "capo_codebuild.types.delete_report_output.DeleteReportOutput":
1244
+ """<p> Deletes a report. </p>
1245
+
1246
+ Args:
1247
+ arn: <p> The ARN of the report to delete. </p>
1248
+
1249
+ Raises:
1250
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
1251
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
1252
+ """
1253
+
1254
+ async def _handler(
1255
+ req: "AsyncOperationRequest[capo_codebuild.types.delete_report_input.DeleteReportInput]",
1256
+ ) -> AsyncOperationResponse[
1257
+ "capo_codebuild.types.delete_report_output.DeleteReportOutput"
1258
+ ]:
1259
+ import capo_codebuild._operations.code_build_20161006.delete_report
1260
+
1261
+ (
1262
+ output,
1263
+ http_response,
1264
+ ) = await capo_codebuild._operations.code_build_20161006.delete_report.async_delete_report(
1265
+ req.options, req.input
1266
+ )
1267
+ return AsyncOperationResponse(output=output, response=http_response)
1268
+
1269
+ interceptors_, options_ = self.operation_options(config_overrides)
1270
+ input_: capo_codebuild.types.delete_report_input.DeleteReportInput = {
1271
+ "arn": arn
1272
+ }
1273
+
1274
+ response = await aexecute_pipeline(
1275
+ AsyncOperationRequest(input=input_, options=options_),
1276
+ handler=_handler,
1277
+ interceptors=list(interceptors_),
1278
+ )
1279
+ await response.response.aclose()
1280
+ return response.output
1281
+
1282
+ async def delete_report_group(
1283
+ self,
1284
+ arn: "capo_codebuild.types.non_empty_string.NonEmptyString",
1285
+ *,
1286
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1287
+ delete_reports: Optional["capo_codebuild.types.boolean.Boolean"] = None,
1288
+ ) -> "capo_codebuild.types.delete_report_group_output.DeleteReportGroupOutput":
1289
+ r"""<p>Deletes a report group. Before you delete a report group, you must delete its reports. </p>
1290
+
1291
+ Args:
1292
+ arn: <p>The ARN of the report group to delete. </p>
1293
+ delete_reports: <p>If <code>true</code>, deletes any reports that belong to a report group before deleting the report group. </p> <p>If <code>false</code>, you must delete any reports in the report group. Use <a href=\"https://docs.aws.amazon.com/codebuild/latest/APIReference/API_ListReportsForReportGroup.html\">ListReportsForReportGroup</a> to get the reports in a report group. Use <a href=\"https://docs.aws.amazon.com/codebuild/latest/APIReference/API_DeleteReport.html\">DeleteReport</a> to delete the reports. If you call <code>DeleteReportGroup</code> for a report group that contains one or more reports, an exception is thrown. </p>
1294
+
1295
+ Raises:
1296
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
1297
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
1298
+ """
1299
+
1300
+ async def _handler(
1301
+ req: "AsyncOperationRequest[capo_codebuild.types.delete_report_group_input.DeleteReportGroupInput]",
1302
+ ) -> AsyncOperationResponse[
1303
+ "capo_codebuild.types.delete_report_group_output.DeleteReportGroupOutput"
1304
+ ]:
1305
+ import capo_codebuild._operations.code_build_20161006.delete_report_group
1306
+
1307
+ (
1308
+ output,
1309
+ http_response,
1310
+ ) = await capo_codebuild._operations.code_build_20161006.delete_report_group.async_delete_report_group(
1311
+ req.options, req.input
1312
+ )
1313
+ return AsyncOperationResponse(output=output, response=http_response)
1314
+
1315
+ interceptors_, options_ = self.operation_options(config_overrides)
1316
+ input_: capo_codebuild.types.delete_report_group_input.DeleteReportGroupInput = {
1317
+ "arn": arn
1318
+ }
1319
+ if delete_reports is not None:
1320
+ input_["delete_reports"] = delete_reports
1321
+
1322
+ response = await aexecute_pipeline(
1323
+ AsyncOperationRequest(input=input_, options=options_),
1324
+ handler=_handler,
1325
+ interceptors=list(interceptors_),
1326
+ )
1327
+ await response.response.aclose()
1328
+ return response.output
1329
+
1330
+ async def delete_resource_policy(
1331
+ self,
1332
+ resource_arn: "capo_codebuild.types.non_empty_string.NonEmptyString",
1333
+ *,
1334
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1335
+ ) -> (
1336
+ "capo_codebuild.types.delete_resource_policy_output.DeleteResourcePolicyOutput"
1337
+ ):
1338
+ """<p> Deletes a resource policy that is identified by its resource ARN. </p>
1339
+
1340
+ Args:
1341
+ resource_arn: <p> The ARN of the resource that is associated with the resource policy. </p>
1342
+
1343
+ Raises:
1344
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
1345
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
1346
+ """
1347
+
1348
+ async def _handler(
1349
+ req: "AsyncOperationRequest[capo_codebuild.types.delete_resource_policy_input.DeleteResourcePolicyInput]",
1350
+ ) -> AsyncOperationResponse[
1351
+ "capo_codebuild.types.delete_resource_policy_output.DeleteResourcePolicyOutput"
1352
+ ]:
1353
+ import capo_codebuild._operations.code_build_20161006.delete_resource_policy
1354
+
1355
+ (
1356
+ output,
1357
+ http_response,
1358
+ ) = await capo_codebuild._operations.code_build_20161006.delete_resource_policy.async_delete_resource_policy(
1359
+ req.options, req.input
1360
+ )
1361
+ return AsyncOperationResponse(output=output, response=http_response)
1362
+
1363
+ interceptors_, options_ = self.operation_options(config_overrides)
1364
+ input_: capo_codebuild.types.delete_resource_policy_input.DeleteResourcePolicyInput = {
1365
+ "resource_arn": resource_arn
1366
+ }
1367
+
1368
+ response = await aexecute_pipeline(
1369
+ AsyncOperationRequest(input=input_, options=options_),
1370
+ handler=_handler,
1371
+ interceptors=list(interceptors_),
1372
+ )
1373
+ await response.response.aclose()
1374
+ return response.output
1375
+
1376
+ async def delete_source_credentials(
1377
+ self,
1378
+ arn: "capo_codebuild.types.non_empty_string.NonEmptyString",
1379
+ *,
1380
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1381
+ ) -> "capo_codebuild.types.delete_source_credentials_output.DeleteSourceCredentialsOutput":
1382
+ """<p> Deletes a set of GitHub, GitHub Enterprise, or Bitbucket source credentials. </p>
1383
+
1384
+ Args:
1385
+ arn: <p> The Amazon Resource Name (ARN) of the token.</p>
1386
+
1387
+ Raises:
1388
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
1389
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
1390
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
1391
+ """
1392
+
1393
+ async def _handler(
1394
+ req: "AsyncOperationRequest[capo_codebuild.types.delete_source_credentials_input.DeleteSourceCredentialsInput]",
1395
+ ) -> AsyncOperationResponse[
1396
+ "capo_codebuild.types.delete_source_credentials_output.DeleteSourceCredentialsOutput"
1397
+ ]:
1398
+ import capo_codebuild._operations.code_build_20161006.delete_source_credentials
1399
+
1400
+ (
1401
+ output,
1402
+ http_response,
1403
+ ) = await capo_codebuild._operations.code_build_20161006.delete_source_credentials.async_delete_source_credentials(
1404
+ req.options, req.input
1405
+ )
1406
+ return AsyncOperationResponse(output=output, response=http_response)
1407
+
1408
+ interceptors_, options_ = self.operation_options(config_overrides)
1409
+ input_: capo_codebuild.types.delete_source_credentials_input.DeleteSourceCredentialsInput = {
1410
+ "arn": arn
1411
+ }
1412
+
1413
+ response = await aexecute_pipeline(
1414
+ AsyncOperationRequest(input=input_, options=options_),
1415
+ handler=_handler,
1416
+ interceptors=list(interceptors_),
1417
+ )
1418
+ await response.response.aclose()
1419
+ return response.output
1420
+
1421
+ async def delete_webhook(
1422
+ self,
1423
+ project_name: "capo_codebuild.types.project_name.ProjectName",
1424
+ *,
1425
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1426
+ ) -> "capo_codebuild.types.delete_webhook_output.DeleteWebhookOutput":
1427
+ """<p>For an existing CodeBuild build project that has its source code stored in a GitHub or Bitbucket repository, stops CodeBuild from rebuilding the source code every time a code change is pushed to the repository.</p>
1428
+
1429
+ Args:
1430
+ project_name: <p>The name of the CodeBuild project.</p>
1431
+
1432
+ Raises:
1433
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
1434
+ capo_codebuild.errors.o_auth_provider_exception.OAuthProviderException: <p>There was a problem with the underlying OAuth provider.</p>
1435
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
1436
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
1437
+ """
1438
+
1439
+ async def _handler(
1440
+ req: "AsyncOperationRequest[capo_codebuild.types.delete_webhook_input.DeleteWebhookInput]",
1441
+ ) -> AsyncOperationResponse[
1442
+ "capo_codebuild.types.delete_webhook_output.DeleteWebhookOutput"
1443
+ ]:
1444
+ import capo_codebuild._operations.code_build_20161006.delete_webhook
1445
+
1446
+ (
1447
+ output,
1448
+ http_response,
1449
+ ) = await capo_codebuild._operations.code_build_20161006.delete_webhook.async_delete_webhook(
1450
+ req.options, req.input
1451
+ )
1452
+ return AsyncOperationResponse(output=output, response=http_response)
1453
+
1454
+ interceptors_, options_ = self.operation_options(config_overrides)
1455
+ input_: capo_codebuild.types.delete_webhook_input.DeleteWebhookInput = {
1456
+ "project_name": project_name
1457
+ }
1458
+
1459
+ response = await aexecute_pipeline(
1460
+ AsyncOperationRequest(input=input_, options=options_),
1461
+ handler=_handler,
1462
+ interceptors=list(interceptors_),
1463
+ )
1464
+ await response.response.aclose()
1465
+ return response.output
1466
+
1467
+ async def describe_code_coverages(
1468
+ self,
1469
+ report_arn: "capo_codebuild.types.non_empty_string.NonEmptyString",
1470
+ *,
1471
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1472
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
1473
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
1474
+ sort_order: Optional[
1475
+ "capo_codebuild.types.sort_order_type.SortOrderType"
1476
+ ] = None,
1477
+ sort_by: Optional[
1478
+ "capo_codebuild.types.report_code_coverage_sort_by_type.ReportCodeCoverageSortByType"
1479
+ ] = None,
1480
+ min_line_coverage_percentage: Optional[
1481
+ "capo_codebuild.types.percentage.Percentage"
1482
+ ] = None,
1483
+ max_line_coverage_percentage: Optional[
1484
+ "capo_codebuild.types.percentage.Percentage"
1485
+ ] = None,
1486
+ ) -> "capo_codebuild.types.describe_code_coverages_output.DescribeCodeCoveragesOutput":
1487
+ """<p>Retrieves one or more code coverage reports.</p>
1488
+
1489
+ Args:
1490
+ report_arn: <p> The ARN of the report for which test cases are returned. </p>
1491
+ next_token: <p>The <code>nextToken</code> value returned from a previous call to <code>DescribeCodeCoverages</code>. This specifies the next item to return. To return the beginning of the list, exclude this parameter.</p>
1492
+ max_results: <p>The maximum number of results to return.</p>
1493
+ sort_order: <p>Specifies if the results are sorted in ascending or descending order.</p>
1494
+ sort_by: <p>Specifies how the results are sorted. Possible values are:</p> <dl> <dt>FILE_PATH</dt> <dd> <p>The results are sorted by file path.</p> </dd> <dt>LINE_COVERAGE_PERCENTAGE</dt> <dd> <p>The results are sorted by the percentage of lines that are covered.</p> </dd> </dl>
1495
+ min_line_coverage_percentage: <p>The minimum line coverage percentage to report.</p>
1496
+ max_line_coverage_percentage: <p>The maximum line coverage percentage to report.</p>
1497
+
1498
+ Raises:
1499
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
1500
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
1501
+ """
1502
+
1503
+ async def _handler(
1504
+ req: "AsyncOperationRequest[capo_codebuild.types.describe_code_coverages_input.DescribeCodeCoveragesInput]",
1505
+ ) -> AsyncOperationResponse[
1506
+ "capo_codebuild.types.describe_code_coverages_output.DescribeCodeCoveragesOutput"
1507
+ ]:
1508
+ import capo_codebuild._operations.code_build_20161006.describe_code_coverages
1509
+
1510
+ (
1511
+ output,
1512
+ http_response,
1513
+ ) = await capo_codebuild._operations.code_build_20161006.describe_code_coverages.async_describe_code_coverages(
1514
+ req.options, req.input
1515
+ )
1516
+ return AsyncOperationResponse(output=output, response=http_response)
1517
+
1518
+ interceptors_, options_ = self.operation_options(config_overrides)
1519
+ input_: capo_codebuild.types.describe_code_coverages_input.DescribeCodeCoveragesInput = {
1520
+ "report_arn": report_arn
1521
+ }
1522
+ if next_token is not None:
1523
+ input_["next_token"] = next_token
1524
+ if max_results is not None:
1525
+ input_["max_results"] = max_results
1526
+ if sort_order is not None:
1527
+ input_["sort_order"] = sort_order
1528
+ if sort_by is not None:
1529
+ input_["sort_by"] = sort_by
1530
+ if min_line_coverage_percentage is not None:
1531
+ input_["min_line_coverage_percentage"] = min_line_coverage_percentage
1532
+ if max_line_coverage_percentage is not None:
1533
+ input_["max_line_coverage_percentage"] = max_line_coverage_percentage
1534
+
1535
+ response = await aexecute_pipeline(
1536
+ AsyncOperationRequest(input=input_, options=options_),
1537
+ handler=_handler,
1538
+ interceptors=list(interceptors_),
1539
+ )
1540
+ await response.response.aclose()
1541
+ return response.output
1542
+
1543
+ async def iter_describe_code_coverages(
1544
+ self,
1545
+ report_arn: "capo_codebuild.types.non_empty_string.NonEmptyString",
1546
+ *,
1547
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1548
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
1549
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
1550
+ sort_order: Optional[
1551
+ "capo_codebuild.types.sort_order_type.SortOrderType"
1552
+ ] = None,
1553
+ sort_by: Optional[
1554
+ "capo_codebuild.types.report_code_coverage_sort_by_type.ReportCodeCoverageSortByType"
1555
+ ] = None,
1556
+ min_line_coverage_percentage: Optional[
1557
+ "capo_codebuild.types.percentage.Percentage"
1558
+ ] = None,
1559
+ max_line_coverage_percentage: Optional[
1560
+ "capo_codebuild.types.percentage.Percentage"
1561
+ ] = None,
1562
+ ) -> "AsyncIterator[capo_codebuild.types.code_coverage.CodeCoverage]":
1563
+ _token = next_token
1564
+ while True:
1565
+ _response = await self.describe_code_coverages(
1566
+ report_arn,
1567
+ config_overrides=config_overrides,
1568
+ next_token=_token,
1569
+ max_results=max_results,
1570
+ sort_order=sort_order,
1571
+ sort_by=sort_by,
1572
+ min_line_coverage_percentage=min_line_coverage_percentage,
1573
+ max_line_coverage_percentage=max_line_coverage_percentage,
1574
+ )
1575
+ _page = _resolve_path(_response, ("code_coverages",))
1576
+ for _item in _page or []:
1577
+ yield _item
1578
+ _token = _resolve_path(_response, ("next_token",))
1579
+ if not _token:
1580
+ break
1581
+
1582
+ async def describe_test_cases(
1583
+ self,
1584
+ report_arn: "capo_codebuild.types.string.String",
1585
+ *,
1586
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1587
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
1588
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
1589
+ filter: Optional["capo_codebuild.types.test_case_filter.TestCaseFilter"] = None,
1590
+ ) -> "capo_codebuild.types.describe_test_cases_output.DescribeTestCasesOutput":
1591
+ """<p> Returns a list of details about test cases for a report. </p>
1592
+
1593
+ Args:
1594
+ report_arn: <p> The ARN of the report for which test cases are returned. </p>
1595
+ next_token: <p> During a previous call, the maximum number of items that can be returned is the value specified in <code>maxResults</code>. If there more items in the list, then a unique string called a <i>nextToken</i> is returned. To get the next batch of items in the list, call this operation again, adding the next token to the call. To get all of the items in the list, keep calling this operation with each subsequent next token that is returned, until no more next tokens are returned. </p>
1596
+ max_results: <p> The maximum number of paginated test cases returned per response. Use <code>nextToken</code> to iterate pages in the list of returned <code>TestCase</code> objects. The default value is 100. </p>
1597
+ filter: <p> A <code>TestCaseFilter</code> object used to filter the returned reports. </p>
1598
+
1599
+ Raises:
1600
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
1601
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
1602
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
1603
+ """
1604
+
1605
+ async def _handler(
1606
+ req: "AsyncOperationRequest[capo_codebuild.types.describe_test_cases_input.DescribeTestCasesInput]",
1607
+ ) -> AsyncOperationResponse[
1608
+ "capo_codebuild.types.describe_test_cases_output.DescribeTestCasesOutput"
1609
+ ]:
1610
+ import capo_codebuild._operations.code_build_20161006.describe_test_cases
1611
+
1612
+ (
1613
+ output,
1614
+ http_response,
1615
+ ) = await capo_codebuild._operations.code_build_20161006.describe_test_cases.async_describe_test_cases(
1616
+ req.options, req.input
1617
+ )
1618
+ return AsyncOperationResponse(output=output, response=http_response)
1619
+
1620
+ interceptors_, options_ = self.operation_options(config_overrides)
1621
+ input_: capo_codebuild.types.describe_test_cases_input.DescribeTestCasesInput = {
1622
+ "report_arn": report_arn
1623
+ }
1624
+ if next_token is not None:
1625
+ input_["next_token"] = next_token
1626
+ if max_results is not None:
1627
+ input_["max_results"] = max_results
1628
+ if filter is not None:
1629
+ input_["filter"] = filter
1630
+
1631
+ response = await aexecute_pipeline(
1632
+ AsyncOperationRequest(input=input_, options=options_),
1633
+ handler=_handler,
1634
+ interceptors=list(interceptors_),
1635
+ )
1636
+ await response.response.aclose()
1637
+ return response.output
1638
+
1639
+ async def iter_describe_test_cases(
1640
+ self,
1641
+ report_arn: "capo_codebuild.types.string.String",
1642
+ *,
1643
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1644
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
1645
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
1646
+ filter: Optional["capo_codebuild.types.test_case_filter.TestCaseFilter"] = None,
1647
+ ) -> "AsyncIterator[capo_codebuild.types.test_case.TestCase]":
1648
+ _token = next_token
1649
+ while True:
1650
+ _response = await self.describe_test_cases(
1651
+ report_arn,
1652
+ config_overrides=config_overrides,
1653
+ next_token=_token,
1654
+ max_results=max_results,
1655
+ filter=filter,
1656
+ )
1657
+ _page = _resolve_path(_response, ("test_cases",))
1658
+ for _item in _page or []:
1659
+ yield _item
1660
+ _token = _resolve_path(_response, ("next_token",))
1661
+ if not _token:
1662
+ break
1663
+
1664
+ async def get_report_group_trend(
1665
+ self,
1666
+ report_group_arn: "capo_codebuild.types.non_empty_string.NonEmptyString",
1667
+ trend_field: "capo_codebuild.types.report_group_trend_field_type.ReportGroupTrendFieldType",
1668
+ *,
1669
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1670
+ num_of_reports: Optional["capo_codebuild.types.page_size.PageSize"] = None,
1671
+ ) -> "capo_codebuild.types.get_report_group_trend_output.GetReportGroupTrendOutput":
1672
+ """<p>Analyzes and accumulates test report values for the specified test reports.</p>
1673
+
1674
+ Args:
1675
+ report_group_arn: <p>The ARN of the report group that contains the reports to analyze.</p>
1676
+ num_of_reports: <p>The number of reports to analyze. This operation always retrieves the most recent reports.</p> <p>If this parameter is omitted, the most recent 100 reports are analyzed.</p>
1677
+ trend_field: <p>The test report value to accumulate. This must be one of the following values:</p> <dl> <dt>Test reports:</dt> <dd> <dl> <dt>DURATION</dt> <dd> <p>Accumulate the test run times for the specified reports.</p> </dd> <dt>PASS_RATE</dt> <dd> <p>Accumulate the percentage of tests that passed for the specified test reports.</p> </dd> <dt>TOTAL</dt> <dd> <p>Accumulate the total number of tests for the specified test reports.</p> </dd> </dl> </dd> </dl> <dl> <dt>Code coverage reports:</dt> <dd> <dl> <dt>BRANCH_COVERAGE</dt> <dd> <p>Accumulate the branch coverage percentages for the specified test reports.</p> </dd> <dt>BRANCHES_COVERED</dt> <dd> <p>Accumulate the branches covered values for the specified test reports.</p> </dd> <dt>BRANCHES_MISSED</dt> <dd> <p>Accumulate the branches missed values for the specified test reports.</p> </dd> <dt>LINE_COVERAGE</dt> <dd> <p>Accumulate the line coverage percentages for the specified test reports.</p> </dd> <dt>LINES_COVERED</dt> <dd> <p>Accumulate the lines covered values for the specified test reports.</p> </dd> <dt>LINES_MISSED</dt> <dd> <p>Accumulate the lines not covered values for the specified test reports.</p> </dd> </dl> </dd> </dl>
1678
+
1679
+ Raises:
1680
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
1681
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
1682
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
1683
+ """
1684
+
1685
+ async def _handler(
1686
+ req: "AsyncOperationRequest[capo_codebuild.types.get_report_group_trend_input.GetReportGroupTrendInput]",
1687
+ ) -> AsyncOperationResponse[
1688
+ "capo_codebuild.types.get_report_group_trend_output.GetReportGroupTrendOutput"
1689
+ ]:
1690
+ import capo_codebuild._operations.code_build_20161006.get_report_group_trend
1691
+
1692
+ (
1693
+ output,
1694
+ http_response,
1695
+ ) = await capo_codebuild._operations.code_build_20161006.get_report_group_trend.async_get_report_group_trend(
1696
+ req.options, req.input
1697
+ )
1698
+ return AsyncOperationResponse(output=output, response=http_response)
1699
+
1700
+ interceptors_, options_ = self.operation_options(config_overrides)
1701
+ input_: capo_codebuild.types.get_report_group_trend_input.GetReportGroupTrendInput = {
1702
+ "report_group_arn": report_group_arn,
1703
+ "trend_field": trend_field,
1704
+ }
1705
+ if num_of_reports is not None:
1706
+ input_["num_of_reports"] = num_of_reports
1707
+
1708
+ response = await aexecute_pipeline(
1709
+ AsyncOperationRequest(input=input_, options=options_),
1710
+ handler=_handler,
1711
+ interceptors=list(interceptors_),
1712
+ )
1713
+ await response.response.aclose()
1714
+ return response.output
1715
+
1716
+ async def get_resource_policy(
1717
+ self,
1718
+ resource_arn: "capo_codebuild.types.non_empty_string.NonEmptyString",
1719
+ *,
1720
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1721
+ ) -> "capo_codebuild.types.get_resource_policy_output.GetResourcePolicyOutput":
1722
+ """<p> Gets a resource policy that is identified by its resource ARN. </p>
1723
+
1724
+ Args:
1725
+ resource_arn: <p> The ARN of the resource that is associated with the resource policy. </p>
1726
+
1727
+ Raises:
1728
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
1729
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
1730
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
1731
+ """
1732
+
1733
+ async def _handler(
1734
+ req: "AsyncOperationRequest[capo_codebuild.types.get_resource_policy_input.GetResourcePolicyInput]",
1735
+ ) -> AsyncOperationResponse[
1736
+ "capo_codebuild.types.get_resource_policy_output.GetResourcePolicyOutput"
1737
+ ]:
1738
+ import capo_codebuild._operations.code_build_20161006.get_resource_policy
1739
+
1740
+ (
1741
+ output,
1742
+ http_response,
1743
+ ) = await capo_codebuild._operations.code_build_20161006.get_resource_policy.async_get_resource_policy(
1744
+ req.options, req.input
1745
+ )
1746
+ return AsyncOperationResponse(output=output, response=http_response)
1747
+
1748
+ interceptors_, options_ = self.operation_options(config_overrides)
1749
+ input_: capo_codebuild.types.get_resource_policy_input.GetResourcePolicyInput = {
1750
+ "resource_arn": resource_arn
1751
+ }
1752
+
1753
+ response = await aexecute_pipeline(
1754
+ AsyncOperationRequest(input=input_, options=options_),
1755
+ handler=_handler,
1756
+ interceptors=list(interceptors_),
1757
+ )
1758
+ await response.response.aclose()
1759
+ return response.output
1760
+
1761
+ async def import_source_credentials(
1762
+ self,
1763
+ token: "capo_codebuild.types.sensitive_non_empty_string.SensitiveNonEmptyString",
1764
+ server_type: "capo_codebuild.types.server_type.ServerType",
1765
+ auth_type: "capo_codebuild.types.auth_type.AuthType",
1766
+ *,
1767
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1768
+ username: Optional[
1769
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
1770
+ ] = None,
1771
+ should_overwrite: Optional[
1772
+ "capo_codebuild.types.wrapper_boolean.WrapperBoolean"
1773
+ ] = None,
1774
+ ) -> "capo_codebuild.types.import_source_credentials_output.ImportSourceCredentialsOutput":
1775
+ """<p> Imports the source repository credentials for an CodeBuild project that has its source code stored in a GitHub, GitHub Enterprise, GitLab, GitLab Self Managed, or Bitbucket repository. </p>
1776
+
1777
+ Args:
1778
+ username: <p> The Bitbucket username when the <code>authType</code> is BASIC_AUTH. This parameter is not valid for other types of source providers or connections. </p>
1779
+ token: <p> For GitHub or GitHub Enterprise, this is the personal access token. For Bitbucket, this is either the access token or the app password. For the <code>authType</code> CODECONNECTIONS, this is the <code>connectionArn</code>. For the <code>authType</code> SECRETS_MANAGER, this is the <code>secretArn</code>.</p>
1780
+ server_type: <p> The source provider used for this project. </p>
1781
+ auth_type: <p> The type of authentication used to connect to a GitHub, GitHub Enterprise, GitLab, GitLab Self Managed, or Bitbucket repository. An OAUTH connection is not supported by the API and must be created using the CodeBuild console.</p>
1782
+ should_overwrite: <p> Set to <code>false</code> to prevent overwriting the repository source credentials. Set to <code>true</code> to overwrite the repository source credentials. The default value is <code>true</code>. </p>
1783
+
1784
+ Raises:
1785
+ capo_codebuild.errors.account_limit_exceeded_exception.AccountLimitExceededException: <p>An Amazon Web Services service limit was exceeded for the calling Amazon Web Services account.</p>
1786
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
1787
+ capo_codebuild.errors.resource_already_exists_exception.ResourceAlreadyExistsException: <p>The specified Amazon Web Services resource cannot be created, because an Amazon Web Services resource with the same settings already exists.</p>
1788
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
1789
+ """
1790
+
1791
+ async def _handler(
1792
+ req: "AsyncOperationRequest[capo_codebuild.types.import_source_credentials_input.ImportSourceCredentialsInput]",
1793
+ ) -> AsyncOperationResponse[
1794
+ "capo_codebuild.types.import_source_credentials_output.ImportSourceCredentialsOutput"
1795
+ ]:
1796
+ import capo_codebuild._operations.code_build_20161006.import_source_credentials
1797
+
1798
+ (
1799
+ output,
1800
+ http_response,
1801
+ ) = await capo_codebuild._operations.code_build_20161006.import_source_credentials.async_import_source_credentials(
1802
+ req.options, req.input
1803
+ )
1804
+ return AsyncOperationResponse(output=output, response=http_response)
1805
+
1806
+ interceptors_, options_ = self.operation_options(config_overrides)
1807
+ input_: capo_codebuild.types.import_source_credentials_input.ImportSourceCredentialsInput = {
1808
+ "token": token,
1809
+ "server_type": server_type,
1810
+ "auth_type": auth_type,
1811
+ }
1812
+ if username is not None:
1813
+ input_["username"] = username
1814
+ if should_overwrite is not None:
1815
+ input_["should_overwrite"] = should_overwrite
1816
+
1817
+ response = await aexecute_pipeline(
1818
+ AsyncOperationRequest(input=input_, options=options_),
1819
+ handler=_handler,
1820
+ interceptors=list(interceptors_),
1821
+ )
1822
+ await response.response.aclose()
1823
+ return response.output
1824
+
1825
+ async def invalidate_project_cache(
1826
+ self,
1827
+ project_name: "capo_codebuild.types.non_empty_string.NonEmptyString",
1828
+ *,
1829
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1830
+ ) -> "capo_codebuild.types.invalidate_project_cache_output.InvalidateProjectCacheOutput":
1831
+ """<p>Resets the cache for a project.</p>
1832
+
1833
+ Args:
1834
+ project_name: <p>The name of the CodeBuild build project that the cache is reset for.</p>
1835
+
1836
+ Raises:
1837
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
1838
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
1839
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
1840
+ """
1841
+
1842
+ async def _handler(
1843
+ req: "AsyncOperationRequest[capo_codebuild.types.invalidate_project_cache_input.InvalidateProjectCacheInput]",
1844
+ ) -> AsyncOperationResponse[
1845
+ "capo_codebuild.types.invalidate_project_cache_output.InvalidateProjectCacheOutput"
1846
+ ]:
1847
+ import capo_codebuild._operations.code_build_20161006.invalidate_project_cache
1848
+
1849
+ (
1850
+ output,
1851
+ http_response,
1852
+ ) = await capo_codebuild._operations.code_build_20161006.invalidate_project_cache.async_invalidate_project_cache(
1853
+ req.options, req.input
1854
+ )
1855
+ return AsyncOperationResponse(output=output, response=http_response)
1856
+
1857
+ interceptors_, options_ = self.operation_options(config_overrides)
1858
+ input_: capo_codebuild.types.invalidate_project_cache_input.InvalidateProjectCacheInput = {
1859
+ "project_name": project_name
1860
+ }
1861
+
1862
+ response = await aexecute_pipeline(
1863
+ AsyncOperationRequest(input=input_, options=options_),
1864
+ handler=_handler,
1865
+ interceptors=list(interceptors_),
1866
+ )
1867
+ await response.response.aclose()
1868
+ return response.output
1869
+
1870
+ async def list_build_batches(
1871
+ self,
1872
+ *,
1873
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1874
+ filter: Optional[
1875
+ "capo_codebuild.types.build_batch_filter.BuildBatchFilter"
1876
+ ] = None,
1877
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
1878
+ sort_order: Optional[
1879
+ "capo_codebuild.types.sort_order_type.SortOrderType"
1880
+ ] = None,
1881
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
1882
+ ) -> "capo_codebuild.types.list_build_batches_output.ListBuildBatchesOutput":
1883
+ """<p>Retrieves the identifiers of your build batches in the current region.</p>
1884
+
1885
+ Args:
1886
+ filter: <p>A <code>BuildBatchFilter</code> object that specifies the filters for the search.</p>
1887
+ max_results: <p>The maximum number of results to return.</p>
1888
+ sort_order: <p>Specifies the sort order of the returned items. Valid values include:</p> <ul> <li> <p> <code>ASCENDING</code>: List the batch build identifiers in ascending order by identifier.</p> </li> <li> <p> <code>DESCENDING</code>: List the batch build identifiers in descending order by identifier.</p> </li> </ul>
1889
+ next_token: <p>The <code>nextToken</code> value returned from a previous call to <code>ListBuildBatches</code>. This specifies the next item to return. To return the beginning of the list, exclude this parameter.</p>
1890
+
1891
+ Raises:
1892
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
1893
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
1894
+ """
1895
+
1896
+ async def _handler(
1897
+ req: "AsyncOperationRequest[capo_codebuild.types.list_build_batches_input.ListBuildBatchesInput]",
1898
+ ) -> AsyncOperationResponse[
1899
+ "capo_codebuild.types.list_build_batches_output.ListBuildBatchesOutput"
1900
+ ]:
1901
+ import capo_codebuild._operations.code_build_20161006.list_build_batches
1902
+
1903
+ (
1904
+ output,
1905
+ http_response,
1906
+ ) = await capo_codebuild._operations.code_build_20161006.list_build_batches.async_list_build_batches(
1907
+ req.options, req.input
1908
+ )
1909
+ return AsyncOperationResponse(output=output, response=http_response)
1910
+
1911
+ interceptors_, options_ = self.operation_options(config_overrides)
1912
+ input_: capo_codebuild.types.list_build_batches_input.ListBuildBatchesInput = {}
1913
+ if filter is not None:
1914
+ input_["filter"] = filter
1915
+ if max_results is not None:
1916
+ input_["max_results"] = max_results
1917
+ if sort_order is not None:
1918
+ input_["sort_order"] = sort_order
1919
+ if next_token is not None:
1920
+ input_["next_token"] = next_token
1921
+
1922
+ response = await aexecute_pipeline(
1923
+ AsyncOperationRequest(input=input_, options=options_),
1924
+ handler=_handler,
1925
+ interceptors=list(interceptors_),
1926
+ )
1927
+ await response.response.aclose()
1928
+ return response.output
1929
+
1930
+ async def iter_list_build_batches(
1931
+ self,
1932
+ *,
1933
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1934
+ filter: Optional[
1935
+ "capo_codebuild.types.build_batch_filter.BuildBatchFilter"
1936
+ ] = None,
1937
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
1938
+ sort_order: Optional[
1939
+ "capo_codebuild.types.sort_order_type.SortOrderType"
1940
+ ] = None,
1941
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
1942
+ ) -> "AsyncIterator[capo_codebuild.types.non_empty_string.NonEmptyString]":
1943
+ _token = next_token
1944
+ while True:
1945
+ _response = await self.list_build_batches(
1946
+ config_overrides=config_overrides,
1947
+ filter=filter,
1948
+ max_results=max_results,
1949
+ sort_order=sort_order,
1950
+ next_token=_token,
1951
+ )
1952
+ _page = _resolve_path(_response, ("ids",))
1953
+ for _item in _page or []:
1954
+ yield _item
1955
+ _token = _resolve_path(_response, ("next_token",))
1956
+ if not _token:
1957
+ break
1958
+
1959
+ async def list_build_batches_for_project(
1960
+ self,
1961
+ *,
1962
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
1963
+ project_name: Optional[
1964
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
1965
+ ] = None,
1966
+ filter: Optional[
1967
+ "capo_codebuild.types.build_batch_filter.BuildBatchFilter"
1968
+ ] = None,
1969
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
1970
+ sort_order: Optional[
1971
+ "capo_codebuild.types.sort_order_type.SortOrderType"
1972
+ ] = None,
1973
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
1974
+ ) -> "capo_codebuild.types.list_build_batches_for_project_output.ListBuildBatchesForProjectOutput":
1975
+ """<p>Retrieves the identifiers of the build batches for a specific project.</p>
1976
+
1977
+ Args:
1978
+ project_name: <p>The name of the project.</p>
1979
+ filter: <p>A <code>BuildBatchFilter</code> object that specifies the filters for the search.</p>
1980
+ max_results: <p>The maximum number of results to return.</p>
1981
+ sort_order: <p>Specifies the sort order of the returned items. Valid values include:</p> <ul> <li> <p> <code>ASCENDING</code>: List the batch build identifiers in ascending order by identifier.</p> </li> <li> <p> <code>DESCENDING</code>: List the batch build identifiers in descending order by identifier.</p> </li> </ul>
1982
+ next_token: <p>The <code>nextToken</code> value returned from a previous call to <code>ListBuildBatchesForProject</code>. This specifies the next item to return. To return the beginning of the list, exclude this parameter.</p>
1983
+
1984
+ Raises:
1985
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
1986
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
1987
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
1988
+ """
1989
+
1990
+ async def _handler(
1991
+ req: "AsyncOperationRequest[capo_codebuild.types.list_build_batches_for_project_input.ListBuildBatchesForProjectInput]",
1992
+ ) -> AsyncOperationResponse[
1993
+ "capo_codebuild.types.list_build_batches_for_project_output.ListBuildBatchesForProjectOutput"
1994
+ ]:
1995
+ import capo_codebuild._operations.code_build_20161006.list_build_batches_for_project
1996
+
1997
+ (
1998
+ output,
1999
+ http_response,
2000
+ ) = await capo_codebuild._operations.code_build_20161006.list_build_batches_for_project.async_list_build_batches_for_project(
2001
+ req.options, req.input
2002
+ )
2003
+ return AsyncOperationResponse(output=output, response=http_response)
2004
+
2005
+ interceptors_, options_ = self.operation_options(config_overrides)
2006
+ input_: capo_codebuild.types.list_build_batches_for_project_input.ListBuildBatchesForProjectInput = {}
2007
+ if project_name is not None:
2008
+ input_["project_name"] = project_name
2009
+ if filter is not None:
2010
+ input_["filter"] = filter
2011
+ if max_results is not None:
2012
+ input_["max_results"] = max_results
2013
+ if sort_order is not None:
2014
+ input_["sort_order"] = sort_order
2015
+ if next_token is not None:
2016
+ input_["next_token"] = next_token
2017
+
2018
+ response = await aexecute_pipeline(
2019
+ AsyncOperationRequest(input=input_, options=options_),
2020
+ handler=_handler,
2021
+ interceptors=list(interceptors_),
2022
+ )
2023
+ await response.response.aclose()
2024
+ return response.output
2025
+
2026
+ async def iter_list_build_batches_for_project(
2027
+ self,
2028
+ *,
2029
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2030
+ project_name: Optional[
2031
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
2032
+ ] = None,
2033
+ filter: Optional[
2034
+ "capo_codebuild.types.build_batch_filter.BuildBatchFilter"
2035
+ ] = None,
2036
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
2037
+ sort_order: Optional[
2038
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2039
+ ] = None,
2040
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
2041
+ ) -> "AsyncIterator[capo_codebuild.types.non_empty_string.NonEmptyString]":
2042
+ _token = next_token
2043
+ while True:
2044
+ _response = await self.list_build_batches_for_project(
2045
+ config_overrides=config_overrides,
2046
+ project_name=project_name,
2047
+ filter=filter,
2048
+ max_results=max_results,
2049
+ sort_order=sort_order,
2050
+ next_token=_token,
2051
+ )
2052
+ _page = _resolve_path(_response, ("ids",))
2053
+ for _item in _page or []:
2054
+ yield _item
2055
+ _token = _resolve_path(_response, ("next_token",))
2056
+ if not _token:
2057
+ break
2058
+
2059
+ async def list_builds(
2060
+ self,
2061
+ *,
2062
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2063
+ sort_order: Optional[
2064
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2065
+ ] = None,
2066
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
2067
+ ) -> "capo_codebuild.types.list_builds_output.ListBuildsOutput":
2068
+ """<p>Gets a list of build IDs, with each build ID representing a single build.</p>
2069
+
2070
+ Args:
2071
+ sort_order: <p>The order to list build IDs. Valid values include:</p> <ul> <li> <p> <code>ASCENDING</code>: List the build IDs in ascending order by build ID.</p> </li> <li> <p> <code>DESCENDING</code>: List the build IDs in descending order by build ID.</p> </li> </ul>
2072
+ next_token: <p>During a previous call, if there are more than 100 items in the list, only the first 100 items are returned, along with a unique string called a <i>nextToken</i>. To get the next batch of items in the list, call this operation again, adding the next token to the call. To get all of the items in the list, keep calling this operation with each subsequent next token that is returned, until no more next tokens are returned.</p>
2073
+
2074
+ Raises:
2075
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
2076
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
2077
+ """
2078
+
2079
+ async def _handler(
2080
+ req: "AsyncOperationRequest[capo_codebuild.types.list_builds_input.ListBuildsInput]",
2081
+ ) -> AsyncOperationResponse[
2082
+ "capo_codebuild.types.list_builds_output.ListBuildsOutput"
2083
+ ]:
2084
+ import capo_codebuild._operations.code_build_20161006.list_builds
2085
+
2086
+ (
2087
+ output,
2088
+ http_response,
2089
+ ) = await capo_codebuild._operations.code_build_20161006.list_builds.async_list_builds(
2090
+ req.options, req.input
2091
+ )
2092
+ return AsyncOperationResponse(output=output, response=http_response)
2093
+
2094
+ interceptors_, options_ = self.operation_options(config_overrides)
2095
+ input_: capo_codebuild.types.list_builds_input.ListBuildsInput = {}
2096
+ if sort_order is not None:
2097
+ input_["sort_order"] = sort_order
2098
+ if next_token is not None:
2099
+ input_["next_token"] = next_token
2100
+
2101
+ response = await aexecute_pipeline(
2102
+ AsyncOperationRequest(input=input_, options=options_),
2103
+ handler=_handler,
2104
+ interceptors=list(interceptors_),
2105
+ )
2106
+ await response.response.aclose()
2107
+ return response.output
2108
+
2109
+ async def iter_list_builds(
2110
+ self,
2111
+ *,
2112
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2113
+ sort_order: Optional[
2114
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2115
+ ] = None,
2116
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
2117
+ ) -> "AsyncIterator[capo_codebuild.types.non_empty_string.NonEmptyString]":
2118
+ _token = next_token
2119
+ while True:
2120
+ _response = await self.list_builds(
2121
+ config_overrides=config_overrides,
2122
+ sort_order=sort_order,
2123
+ next_token=_token,
2124
+ )
2125
+ _page = _resolve_path(_response, ("ids",))
2126
+ for _item in _page or []:
2127
+ yield _item
2128
+ _token = _resolve_path(_response, ("next_token",))
2129
+ if not _token:
2130
+ break
2131
+
2132
+ async def list_builds_for_project(
2133
+ self,
2134
+ project_name: "capo_codebuild.types.non_empty_string.NonEmptyString",
2135
+ *,
2136
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2137
+ sort_order: Optional[
2138
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2139
+ ] = None,
2140
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
2141
+ ) -> (
2142
+ "capo_codebuild.types.list_builds_for_project_output.ListBuildsForProjectOutput"
2143
+ ):
2144
+ """<p>Gets a list of build identifiers for the specified build project, with each build identifier representing a single build.</p>
2145
+
2146
+ Args:
2147
+ project_name: <p>The name of the CodeBuild project.</p>
2148
+ sort_order: <p>The order to sort the results in. The results are sorted by build number, not the build identifier. If this is not specified, the results are sorted in descending order.</p> <p>Valid values include:</p> <ul> <li> <p> <code>ASCENDING</code>: List the build identifiers in ascending order, by build number.</p> </li> <li> <p> <code>DESCENDING</code>: List the build identifiers in descending order, by build number.</p> </li> </ul> <p>If the project has more than 100 builds, setting the sort order will result in an error. </p>
2149
+ next_token: <p>During a previous call, if there are more than 100 items in the list, only the first 100 items are returned, along with a unique string called a <i>nextToken</i>. To get the next batch of items in the list, call this operation again, adding the next token to the call. To get all of the items in the list, keep calling this operation with each subsequent next token that is returned, until no more next tokens are returned.</p>
2150
+
2151
+ Raises:
2152
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
2153
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
2154
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
2155
+ """
2156
+
2157
+ async def _handler(
2158
+ req: "AsyncOperationRequest[capo_codebuild.types.list_builds_for_project_input.ListBuildsForProjectInput]",
2159
+ ) -> AsyncOperationResponse[
2160
+ "capo_codebuild.types.list_builds_for_project_output.ListBuildsForProjectOutput"
2161
+ ]:
2162
+ import capo_codebuild._operations.code_build_20161006.list_builds_for_project
2163
+
2164
+ (
2165
+ output,
2166
+ http_response,
2167
+ ) = await capo_codebuild._operations.code_build_20161006.list_builds_for_project.async_list_builds_for_project(
2168
+ req.options, req.input
2169
+ )
2170
+ return AsyncOperationResponse(output=output, response=http_response)
2171
+
2172
+ interceptors_, options_ = self.operation_options(config_overrides)
2173
+ input_: capo_codebuild.types.list_builds_for_project_input.ListBuildsForProjectInput = {
2174
+ "project_name": project_name
2175
+ }
2176
+ if sort_order is not None:
2177
+ input_["sort_order"] = sort_order
2178
+ if next_token is not None:
2179
+ input_["next_token"] = next_token
2180
+
2181
+ response = await aexecute_pipeline(
2182
+ AsyncOperationRequest(input=input_, options=options_),
2183
+ handler=_handler,
2184
+ interceptors=list(interceptors_),
2185
+ )
2186
+ await response.response.aclose()
2187
+ return response.output
2188
+
2189
+ async def iter_list_builds_for_project(
2190
+ self,
2191
+ project_name: "capo_codebuild.types.non_empty_string.NonEmptyString",
2192
+ *,
2193
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2194
+ sort_order: Optional[
2195
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2196
+ ] = None,
2197
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
2198
+ ) -> "AsyncIterator[capo_codebuild.types.non_empty_string.NonEmptyString]":
2199
+ _token = next_token
2200
+ while True:
2201
+ _response = await self.list_builds_for_project(
2202
+ project_name,
2203
+ config_overrides=config_overrides,
2204
+ sort_order=sort_order,
2205
+ next_token=_token,
2206
+ )
2207
+ _page = _resolve_path(_response, ("ids",))
2208
+ for _item in _page or []:
2209
+ yield _item
2210
+ _token = _resolve_path(_response, ("next_token",))
2211
+ if not _token:
2212
+ break
2213
+
2214
+ async def list_command_executions_for_sandbox(
2215
+ self,
2216
+ sandbox_id: "capo_codebuild.types.non_empty_string.NonEmptyString",
2217
+ *,
2218
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2219
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
2220
+ sort_order: Optional[
2221
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2222
+ ] = None,
2223
+ next_token: Optional[
2224
+ "capo_codebuild.types.sensitive_string.SensitiveString"
2225
+ ] = None,
2226
+ ) -> "capo_codebuild.types.list_command_executions_for_sandbox_output.ListCommandExecutionsForSandboxOutput":
2227
+ """<p>Gets a list of command executions for a sandbox.</p>
2228
+
2229
+ Args:
2230
+ sandbox_id: <p>A <code>sandboxId</code> or <code>sandboxArn</code>.</p>
2231
+ max_results: <p>The maximum number of sandbox records to be retrieved.</p>
2232
+ sort_order: <p>The order in which sandbox records should be retrieved.</p>
2233
+ next_token: <p>The next token, if any, to get paginated results. You will get this value from previous execution of list sandboxes.</p>
2234
+
2235
+ Raises:
2236
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
2237
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
2238
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
2239
+ """
2240
+
2241
+ async def _handler(
2242
+ req: "AsyncOperationRequest[capo_codebuild.types.list_command_executions_for_sandbox_input.ListCommandExecutionsForSandboxInput]",
2243
+ ) -> AsyncOperationResponse[
2244
+ "capo_codebuild.types.list_command_executions_for_sandbox_output.ListCommandExecutionsForSandboxOutput"
2245
+ ]:
2246
+ import capo_codebuild._operations.code_build_20161006.list_command_executions_for_sandbox
2247
+
2248
+ (
2249
+ output,
2250
+ http_response,
2251
+ ) = await capo_codebuild._operations.code_build_20161006.list_command_executions_for_sandbox.async_list_command_executions_for_sandbox(
2252
+ req.options, req.input
2253
+ )
2254
+ return AsyncOperationResponse(output=output, response=http_response)
2255
+
2256
+ interceptors_, options_ = self.operation_options(config_overrides)
2257
+ input_: capo_codebuild.types.list_command_executions_for_sandbox_input.ListCommandExecutionsForSandboxInput = {
2258
+ "sandbox_id": sandbox_id
2259
+ }
2260
+ if max_results is not None:
2261
+ input_["max_results"] = max_results
2262
+ if sort_order is not None:
2263
+ input_["sort_order"] = sort_order
2264
+ if next_token is not None:
2265
+ input_["next_token"] = next_token
2266
+
2267
+ response = await aexecute_pipeline(
2268
+ AsyncOperationRequest(input=input_, options=options_),
2269
+ handler=_handler,
2270
+ interceptors=list(interceptors_),
2271
+ )
2272
+ await response.response.aclose()
2273
+ return response.output
2274
+
2275
+ async def iter_list_command_executions_for_sandbox(
2276
+ self,
2277
+ sandbox_id: "capo_codebuild.types.non_empty_string.NonEmptyString",
2278
+ *,
2279
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2280
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
2281
+ sort_order: Optional[
2282
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2283
+ ] = None,
2284
+ next_token: Optional[
2285
+ "capo_codebuild.types.sensitive_string.SensitiveString"
2286
+ ] = None,
2287
+ ) -> "AsyncIterator[capo_codebuild.types.command_execution.CommandExecution]":
2288
+ _token = next_token
2289
+ while True:
2290
+ _response = await self.list_command_executions_for_sandbox(
2291
+ sandbox_id,
2292
+ config_overrides=config_overrides,
2293
+ max_results=max_results,
2294
+ sort_order=sort_order,
2295
+ next_token=_token,
2296
+ )
2297
+ _page = _resolve_path(_response, ("command_executions",))
2298
+ for _item in _page or []:
2299
+ yield _item
2300
+ _token = _resolve_path(_response, ("next_token",))
2301
+ if not _token:
2302
+ break
2303
+
2304
+ async def list_curated_environment_images(
2305
+ self, *, config_overrides: Optional[AsyncCodeBuildClientConfig] = None
2306
+ ) -> "capo_codebuild.types.list_curated_environment_images_output.ListCuratedEnvironmentImagesOutput":
2307
+ """<p>Gets information about Docker images that are managed by CodeBuild.</p>
2308
+
2309
+ Raises:
2310
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
2311
+ """
2312
+
2313
+ async def _handler(
2314
+ req: "AsyncOperationRequest[capo_codebuild.types.list_curated_environment_images_input.ListCuratedEnvironmentImagesInput]",
2315
+ ) -> AsyncOperationResponse[
2316
+ "capo_codebuild.types.list_curated_environment_images_output.ListCuratedEnvironmentImagesOutput"
2317
+ ]:
2318
+ import capo_codebuild._operations.code_build_20161006.list_curated_environment_images
2319
+
2320
+ (
2321
+ output,
2322
+ http_response,
2323
+ ) = await capo_codebuild._operations.code_build_20161006.list_curated_environment_images.async_list_curated_environment_images(
2324
+ req.options, req.input
2325
+ )
2326
+ return AsyncOperationResponse(output=output, response=http_response)
2327
+
2328
+ interceptors_, options_ = self.operation_options(config_overrides)
2329
+ input_: capo_codebuild.types.list_curated_environment_images_input.ListCuratedEnvironmentImagesInput = {}
2330
+
2331
+ response = await aexecute_pipeline(
2332
+ AsyncOperationRequest(input=input_, options=options_),
2333
+ handler=_handler,
2334
+ interceptors=list(interceptors_),
2335
+ )
2336
+ await response.response.aclose()
2337
+ return response.output
2338
+
2339
+ async def list_fleets(
2340
+ self,
2341
+ *,
2342
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2343
+ next_token: Optional[
2344
+ "capo_codebuild.types.sensitive_string.SensitiveString"
2345
+ ] = None,
2346
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
2347
+ sort_order: Optional[
2348
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2349
+ ] = None,
2350
+ sort_by: Optional[
2351
+ "capo_codebuild.types.fleet_sort_by_type.FleetSortByType"
2352
+ ] = None,
2353
+ ) -> "capo_codebuild.types.list_fleets_output.ListFleetsOutput":
2354
+ """<p>Gets a list of compute fleet names with each compute fleet name representing a single compute fleet.</p>
2355
+
2356
+ Args:
2357
+ next_token: <p>During a previous call, if there are more than 100 items in the list, only the first 100 items are returned, along with a unique string called a <i>nextToken</i>. To get the next batch of items in the list, call this operation again, adding the next token to the call. To get all of the items in the list, keep calling this operation with each subsequent next token that is returned, until no more next tokens are returned.</p>
2358
+ max_results: <p>The maximum number of paginated compute fleets returned per response. Use <code>nextToken</code> to iterate pages in the list of returned compute fleets.</p>
2359
+ sort_order: <p>The order in which to list compute fleets. Valid values include:</p> <ul> <li> <p> <code>ASCENDING</code>: List in ascending order.</p> </li> <li> <p> <code>DESCENDING</code>: List in descending order.</p> </li> </ul> <p>Use <code>sortBy</code> to specify the criterion to be used to list compute fleet names.</p>
2360
+ sort_by: <p>The criterion to be used to list compute fleet names. Valid values include:</p> <ul> <li> <p> <code>CREATED_TIME</code>: List based on when each compute fleet was created.</p> </li> <li> <p> <code>LAST_MODIFIED_TIME</code>: List based on when information about each compute fleet was last changed.</p> </li> <li> <p> <code>NAME</code>: List based on each compute fleet's name.</p> </li> </ul> <p>Use <code>sortOrder</code> to specify in what order to list the compute fleet names based on the preceding criteria.</p>
2361
+
2362
+ Raises:
2363
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
2364
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
2365
+ """
2366
+
2367
+ async def _handler(
2368
+ req: "AsyncOperationRequest[capo_codebuild.types.list_fleets_input.ListFleetsInput]",
2369
+ ) -> AsyncOperationResponse[
2370
+ "capo_codebuild.types.list_fleets_output.ListFleetsOutput"
2371
+ ]:
2372
+ import capo_codebuild._operations.code_build_20161006.list_fleets
2373
+
2374
+ (
2375
+ output,
2376
+ http_response,
2377
+ ) = await capo_codebuild._operations.code_build_20161006.list_fleets.async_list_fleets(
2378
+ req.options, req.input
2379
+ )
2380
+ return AsyncOperationResponse(output=output, response=http_response)
2381
+
2382
+ interceptors_, options_ = self.operation_options(config_overrides)
2383
+ input_: capo_codebuild.types.list_fleets_input.ListFleetsInput = {}
2384
+ if next_token is not None:
2385
+ input_["next_token"] = next_token
2386
+ if max_results is not None:
2387
+ input_["max_results"] = max_results
2388
+ if sort_order is not None:
2389
+ input_["sort_order"] = sort_order
2390
+ if sort_by is not None:
2391
+ input_["sort_by"] = sort_by
2392
+
2393
+ response = await aexecute_pipeline(
2394
+ AsyncOperationRequest(input=input_, options=options_),
2395
+ handler=_handler,
2396
+ interceptors=list(interceptors_),
2397
+ )
2398
+ await response.response.aclose()
2399
+ return response.output
2400
+
2401
+ async def iter_list_fleets(
2402
+ self,
2403
+ *,
2404
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2405
+ next_token: Optional[
2406
+ "capo_codebuild.types.sensitive_string.SensitiveString"
2407
+ ] = None,
2408
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
2409
+ sort_order: Optional[
2410
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2411
+ ] = None,
2412
+ sort_by: Optional[
2413
+ "capo_codebuild.types.fleet_sort_by_type.FleetSortByType"
2414
+ ] = None,
2415
+ ) -> "AsyncIterator[capo_codebuild.types.list_fleets_output.ListFleetsOutput]":
2416
+ _token = next_token
2417
+ while True:
2418
+ _response = await self.list_fleets(
2419
+ config_overrides=config_overrides,
2420
+ next_token=_token,
2421
+ max_results=max_results,
2422
+ sort_order=sort_order,
2423
+ sort_by=sort_by,
2424
+ )
2425
+ yield _response
2426
+ _token = _resolve_path(_response, ("next_token",))
2427
+ if not _token:
2428
+ break
2429
+
2430
+ async def list_projects(
2431
+ self,
2432
+ *,
2433
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2434
+ sort_by: Optional[
2435
+ "capo_codebuild.types.project_sort_by_type.ProjectSortByType"
2436
+ ] = None,
2437
+ sort_order: Optional[
2438
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2439
+ ] = None,
2440
+ next_token: Optional[
2441
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
2442
+ ] = None,
2443
+ ) -> "capo_codebuild.types.list_projects_output.ListProjectsOutput":
2444
+ """<p>Gets a list of build project names, with each build project name representing a single build project.</p>
2445
+
2446
+ Args:
2447
+ sort_by: <p>The criterion to be used to list build project names. Valid values include:</p> <ul> <li> <p> <code>CREATED_TIME</code>: List based on when each build project was created.</p> </li> <li> <p> <code>LAST_MODIFIED_TIME</code>: List based on when information about each build project was last changed.</p> </li> <li> <p> <code>NAME</code>: List based on each build project's name.</p> </li> </ul> <p>Use <code>sortOrder</code> to specify in what order to list the build project names based on the preceding criteria.</p>
2448
+ sort_order: <p>The order in which to list build projects. Valid values include:</p> <ul> <li> <p> <code>ASCENDING</code>: List in ascending order.</p> </li> <li> <p> <code>DESCENDING</code>: List in descending order.</p> </li> </ul> <p>Use <code>sortBy</code> to specify the criterion to be used to list build project names.</p>
2449
+ next_token: <p>During a previous call, if there are more than 100 items in the list, only the first 100 items are returned, along with a unique string called a <i>nextToken</i>. To get the next batch of items in the list, call this operation again, adding the next token to the call. To get all of the items in the list, keep calling this operation with each subsequent next token that is returned, until no more next tokens are returned.</p>
2450
+
2451
+ Raises:
2452
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
2453
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
2454
+ """
2455
+
2456
+ async def _handler(
2457
+ req: "AsyncOperationRequest[capo_codebuild.types.list_projects_input.ListProjectsInput]",
2458
+ ) -> AsyncOperationResponse[
2459
+ "capo_codebuild.types.list_projects_output.ListProjectsOutput"
2460
+ ]:
2461
+ import capo_codebuild._operations.code_build_20161006.list_projects
2462
+
2463
+ (
2464
+ output,
2465
+ http_response,
2466
+ ) = await capo_codebuild._operations.code_build_20161006.list_projects.async_list_projects(
2467
+ req.options, req.input
2468
+ )
2469
+ return AsyncOperationResponse(output=output, response=http_response)
2470
+
2471
+ interceptors_, options_ = self.operation_options(config_overrides)
2472
+ input_: capo_codebuild.types.list_projects_input.ListProjectsInput = {}
2473
+ if sort_by is not None:
2474
+ input_["sort_by"] = sort_by
2475
+ if sort_order is not None:
2476
+ input_["sort_order"] = sort_order
2477
+ if next_token is not None:
2478
+ input_["next_token"] = next_token
2479
+
2480
+ response = await aexecute_pipeline(
2481
+ AsyncOperationRequest(input=input_, options=options_),
2482
+ handler=_handler,
2483
+ interceptors=list(interceptors_),
2484
+ )
2485
+ await response.response.aclose()
2486
+ return response.output
2487
+
2488
+ async def iter_list_projects(
2489
+ self,
2490
+ *,
2491
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2492
+ sort_by: Optional[
2493
+ "capo_codebuild.types.project_sort_by_type.ProjectSortByType"
2494
+ ] = None,
2495
+ sort_order: Optional[
2496
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2497
+ ] = None,
2498
+ next_token: Optional[
2499
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
2500
+ ] = None,
2501
+ ) -> "AsyncIterator[capo_codebuild.types.non_empty_string.NonEmptyString]":
2502
+ _token = next_token
2503
+ while True:
2504
+ _response = await self.list_projects(
2505
+ config_overrides=config_overrides,
2506
+ sort_by=sort_by,
2507
+ sort_order=sort_order,
2508
+ next_token=_token,
2509
+ )
2510
+ _page = _resolve_path(_response, ("projects",))
2511
+ for _item in _page or []:
2512
+ yield _item
2513
+ _token = _resolve_path(_response, ("next_token",))
2514
+ if not _token:
2515
+ break
2516
+
2517
+ async def list_report_groups(
2518
+ self,
2519
+ *,
2520
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2521
+ sort_order: Optional[
2522
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2523
+ ] = None,
2524
+ sort_by: Optional[
2525
+ "capo_codebuild.types.report_group_sort_by_type.ReportGroupSortByType"
2526
+ ] = None,
2527
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
2528
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
2529
+ ) -> "capo_codebuild.types.list_report_groups_output.ListReportGroupsOutput":
2530
+ """<p> Gets a list ARNs for the report groups in the current Amazon Web Services account. </p>
2531
+
2532
+ Args:
2533
+ sort_order: <p> Used to specify the order to sort the list of returned report groups. Valid values are <code>ASCENDING</code> and <code>DESCENDING</code>. </p>
2534
+ sort_by: <p> The criterion to be used to list build report groups. Valid values include: </p> <ul> <li> <p> <code>CREATED_TIME</code>: List based on when each report group was created.</p> </li> <li> <p> <code>LAST_MODIFIED_TIME</code>: List based on when each report group was last changed.</p> </li> <li> <p> <code>NAME</code>: List based on each report group's name.</p> </li> </ul>
2535
+ next_token: <p> During a previous call, the maximum number of items that can be returned is the value specified in <code>maxResults</code>. If there more items in the list, then a unique string called a <i>nextToken</i> is returned. To get the next batch of items in the list, call this operation again, adding the next token to the call. To get all of the items in the list, keep calling this operation with each subsequent next token that is returned, until no more next tokens are returned. </p>
2536
+ max_results: <p> The maximum number of paginated report groups returned per response. Use <code>nextToken</code> to iterate pages in the list of returned <code>ReportGroup</code> objects. The default value is 100. </p>
2537
+
2538
+ Raises:
2539
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
2540
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
2541
+ """
2542
+
2543
+ async def _handler(
2544
+ req: "AsyncOperationRequest[capo_codebuild.types.list_report_groups_input.ListReportGroupsInput]",
2545
+ ) -> AsyncOperationResponse[
2546
+ "capo_codebuild.types.list_report_groups_output.ListReportGroupsOutput"
2547
+ ]:
2548
+ import capo_codebuild._operations.code_build_20161006.list_report_groups
2549
+
2550
+ (
2551
+ output,
2552
+ http_response,
2553
+ ) = await capo_codebuild._operations.code_build_20161006.list_report_groups.async_list_report_groups(
2554
+ req.options, req.input
2555
+ )
2556
+ return AsyncOperationResponse(output=output, response=http_response)
2557
+
2558
+ interceptors_, options_ = self.operation_options(config_overrides)
2559
+ input_: capo_codebuild.types.list_report_groups_input.ListReportGroupsInput = {}
2560
+ if sort_order is not None:
2561
+ input_["sort_order"] = sort_order
2562
+ if sort_by is not None:
2563
+ input_["sort_by"] = sort_by
2564
+ if next_token is not None:
2565
+ input_["next_token"] = next_token
2566
+ if max_results is not None:
2567
+ input_["max_results"] = max_results
2568
+
2569
+ response = await aexecute_pipeline(
2570
+ AsyncOperationRequest(input=input_, options=options_),
2571
+ handler=_handler,
2572
+ interceptors=list(interceptors_),
2573
+ )
2574
+ await response.response.aclose()
2575
+ return response.output
2576
+
2577
+ async def iter_list_report_groups(
2578
+ self,
2579
+ *,
2580
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2581
+ sort_order: Optional[
2582
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2583
+ ] = None,
2584
+ sort_by: Optional[
2585
+ "capo_codebuild.types.report_group_sort_by_type.ReportGroupSortByType"
2586
+ ] = None,
2587
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
2588
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
2589
+ ) -> "AsyncIterator[capo_codebuild.types.non_empty_string.NonEmptyString]":
2590
+ _token = next_token
2591
+ while True:
2592
+ _response = await self.list_report_groups(
2593
+ config_overrides=config_overrides,
2594
+ sort_order=sort_order,
2595
+ sort_by=sort_by,
2596
+ next_token=_token,
2597
+ max_results=max_results,
2598
+ )
2599
+ _page = _resolve_path(_response, ("report_groups",))
2600
+ for _item in _page or []:
2601
+ yield _item
2602
+ _token = _resolve_path(_response, ("next_token",))
2603
+ if not _token:
2604
+ break
2605
+
2606
+ async def list_reports(
2607
+ self,
2608
+ *,
2609
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2610
+ sort_order: Optional[
2611
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2612
+ ] = None,
2613
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
2614
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
2615
+ filter: Optional["capo_codebuild.types.report_filter.ReportFilter"] = None,
2616
+ ) -> "capo_codebuild.types.list_reports_output.ListReportsOutput":
2617
+ """<p> Returns a list of ARNs for the reports in the current Amazon Web Services account. </p>
2618
+
2619
+ Args:
2620
+ sort_order: <p> Specifies the sort order for the list of returned reports. Valid values are: </p> <ul> <li> <p> <code>ASCENDING</code>: return reports in chronological order based on their creation date. </p> </li> <li> <p> <code>DESCENDING</code>: return reports in the reverse chronological order based on their creation date. </p> </li> </ul>
2621
+ next_token: <p> During a previous call, the maximum number of items that can be returned is the value specified in <code>maxResults</code>. If there more items in the list, then a unique string called a <i>nextToken</i> is returned. To get the next batch of items in the list, call this operation again, adding the next token to the call. To get all of the items in the list, keep calling this operation with each subsequent next token that is returned, until no more next tokens are returned. </p>
2622
+ max_results: <p> The maximum number of paginated reports returned per response. Use <code>nextToken</code> to iterate pages in the list of returned <code>Report</code> objects. The default value is 100. </p>
2623
+ filter: <p> A <code>ReportFilter</code> object used to filter the returned reports. </p>
2624
+
2625
+ Raises:
2626
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
2627
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
2628
+ """
2629
+
2630
+ async def _handler(
2631
+ req: "AsyncOperationRequest[capo_codebuild.types.list_reports_input.ListReportsInput]",
2632
+ ) -> AsyncOperationResponse[
2633
+ "capo_codebuild.types.list_reports_output.ListReportsOutput"
2634
+ ]:
2635
+ import capo_codebuild._operations.code_build_20161006.list_reports
2636
+
2637
+ (
2638
+ output,
2639
+ http_response,
2640
+ ) = await capo_codebuild._operations.code_build_20161006.list_reports.async_list_reports(
2641
+ req.options, req.input
2642
+ )
2643
+ return AsyncOperationResponse(output=output, response=http_response)
2644
+
2645
+ interceptors_, options_ = self.operation_options(config_overrides)
2646
+ input_: capo_codebuild.types.list_reports_input.ListReportsInput = {}
2647
+ if sort_order is not None:
2648
+ input_["sort_order"] = sort_order
2649
+ if next_token is not None:
2650
+ input_["next_token"] = next_token
2651
+ if max_results is not None:
2652
+ input_["max_results"] = max_results
2653
+ if filter is not None:
2654
+ input_["filter"] = filter
2655
+
2656
+ response = await aexecute_pipeline(
2657
+ AsyncOperationRequest(input=input_, options=options_),
2658
+ handler=_handler,
2659
+ interceptors=list(interceptors_),
2660
+ )
2661
+ await response.response.aclose()
2662
+ return response.output
2663
+
2664
+ async def iter_list_reports(
2665
+ self,
2666
+ *,
2667
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2668
+ sort_order: Optional[
2669
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2670
+ ] = None,
2671
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
2672
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
2673
+ filter: Optional["capo_codebuild.types.report_filter.ReportFilter"] = None,
2674
+ ) -> "AsyncIterator[capo_codebuild.types.non_empty_string.NonEmptyString]":
2675
+ _token = next_token
2676
+ while True:
2677
+ _response = await self.list_reports(
2678
+ config_overrides=config_overrides,
2679
+ sort_order=sort_order,
2680
+ next_token=_token,
2681
+ max_results=max_results,
2682
+ filter=filter,
2683
+ )
2684
+ _page = _resolve_path(_response, ("reports",))
2685
+ for _item in _page or []:
2686
+ yield _item
2687
+ _token = _resolve_path(_response, ("next_token",))
2688
+ if not _token:
2689
+ break
2690
+
2691
+ async def list_reports_for_report_group(
2692
+ self,
2693
+ report_group_arn: "capo_codebuild.types.string.String",
2694
+ *,
2695
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2696
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
2697
+ sort_order: Optional[
2698
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2699
+ ] = None,
2700
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
2701
+ filter: Optional["capo_codebuild.types.report_filter.ReportFilter"] = None,
2702
+ ) -> "capo_codebuild.types.list_reports_for_report_group_output.ListReportsForReportGroupOutput":
2703
+ """<p> Returns a list of ARNs for the reports that belong to a <code>ReportGroup</code>. </p>
2704
+
2705
+ Args:
2706
+ report_group_arn: <p> The ARN of the report group for which you want to return report ARNs. </p>
2707
+ next_token: <p> During a previous call, the maximum number of items that can be returned is the value specified in <code>maxResults</code>. If there more items in the list, then a unique string called a <i>nextToken</i> is returned. To get the next batch of items in the list, call this operation again, adding the next token to the call. To get all of the items in the list, keep calling this operation with each subsequent next token that is returned, until no more next tokens are returned. </p>
2708
+ sort_order: <p> Use to specify whether the results are returned in ascending or descending order. </p>
2709
+ max_results: <p> The maximum number of paginated reports in this report group returned per response. Use <code>nextToken</code> to iterate pages in the list of returned <code>Report</code> objects. The default value is 100. </p>
2710
+ filter: <p> A <code>ReportFilter</code> object used to filter the returned reports. </p>
2711
+
2712
+ Raises:
2713
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
2714
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
2715
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
2716
+ """
2717
+
2718
+ async def _handler(
2719
+ req: "AsyncOperationRequest[capo_codebuild.types.list_reports_for_report_group_input.ListReportsForReportGroupInput]",
2720
+ ) -> AsyncOperationResponse[
2721
+ "capo_codebuild.types.list_reports_for_report_group_output.ListReportsForReportGroupOutput"
2722
+ ]:
2723
+ import capo_codebuild._operations.code_build_20161006.list_reports_for_report_group
2724
+
2725
+ (
2726
+ output,
2727
+ http_response,
2728
+ ) = await capo_codebuild._operations.code_build_20161006.list_reports_for_report_group.async_list_reports_for_report_group(
2729
+ req.options, req.input
2730
+ )
2731
+ return AsyncOperationResponse(output=output, response=http_response)
2732
+
2733
+ interceptors_, options_ = self.operation_options(config_overrides)
2734
+ input_: capo_codebuild.types.list_reports_for_report_group_input.ListReportsForReportGroupInput = {
2735
+ "report_group_arn": report_group_arn
2736
+ }
2737
+ if next_token is not None:
2738
+ input_["next_token"] = next_token
2739
+ if sort_order is not None:
2740
+ input_["sort_order"] = sort_order
2741
+ if max_results is not None:
2742
+ input_["max_results"] = max_results
2743
+ if filter is not None:
2744
+ input_["filter"] = filter
2745
+
2746
+ response = await aexecute_pipeline(
2747
+ AsyncOperationRequest(input=input_, options=options_),
2748
+ handler=_handler,
2749
+ interceptors=list(interceptors_),
2750
+ )
2751
+ await response.response.aclose()
2752
+ return response.output
2753
+
2754
+ async def iter_list_reports_for_report_group(
2755
+ self,
2756
+ report_group_arn: "capo_codebuild.types.string.String",
2757
+ *,
2758
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2759
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
2760
+ sort_order: Optional[
2761
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2762
+ ] = None,
2763
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
2764
+ filter: Optional["capo_codebuild.types.report_filter.ReportFilter"] = None,
2765
+ ) -> "AsyncIterator[capo_codebuild.types.non_empty_string.NonEmptyString]":
2766
+ _token = next_token
2767
+ while True:
2768
+ _response = await self.list_reports_for_report_group(
2769
+ report_group_arn,
2770
+ config_overrides=config_overrides,
2771
+ next_token=_token,
2772
+ sort_order=sort_order,
2773
+ max_results=max_results,
2774
+ filter=filter,
2775
+ )
2776
+ _page = _resolve_path(_response, ("reports",))
2777
+ for _item in _page or []:
2778
+ yield _item
2779
+ _token = _resolve_path(_response, ("next_token",))
2780
+ if not _token:
2781
+ break
2782
+
2783
+ async def list_sandboxes(
2784
+ self,
2785
+ *,
2786
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2787
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
2788
+ sort_order: Optional[
2789
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2790
+ ] = None,
2791
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
2792
+ ) -> "capo_codebuild.types.list_sandboxes_output.ListSandboxesOutput":
2793
+ """<p>Gets a list of sandboxes.</p>
2794
+
2795
+ Args:
2796
+ max_results: <p>The maximum number of sandbox records to be retrieved.</p>
2797
+ sort_order: <p>The order in which sandbox records should be retrieved.</p>
2798
+ next_token: <p>The next token, if any, to get paginated results. You will get this value from previous execution of list sandboxes.</p>
2799
+
2800
+ Raises:
2801
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
2802
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
2803
+ """
2804
+
2805
+ async def _handler(
2806
+ req: "AsyncOperationRequest[capo_codebuild.types.list_sandboxes_input.ListSandboxesInput]",
2807
+ ) -> AsyncOperationResponse[
2808
+ "capo_codebuild.types.list_sandboxes_output.ListSandboxesOutput"
2809
+ ]:
2810
+ import capo_codebuild._operations.code_build_20161006.list_sandboxes
2811
+
2812
+ (
2813
+ output,
2814
+ http_response,
2815
+ ) = await capo_codebuild._operations.code_build_20161006.list_sandboxes.async_list_sandboxes(
2816
+ req.options, req.input
2817
+ )
2818
+ return AsyncOperationResponse(output=output, response=http_response)
2819
+
2820
+ interceptors_, options_ = self.operation_options(config_overrides)
2821
+ input_: capo_codebuild.types.list_sandboxes_input.ListSandboxesInput = {}
2822
+ if max_results is not None:
2823
+ input_["max_results"] = max_results
2824
+ if sort_order is not None:
2825
+ input_["sort_order"] = sort_order
2826
+ if next_token is not None:
2827
+ input_["next_token"] = next_token
2828
+
2829
+ response = await aexecute_pipeline(
2830
+ AsyncOperationRequest(input=input_, options=options_),
2831
+ handler=_handler,
2832
+ interceptors=list(interceptors_),
2833
+ )
2834
+ await response.response.aclose()
2835
+ return response.output
2836
+
2837
+ async def iter_list_sandboxes(
2838
+ self,
2839
+ *,
2840
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2841
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
2842
+ sort_order: Optional[
2843
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2844
+ ] = None,
2845
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
2846
+ ) -> "AsyncIterator[capo_codebuild.types.non_empty_string.NonEmptyString]":
2847
+ _token = next_token
2848
+ while True:
2849
+ _response = await self.list_sandboxes(
2850
+ config_overrides=config_overrides,
2851
+ max_results=max_results,
2852
+ sort_order=sort_order,
2853
+ next_token=_token,
2854
+ )
2855
+ _page = _resolve_path(_response, ("ids",))
2856
+ for _item in _page or []:
2857
+ yield _item
2858
+ _token = _resolve_path(_response, ("next_token",))
2859
+ if not _token:
2860
+ break
2861
+
2862
+ async def list_sandboxes_for_project(
2863
+ self,
2864
+ project_name: "capo_codebuild.types.non_empty_string.NonEmptyString",
2865
+ *,
2866
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2867
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
2868
+ sort_order: Optional[
2869
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2870
+ ] = None,
2871
+ next_token: Optional[
2872
+ "capo_codebuild.types.sensitive_string.SensitiveString"
2873
+ ] = None,
2874
+ ) -> "capo_codebuild.types.list_sandboxes_for_project_output.ListSandboxesForProjectOutput":
2875
+ """<p>Gets a list of sandboxes for a given project.</p>
2876
+
2877
+ Args:
2878
+ project_name: <p>The CodeBuild project name.</p>
2879
+ max_results: <p>The maximum number of sandbox records to be retrieved.</p>
2880
+ sort_order: <p>The order in which sandbox records should be retrieved.</p>
2881
+ next_token: <p>The next token, if any, to get paginated results. You will get this value from previous execution of list sandboxes.</p>
2882
+
2883
+ Raises:
2884
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
2885
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
2886
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
2887
+ """
2888
+
2889
+ async def _handler(
2890
+ req: "AsyncOperationRequest[capo_codebuild.types.list_sandboxes_for_project_input.ListSandboxesForProjectInput]",
2891
+ ) -> AsyncOperationResponse[
2892
+ "capo_codebuild.types.list_sandboxes_for_project_output.ListSandboxesForProjectOutput"
2893
+ ]:
2894
+ import capo_codebuild._operations.code_build_20161006.list_sandboxes_for_project
2895
+
2896
+ (
2897
+ output,
2898
+ http_response,
2899
+ ) = await capo_codebuild._operations.code_build_20161006.list_sandboxes_for_project.async_list_sandboxes_for_project(
2900
+ req.options, req.input
2901
+ )
2902
+ return AsyncOperationResponse(output=output, response=http_response)
2903
+
2904
+ interceptors_, options_ = self.operation_options(config_overrides)
2905
+ input_: capo_codebuild.types.list_sandboxes_for_project_input.ListSandboxesForProjectInput = {
2906
+ "project_name": project_name
2907
+ }
2908
+ if max_results is not None:
2909
+ input_["max_results"] = max_results
2910
+ if sort_order is not None:
2911
+ input_["sort_order"] = sort_order
2912
+ if next_token is not None:
2913
+ input_["next_token"] = next_token
2914
+
2915
+ response = await aexecute_pipeline(
2916
+ AsyncOperationRequest(input=input_, options=options_),
2917
+ handler=_handler,
2918
+ interceptors=list(interceptors_),
2919
+ )
2920
+ await response.response.aclose()
2921
+ return response.output
2922
+
2923
+ async def iter_list_sandboxes_for_project(
2924
+ self,
2925
+ project_name: "capo_codebuild.types.non_empty_string.NonEmptyString",
2926
+ *,
2927
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2928
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
2929
+ sort_order: Optional[
2930
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2931
+ ] = None,
2932
+ next_token: Optional[
2933
+ "capo_codebuild.types.sensitive_string.SensitiveString"
2934
+ ] = None,
2935
+ ) -> "AsyncIterator[capo_codebuild.types.non_empty_string.NonEmptyString]":
2936
+ _token = next_token
2937
+ while True:
2938
+ _response = await self.list_sandboxes_for_project(
2939
+ project_name,
2940
+ config_overrides=config_overrides,
2941
+ max_results=max_results,
2942
+ sort_order=sort_order,
2943
+ next_token=_token,
2944
+ )
2945
+ _page = _resolve_path(_response, ("ids",))
2946
+ for _item in _page or []:
2947
+ yield _item
2948
+ _token = _resolve_path(_response, ("next_token",))
2949
+ if not _token:
2950
+ break
2951
+
2952
+ async def list_shared_projects(
2953
+ self,
2954
+ *,
2955
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
2956
+ sort_by: Optional[
2957
+ "capo_codebuild.types.shared_resource_sort_by_type.SharedResourceSortByType"
2958
+ ] = None,
2959
+ sort_order: Optional[
2960
+ "capo_codebuild.types.sort_order_type.SortOrderType"
2961
+ ] = None,
2962
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
2963
+ next_token: Optional[
2964
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
2965
+ ] = None,
2966
+ ) -> "capo_codebuild.types.list_shared_projects_output.ListSharedProjectsOutput":
2967
+ """<p> Gets a list of projects that are shared with other Amazon Web Services accounts or users. </p>
2968
+
2969
+ Args:
2970
+ sort_by: <p> The criterion to be used to list build projects shared with the current Amazon Web Services account or user. Valid values include: </p> <ul> <li> <p> <code>ARN</code>: List based on the ARN. </p> </li> <li> <p> <code>MODIFIED_TIME</code>: List based on when information about the shared project was last changed. </p> </li> </ul>
2971
+ sort_order: <p>The order in which to list shared build projects. Valid values include:</p> <ul> <li> <p> <code>ASCENDING</code>: List in ascending order.</p> </li> <li> <p> <code>DESCENDING</code>: List in descending order.</p> </li> </ul>
2972
+ max_results: <p> The maximum number of paginated shared build projects returned per response. Use <code>nextToken</code> to iterate pages in the list of returned <code>Project</code> objects. The default value is 100. </p>
2973
+ next_token: <p> During a previous call, the maximum number of items that can be returned is the value specified in <code>maxResults</code>. If there more items in the list, then a unique string called a <i>nextToken</i> is returned. To get the next batch of items in the list, call this operation again, adding the next token to the call. To get all of the items in the list, keep calling this operation with each subsequent next token that is returned, until no more next tokens are returned. </p>
2974
+
2975
+ Raises:
2976
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
2977
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
2978
+ """
2979
+
2980
+ async def _handler(
2981
+ req: "AsyncOperationRequest[capo_codebuild.types.list_shared_projects_input.ListSharedProjectsInput]",
2982
+ ) -> AsyncOperationResponse[
2983
+ "capo_codebuild.types.list_shared_projects_output.ListSharedProjectsOutput"
2984
+ ]:
2985
+ import capo_codebuild._operations.code_build_20161006.list_shared_projects
2986
+
2987
+ (
2988
+ output,
2989
+ http_response,
2990
+ ) = await capo_codebuild._operations.code_build_20161006.list_shared_projects.async_list_shared_projects(
2991
+ req.options, req.input
2992
+ )
2993
+ return AsyncOperationResponse(output=output, response=http_response)
2994
+
2995
+ interceptors_, options_ = self.operation_options(config_overrides)
2996
+ input_: capo_codebuild.types.list_shared_projects_input.ListSharedProjectsInput = {}
2997
+ if sort_by is not None:
2998
+ input_["sort_by"] = sort_by
2999
+ if sort_order is not None:
3000
+ input_["sort_order"] = sort_order
3001
+ if max_results is not None:
3002
+ input_["max_results"] = max_results
3003
+ if next_token is not None:
3004
+ input_["next_token"] = next_token
3005
+
3006
+ response = await aexecute_pipeline(
3007
+ AsyncOperationRequest(input=input_, options=options_),
3008
+ handler=_handler,
3009
+ interceptors=list(interceptors_),
3010
+ )
3011
+ await response.response.aclose()
3012
+ return response.output
3013
+
3014
+ async def iter_list_shared_projects(
3015
+ self,
3016
+ *,
3017
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
3018
+ sort_by: Optional[
3019
+ "capo_codebuild.types.shared_resource_sort_by_type.SharedResourceSortByType"
3020
+ ] = None,
3021
+ sort_order: Optional[
3022
+ "capo_codebuild.types.sort_order_type.SortOrderType"
3023
+ ] = None,
3024
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
3025
+ next_token: Optional[
3026
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
3027
+ ] = None,
3028
+ ) -> "AsyncIterator[capo_codebuild.types.non_empty_string.NonEmptyString]":
3029
+ _token = next_token
3030
+ while True:
3031
+ _response = await self.list_shared_projects(
3032
+ config_overrides=config_overrides,
3033
+ sort_by=sort_by,
3034
+ sort_order=sort_order,
3035
+ max_results=max_results,
3036
+ next_token=_token,
3037
+ )
3038
+ _page = _resolve_path(_response, ("projects",))
3039
+ for _item in _page or []:
3040
+ yield _item
3041
+ _token = _resolve_path(_response, ("next_token",))
3042
+ if not _token:
3043
+ break
3044
+
3045
+ async def list_shared_report_groups(
3046
+ self,
3047
+ *,
3048
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
3049
+ sort_order: Optional[
3050
+ "capo_codebuild.types.sort_order_type.SortOrderType"
3051
+ ] = None,
3052
+ sort_by: Optional[
3053
+ "capo_codebuild.types.shared_resource_sort_by_type.SharedResourceSortByType"
3054
+ ] = None,
3055
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
3056
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
3057
+ ) -> "capo_codebuild.types.list_shared_report_groups_output.ListSharedReportGroupsOutput":
3058
+ """<p> Gets a list of report groups that are shared with other Amazon Web Services accounts or users. </p>
3059
+
3060
+ Args:
3061
+ sort_order: <p>The order in which to list shared report groups. Valid values include:</p> <ul> <li> <p> <code>ASCENDING</code>: List in ascending order.</p> </li> <li> <p> <code>DESCENDING</code>: List in descending order.</p> </li> </ul>
3062
+ sort_by: <p> The criterion to be used to list report groups shared with the current Amazon Web Services account or user. Valid values include: </p> <ul> <li> <p> <code>ARN</code>: List based on the ARN. </p> </li> <li> <p> <code>MODIFIED_TIME</code>: List based on when information about the shared report group was last changed. </p> </li> </ul>
3063
+ next_token: <p> During a previous call, the maximum number of items that can be returned is the value specified in <code>maxResults</code>. If there more items in the list, then a unique string called a <i>nextToken</i> is returned. To get the next batch of items in the list, call this operation again, adding the next token to the call. To get all of the items in the list, keep calling this operation with each subsequent next token that is returned, until no more next tokens are returned. </p>
3064
+ max_results: <p> The maximum number of paginated shared report groups per response. Use <code>nextToken</code> to iterate pages in the list of returned <code>ReportGroup</code> objects. The default value is 100. </p>
3065
+
3066
+ Raises:
3067
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
3068
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
3069
+ """
3070
+
3071
+ async def _handler(
3072
+ req: "AsyncOperationRequest[capo_codebuild.types.list_shared_report_groups_input.ListSharedReportGroupsInput]",
3073
+ ) -> AsyncOperationResponse[
3074
+ "capo_codebuild.types.list_shared_report_groups_output.ListSharedReportGroupsOutput"
3075
+ ]:
3076
+ import capo_codebuild._operations.code_build_20161006.list_shared_report_groups
3077
+
3078
+ (
3079
+ output,
3080
+ http_response,
3081
+ ) = await capo_codebuild._operations.code_build_20161006.list_shared_report_groups.async_list_shared_report_groups(
3082
+ req.options, req.input
3083
+ )
3084
+ return AsyncOperationResponse(output=output, response=http_response)
3085
+
3086
+ interceptors_, options_ = self.operation_options(config_overrides)
3087
+ input_: capo_codebuild.types.list_shared_report_groups_input.ListSharedReportGroupsInput = {}
3088
+ if sort_order is not None:
3089
+ input_["sort_order"] = sort_order
3090
+ if sort_by is not None:
3091
+ input_["sort_by"] = sort_by
3092
+ if next_token is not None:
3093
+ input_["next_token"] = next_token
3094
+ if max_results is not None:
3095
+ input_["max_results"] = max_results
3096
+
3097
+ response = await aexecute_pipeline(
3098
+ AsyncOperationRequest(input=input_, options=options_),
3099
+ handler=_handler,
3100
+ interceptors=list(interceptors_),
3101
+ )
3102
+ await response.response.aclose()
3103
+ return response.output
3104
+
3105
+ async def iter_list_shared_report_groups(
3106
+ self,
3107
+ *,
3108
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
3109
+ sort_order: Optional[
3110
+ "capo_codebuild.types.sort_order_type.SortOrderType"
3111
+ ] = None,
3112
+ sort_by: Optional[
3113
+ "capo_codebuild.types.shared_resource_sort_by_type.SharedResourceSortByType"
3114
+ ] = None,
3115
+ next_token: Optional["capo_codebuild.types.string.String"] = None,
3116
+ max_results: Optional["capo_codebuild.types.page_size.PageSize"] = None,
3117
+ ) -> "AsyncIterator[capo_codebuild.types.non_empty_string.NonEmptyString]":
3118
+ _token = next_token
3119
+ while True:
3120
+ _response = await self.list_shared_report_groups(
3121
+ config_overrides=config_overrides,
3122
+ sort_order=sort_order,
3123
+ sort_by=sort_by,
3124
+ next_token=_token,
3125
+ max_results=max_results,
3126
+ )
3127
+ _page = _resolve_path(_response, ("report_groups",))
3128
+ for _item in _page or []:
3129
+ yield _item
3130
+ _token = _resolve_path(_response, ("next_token",))
3131
+ if not _token:
3132
+ break
3133
+
3134
+ async def list_source_credentials(
3135
+ self, *, config_overrides: Optional[AsyncCodeBuildClientConfig] = None
3136
+ ) -> "capo_codebuild.types.list_source_credentials_output.ListSourceCredentialsOutput":
3137
+ """<p> Returns a list of <code>SourceCredentialsInfo</code> objects. </p>
3138
+
3139
+ Raises:
3140
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
3141
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
3142
+ """
3143
+
3144
+ async def _handler(
3145
+ req: "AsyncOperationRequest[capo_codebuild.types.list_source_credentials_input.ListSourceCredentialsInput]",
3146
+ ) -> AsyncOperationResponse[
3147
+ "capo_codebuild.types.list_source_credentials_output.ListSourceCredentialsOutput"
3148
+ ]:
3149
+ import capo_codebuild._operations.code_build_20161006.list_source_credentials
3150
+
3151
+ (
3152
+ output,
3153
+ http_response,
3154
+ ) = await capo_codebuild._operations.code_build_20161006.list_source_credentials.async_list_source_credentials(
3155
+ req.options, req.input
3156
+ )
3157
+ return AsyncOperationResponse(output=output, response=http_response)
3158
+
3159
+ interceptors_, options_ = self.operation_options(config_overrides)
3160
+ input_: capo_codebuild.types.list_source_credentials_input.ListSourceCredentialsInput = {}
3161
+
3162
+ response = await aexecute_pipeline(
3163
+ AsyncOperationRequest(input=input_, options=options_),
3164
+ handler=_handler,
3165
+ interceptors=list(interceptors_),
3166
+ )
3167
+ await response.response.aclose()
3168
+ return response.output
3169
+
3170
+ async def put_resource_policy(
3171
+ self,
3172
+ policy: "capo_codebuild.types.non_empty_string.NonEmptyString",
3173
+ resource_arn: "capo_codebuild.types.non_empty_string.NonEmptyString",
3174
+ *,
3175
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
3176
+ ) -> "capo_codebuild.types.put_resource_policy_output.PutResourcePolicyOutput":
3177
+ r"""<p> Stores a resource policy for the ARN of a <code>Project</code> or <code>ReportGroup</code> object. </p>
3178
+
3179
+ Args:
3180
+ policy: <p> A JSON-formatted resource policy. For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/project-sharing.html#project-sharing-share\">Sharing a Project</a> and <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/report-groups-sharing.html#report-groups-sharing-share\">Sharing a Report Group</a> in the <i>CodeBuild User Guide</i>. </p>
3181
+ resource_arn: <p> The ARN of the <code>Project</code> or <code>ReportGroup</code> resource you want to associate with a resource policy. </p>
3182
+
3183
+ Raises:
3184
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
3185
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
3186
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
3187
+ """
3188
+
3189
+ async def _handler(
3190
+ req: "AsyncOperationRequest[capo_codebuild.types.put_resource_policy_input.PutResourcePolicyInput]",
3191
+ ) -> AsyncOperationResponse[
3192
+ "capo_codebuild.types.put_resource_policy_output.PutResourcePolicyOutput"
3193
+ ]:
3194
+ import capo_codebuild._operations.code_build_20161006.put_resource_policy
3195
+
3196
+ (
3197
+ output,
3198
+ http_response,
3199
+ ) = await capo_codebuild._operations.code_build_20161006.put_resource_policy.async_put_resource_policy(
3200
+ req.options, req.input
3201
+ )
3202
+ return AsyncOperationResponse(output=output, response=http_response)
3203
+
3204
+ interceptors_, options_ = self.operation_options(config_overrides)
3205
+ input_: capo_codebuild.types.put_resource_policy_input.PutResourcePolicyInput = {
3206
+ "policy": policy,
3207
+ "resource_arn": resource_arn,
3208
+ }
3209
+
3210
+ response = await aexecute_pipeline(
3211
+ AsyncOperationRequest(input=input_, options=options_),
3212
+ handler=_handler,
3213
+ interceptors=list(interceptors_),
3214
+ )
3215
+ await response.response.aclose()
3216
+ return response.output
3217
+
3218
+ async def retry_build(
3219
+ self,
3220
+ *,
3221
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
3222
+ id: Optional["capo_codebuild.types.non_empty_string.NonEmptyString"] = None,
3223
+ idempotency_token: Optional["capo_codebuild.types.string.String"] = None,
3224
+ ) -> "capo_codebuild.types.retry_build_output.RetryBuildOutput":
3225
+ """<p>Restarts a build.</p>
3226
+
3227
+ Args:
3228
+ id: <p>Specifies the identifier of the build to restart.</p>
3229
+ idempotency_token: <p>A unique, case sensitive identifier you provide to ensure the idempotency of the <code>RetryBuild</code> request. The token is included in the <code>RetryBuild</code> request and is valid for five minutes. If you repeat the <code>RetryBuild</code> request with the same token, but change a parameter, CodeBuild returns a parameter mismatch error.</p>
3230
+
3231
+ Raises:
3232
+ capo_codebuild.errors.account_limit_exceeded_exception.AccountLimitExceededException: <p>An Amazon Web Services service limit was exceeded for the calling Amazon Web Services account.</p>
3233
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
3234
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
3235
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
3236
+ """
3237
+
3238
+ async def _handler(
3239
+ req: "AsyncOperationRequest[capo_codebuild.types.retry_build_input.RetryBuildInput]",
3240
+ ) -> AsyncOperationResponse[
3241
+ "capo_codebuild.types.retry_build_output.RetryBuildOutput"
3242
+ ]:
3243
+ import capo_codebuild._operations.code_build_20161006.retry_build
3244
+
3245
+ (
3246
+ output,
3247
+ http_response,
3248
+ ) = await capo_codebuild._operations.code_build_20161006.retry_build.async_retry_build(
3249
+ req.options, req.input
3250
+ )
3251
+ return AsyncOperationResponse(output=output, response=http_response)
3252
+
3253
+ interceptors_, options_ = self.operation_options(config_overrides)
3254
+ input_: capo_codebuild.types.retry_build_input.RetryBuildInput = {}
3255
+ if id is not None:
3256
+ input_["id"] = id
3257
+ if idempotency_token is not None:
3258
+ input_["idempotency_token"] = idempotency_token
3259
+
3260
+ response = await aexecute_pipeline(
3261
+ AsyncOperationRequest(input=input_, options=options_),
3262
+ handler=_handler,
3263
+ interceptors=list(interceptors_),
3264
+ )
3265
+ await response.response.aclose()
3266
+ return response.output
3267
+
3268
+ async def retry_build_batch(
3269
+ self,
3270
+ *,
3271
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
3272
+ id: Optional["capo_codebuild.types.non_empty_string.NonEmptyString"] = None,
3273
+ idempotency_token: Optional["capo_codebuild.types.string.String"] = None,
3274
+ retry_type: Optional[
3275
+ "capo_codebuild.types.retry_build_batch_type.RetryBuildBatchType"
3276
+ ] = None,
3277
+ ) -> "capo_codebuild.types.retry_build_batch_output.RetryBuildBatchOutput":
3278
+ """<p>Restarts a failed batch build. Only batch builds that have failed can be retried.</p>
3279
+
3280
+ Args:
3281
+ id: <p>Specifies the identifier of the batch build to restart.</p>
3282
+ idempotency_token: <p>A unique, case sensitive identifier you provide to ensure the idempotency of the <code>RetryBuildBatch</code> request. The token is included in the <code>RetryBuildBatch</code> request and is valid for five minutes. If you repeat the <code>RetryBuildBatch</code> request with the same token, but change a parameter, CodeBuild returns a parameter mismatch error.</p>
3283
+ retry_type: <p>Specifies the type of retry to perform.</p>
3284
+
3285
+ Raises:
3286
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
3287
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
3288
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
3289
+ """
3290
+
3291
+ async def _handler(
3292
+ req: "AsyncOperationRequest[capo_codebuild.types.retry_build_batch_input.RetryBuildBatchInput]",
3293
+ ) -> AsyncOperationResponse[
3294
+ "capo_codebuild.types.retry_build_batch_output.RetryBuildBatchOutput"
3295
+ ]:
3296
+ import capo_codebuild._operations.code_build_20161006.retry_build_batch
3297
+
3298
+ (
3299
+ output,
3300
+ http_response,
3301
+ ) = await capo_codebuild._operations.code_build_20161006.retry_build_batch.async_retry_build_batch(
3302
+ req.options, req.input
3303
+ )
3304
+ return AsyncOperationResponse(output=output, response=http_response)
3305
+
3306
+ interceptors_, options_ = self.operation_options(config_overrides)
3307
+ input_: capo_codebuild.types.retry_build_batch_input.RetryBuildBatchInput = {}
3308
+ if id is not None:
3309
+ input_["id"] = id
3310
+ if idempotency_token is not None:
3311
+ input_["idempotency_token"] = idempotency_token
3312
+ if retry_type is not None:
3313
+ input_["retry_type"] = retry_type
3314
+
3315
+ response = await aexecute_pipeline(
3316
+ AsyncOperationRequest(input=input_, options=options_),
3317
+ handler=_handler,
3318
+ interceptors=list(interceptors_),
3319
+ )
3320
+ await response.response.aclose()
3321
+ return response.output
3322
+
3323
+ async def start_build(
3324
+ self,
3325
+ project_name: "capo_codebuild.types.non_empty_string.NonEmptyString",
3326
+ *,
3327
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
3328
+ secondary_sources_override: Optional[
3329
+ "capo_codebuild.types.project_sources.ProjectSources"
3330
+ ] = None,
3331
+ secondary_sources_version_override: Optional[
3332
+ "capo_codebuild.types.project_secondary_source_versions.ProjectSecondarySourceVersions"
3333
+ ] = None,
3334
+ source_version: Optional["capo_codebuild.types.string.String"] = None,
3335
+ artifacts_override: Optional[
3336
+ "capo_codebuild.types.project_artifacts.ProjectArtifacts"
3337
+ ] = None,
3338
+ secondary_artifacts_override: Optional[
3339
+ "capo_codebuild.types.project_artifacts_list.ProjectArtifactsList"
3340
+ ] = None,
3341
+ environment_variables_override: Optional[
3342
+ "capo_codebuild.types.environment_variables.EnvironmentVariables"
3343
+ ] = None,
3344
+ source_type_override: Optional[
3345
+ "capo_codebuild.types.source_type.SourceType"
3346
+ ] = None,
3347
+ source_location_override: Optional["capo_codebuild.types.string.String"] = None,
3348
+ source_auth_override: Optional[
3349
+ "capo_codebuild.types.source_auth.SourceAuth"
3350
+ ] = None,
3351
+ git_clone_depth_override: Optional[
3352
+ "capo_codebuild.types.git_clone_depth.GitCloneDepth"
3353
+ ] = None,
3354
+ git_submodules_config_override: Optional[
3355
+ "capo_codebuild.types.git_submodules_config.GitSubmodulesConfig"
3356
+ ] = None,
3357
+ buildspec_override: Optional["capo_codebuild.types.string.String"] = None,
3358
+ insecure_ssl_override: Optional[
3359
+ "capo_codebuild.types.wrapper_boolean.WrapperBoolean"
3360
+ ] = None,
3361
+ report_build_status_override: Optional[
3362
+ "capo_codebuild.types.wrapper_boolean.WrapperBoolean"
3363
+ ] = None,
3364
+ build_status_config_override: Optional[
3365
+ "capo_codebuild.types.build_status_config.BuildStatusConfig"
3366
+ ] = None,
3367
+ environment_type_override: Optional[
3368
+ "capo_codebuild.types.environment_type.EnvironmentType"
3369
+ ] = None,
3370
+ image_override: Optional[
3371
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
3372
+ ] = None,
3373
+ compute_type_override: Optional[
3374
+ "capo_codebuild.types.compute_type.ComputeType"
3375
+ ] = None,
3376
+ certificate_override: Optional["capo_codebuild.types.string.String"] = None,
3377
+ cache_override: Optional[
3378
+ "capo_codebuild.types.project_cache.ProjectCache"
3379
+ ] = None,
3380
+ service_role_override: Optional[
3381
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
3382
+ ] = None,
3383
+ privileged_mode_override: Optional[
3384
+ "capo_codebuild.types.wrapper_boolean.WrapperBoolean"
3385
+ ] = None,
3386
+ timeout_in_minutes_override: Optional[
3387
+ "capo_codebuild.types.build_time_out.BuildTimeOut"
3388
+ ] = None,
3389
+ queued_timeout_in_minutes_override: Optional[
3390
+ "capo_codebuild.types.time_out.TimeOut"
3391
+ ] = None,
3392
+ encryption_key_override: Optional[
3393
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
3394
+ ] = None,
3395
+ idempotency_token: Optional["capo_codebuild.types.string.String"] = None,
3396
+ logs_config_override: Optional[
3397
+ "capo_codebuild.types.logs_config.LogsConfig"
3398
+ ] = None,
3399
+ registry_credential_override: Optional[
3400
+ "capo_codebuild.types.registry_credential.RegistryCredential"
3401
+ ] = None,
3402
+ image_pull_credentials_type_override: Optional[
3403
+ "capo_codebuild.types.image_pull_credentials_type.ImagePullCredentialsType"
3404
+ ] = None,
3405
+ debug_session_enabled: Optional[
3406
+ "capo_codebuild.types.wrapper_boolean.WrapperBoolean"
3407
+ ] = None,
3408
+ fleet_override: Optional[
3409
+ "capo_codebuild.types.project_fleet.ProjectFleet"
3410
+ ] = None,
3411
+ auto_retry_limit_override: Optional[
3412
+ "capo_codebuild.types.wrapper_int.WrapperInt"
3413
+ ] = None,
3414
+ ) -> "capo_codebuild.types.start_build_output.StartBuildOutput":
3415
+ r"""<p>Starts running a build with the settings defined in the project. These setting include: how to run a build, where to get the source code, which build environment to use, which build commands to run, and where to store the build output.</p> <p>You can also start a build run by overriding some of the build settings in the project. The overrides only apply for that specific start build request. The settings in the project are unaltered.</p>
3416
+
3417
+ Args:
3418
+ project_name: <p>The name of the CodeBuild build project to start running a build.</p>
3419
+ secondary_sources_override: <p> An array of <code>ProjectSource</code> objects. </p>
3420
+ secondary_sources_version_override: <p> An array of <code>ProjectSourceVersion</code> objects that specify one or more versions of the project's secondary sources to be used for this build only. </p>
3421
+ source_version: <p>The version of the build input to be built, for this build only. If not specified, the latest version is used. If specified, the contents depends on the source provider:</p> <dl> <dt>CodeCommit</dt> <dd> <p>The commit ID, branch, or Git tag to use.</p> </dd> <dt>GitHub</dt> <dd> <p>The commit ID, pull request ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a pull request ID is specified, it must use the format <code>pr/pull-request-ID</code> (for example <code>pr/25</code>). If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p> </dd> <dt>GitLab</dt> <dd> <p>The commit ID, branch, or Git tag to use.</p> </dd> <dt>Bitbucket</dt> <dd> <p>The commit ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p> </dd> <dt>Amazon S3</dt> <dd> <p>The version ID of the object that represents the build input ZIP file to use.</p> </dd> </dl> <p>If <code>sourceVersion</code> is specified at the project level, then this <code>sourceVersion</code> (at the build level) takes precedence. </p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html\">Source Version Sample with CodeBuild</a> in the <i>CodeBuild User Guide</i>. </p>
3422
+ artifacts_override: <p>Build output artifact settings that override, for this build only, the latest ones already defined in the build project.</p>
3423
+ secondary_artifacts_override: <p> An array of <code>ProjectArtifacts</code> objects. </p>
3424
+ environment_variables_override: <p>A set of environment variables that overrides, for this build only, the latest ones already defined in the build project.</p>
3425
+ source_type_override: <p>A source input type, for this build, that overrides the source input defined in the build project.</p>
3426
+ source_location_override: <p>A location that overrides, for this build, the source location for the one defined in the build project.</p>
3427
+ source_auth_override: <p>An authorization type for this build that overrides the one defined in the build project. This override applies only if the build project's source is BitBucket, GitHub, GitLab, or GitLab Self Managed.</p>
3428
+ git_clone_depth_override: <p>The user-defined depth of history, with a minimum value of 0, that overrides, for this build only, any previous depth of history defined in the build project.</p>
3429
+ git_submodules_config_override: <p> Information about the Git submodules configuration for this build of an CodeBuild build project. </p>
3430
+ buildspec_override: <p>A buildspec file declaration that overrides the latest one defined in the build project, for this build only. The buildspec defined on the project is not changed.</p> <p>If this value is set, it can be either an inline buildspec definition, the path to an alternate buildspec file relative to the value of the built-in <code>CODEBUILD_SRC_DIR</code> environment variable, or the path to an S3 bucket. The bucket must be in the same Amazon Web Services Region as the build project. Specify the buildspec file using its ARN (for example, <code>arn:aws:s3:::my-codebuild-sample2/buildspec.yml</code>). If this value is not provided or is set to an empty string, the source code must contain a buildspec file in its root directory. For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-name-storage\">Buildspec File Name and Storage Location</a>.</p> <note> <p>Since this property allows you to change the build commands that will run in the container, you should note that an IAM principal with the ability to call this API and set this parameter can override the default settings. Moreover, we encourage that you use a trustworthy buildspec location like a file in your source repository or a Amazon S3 bucket. Alternatively, you can restrict overrides to the buildspec by using a condition key: <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/action-context-keys.html#action-context-keys-example-overridebuildspec.html\">Prevent unauthorized modifications to project buildspec</a>.</p> </note>
3431
+ insecure_ssl_override: <p>Enable this flag to override the insecure SSL setting that is specified in the build project. The insecure SSL setting determines whether to ignore SSL warnings while connecting to the project source code. This override applies only if the build's source is GitHub Enterprise.</p>
3432
+ report_build_status_override: <p> Set to true to report to your source provider the status of a build's start and completion. If you use this option with a source provider other than GitHub, GitHub Enterprise, GitLab, GitLab Self Managed, or Bitbucket, an <code>invalidInputException</code> is thrown. </p> <p>To be able to report the build status to the source provider, the user associated with the source provider must have write access to the repo. If the user does not have write access, the build status cannot be updated. For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/access-tokens.html\">Source provider access</a> in the <i>CodeBuild User Guide</i>.</p> <note> <p> The status of a build triggered by a webhook is always reported to your source provider. </p> </note>
3433
+ build_status_config_override: <p>Contains information that defines how the build project reports the build status to the source provider. This option is only used when the source provider is <code>GITHUB</code>, <code>GITHUB_ENTERPRISE</code>, or <code>BITBUCKET</code>.</p>
3434
+ environment_type_override: <p>A container type for this build that overrides the one specified in the build project.</p>
3435
+ image_override: <p>The name of an image for this build that overrides the one specified in the build project.</p>
3436
+ compute_type_override: <p>The name of a compute type for this build that overrides the one specified in the build project.</p>
3437
+ certificate_override: <p>The name of a certificate for this build that overrides the one specified in the build project.</p>
3438
+ cache_override: <p>A ProjectCache object specified for this build that overrides the one defined in the build project.</p>
3439
+ service_role_override: <p>The name of a service role for this build that overrides the one specified in the build project.</p>
3440
+ privileged_mode_override: <p>Enable this flag to override privileged mode in the build project.</p>
3441
+ timeout_in_minutes_override: <p>The number of build timeout minutes, from 5 to 2160 (36 hours), that overrides, for this build only, the latest setting already defined in the build project.</p>
3442
+ queued_timeout_in_minutes_override: <p> The number of minutes a build is allowed to be queued before it times out. </p>
3443
+ encryption_key_override: <p>The Key Management Service customer master key (CMK) that overrides the one specified in the build project. The CMK key encrypts the build output artifacts.</p> <note> <p> You can use a cross-account KMS key to encrypt the build output artifacts if your service role has permission to that key. </p> </note> <p>You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK's alias (using the format <code>alias/<alias-name></code>).</p>
3444
+ idempotency_token: <p>A unique, case sensitive identifier you provide to ensure the idempotency of the StartBuild request. The token is included in the StartBuild request and is valid for 5 minutes. If you repeat the StartBuild request with the same token, but change a parameter, CodeBuild returns a parameter mismatch error. </p>
3445
+ logs_config_override: <p> Log settings for this build that override the log settings defined in the build project. </p>
3446
+ registry_credential_override: <p> The credentials for access to a private registry. </p>
3447
+ image_pull_credentials_type_override: <p>The type of credentials CodeBuild uses to pull images in your build. There are two valid values: </p> <dl> <dt>CODEBUILD</dt> <dd> <p>Specifies that CodeBuild uses its own credentials. This requires that you modify your ECR repository policy to trust CodeBuild's service principal.</p> </dd> <dt>SERVICE_ROLE</dt> <dd> <p>Specifies that CodeBuild uses your build project's service role. </p> </dd> </dl> <p>When using a cross-account or private registry image, you must use <code>SERVICE_ROLE</code> credentials. When using an CodeBuild curated image, you must use <code>CODEBUILD</code> credentials. </p>
3448
+ debug_session_enabled: <p>Specifies if session debugging is enabled for this build. For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/session-manager.html\">Viewing a running build in Session Manager</a>.</p>
3449
+ fleet_override: <p>A ProjectFleet object specified for this build that overrides the one defined in the build project.</p>
3450
+ auto_retry_limit_override: <p>The maximum number of additional automatic retries after a failed build. For example, if the auto-retry limit is set to 2, CodeBuild will call the <code>RetryBuild</code> API to automatically retry your build for up to 2 additional times.</p>
3451
+
3452
+ Raises:
3453
+ capo_codebuild.errors.account_limit_exceeded_exception.AccountLimitExceededException: <p>An Amazon Web Services service limit was exceeded for the calling Amazon Web Services account.</p>
3454
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
3455
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
3456
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
3457
+ """
3458
+
3459
+ async def _handler(
3460
+ req: "AsyncOperationRequest[capo_codebuild.types.start_build_input.StartBuildInput]",
3461
+ ) -> AsyncOperationResponse[
3462
+ "capo_codebuild.types.start_build_output.StartBuildOutput"
3463
+ ]:
3464
+ import capo_codebuild._operations.code_build_20161006.start_build
3465
+
3466
+ (
3467
+ output,
3468
+ http_response,
3469
+ ) = await capo_codebuild._operations.code_build_20161006.start_build.async_start_build(
3470
+ req.options, req.input
3471
+ )
3472
+ return AsyncOperationResponse(output=output, response=http_response)
3473
+
3474
+ interceptors_, options_ = self.operation_options(config_overrides)
3475
+ input_: capo_codebuild.types.start_build_input.StartBuildInput = {
3476
+ "project_name": project_name
3477
+ }
3478
+ if secondary_sources_override is not None:
3479
+ input_["secondary_sources_override"] = secondary_sources_override
3480
+ if secondary_sources_version_override is not None:
3481
+ input_["secondary_sources_version_override"] = (
3482
+ secondary_sources_version_override
3483
+ )
3484
+ if source_version is not None:
3485
+ input_["source_version"] = source_version
3486
+ if artifacts_override is not None:
3487
+ input_["artifacts_override"] = artifacts_override
3488
+ if secondary_artifacts_override is not None:
3489
+ input_["secondary_artifacts_override"] = secondary_artifacts_override
3490
+ if environment_variables_override is not None:
3491
+ input_["environment_variables_override"] = environment_variables_override
3492
+ if source_type_override is not None:
3493
+ input_["source_type_override"] = source_type_override
3494
+ if source_location_override is not None:
3495
+ input_["source_location_override"] = source_location_override
3496
+ if source_auth_override is not None:
3497
+ input_["source_auth_override"] = source_auth_override
3498
+ if git_clone_depth_override is not None:
3499
+ input_["git_clone_depth_override"] = git_clone_depth_override
3500
+ if git_submodules_config_override is not None:
3501
+ input_["git_submodules_config_override"] = git_submodules_config_override
3502
+ if buildspec_override is not None:
3503
+ input_["buildspec_override"] = buildspec_override
3504
+ if insecure_ssl_override is not None:
3505
+ input_["insecure_ssl_override"] = insecure_ssl_override
3506
+ if report_build_status_override is not None:
3507
+ input_["report_build_status_override"] = report_build_status_override
3508
+ if build_status_config_override is not None:
3509
+ input_["build_status_config_override"] = build_status_config_override
3510
+ if environment_type_override is not None:
3511
+ input_["environment_type_override"] = environment_type_override
3512
+ if image_override is not None:
3513
+ input_["image_override"] = image_override
3514
+ if compute_type_override is not None:
3515
+ input_["compute_type_override"] = compute_type_override
3516
+ if certificate_override is not None:
3517
+ input_["certificate_override"] = certificate_override
3518
+ if cache_override is not None:
3519
+ input_["cache_override"] = cache_override
3520
+ if service_role_override is not None:
3521
+ input_["service_role_override"] = service_role_override
3522
+ if privileged_mode_override is not None:
3523
+ input_["privileged_mode_override"] = privileged_mode_override
3524
+ if timeout_in_minutes_override is not None:
3525
+ input_["timeout_in_minutes_override"] = timeout_in_minutes_override
3526
+ if queued_timeout_in_minutes_override is not None:
3527
+ input_["queued_timeout_in_minutes_override"] = (
3528
+ queued_timeout_in_minutes_override
3529
+ )
3530
+ if encryption_key_override is not None:
3531
+ input_["encryption_key_override"] = encryption_key_override
3532
+ if idempotency_token is not None:
3533
+ input_["idempotency_token"] = idempotency_token
3534
+ if logs_config_override is not None:
3535
+ input_["logs_config_override"] = logs_config_override
3536
+ if registry_credential_override is not None:
3537
+ input_["registry_credential_override"] = registry_credential_override
3538
+ if image_pull_credentials_type_override is not None:
3539
+ input_["image_pull_credentials_type_override"] = (
3540
+ image_pull_credentials_type_override
3541
+ )
3542
+ if debug_session_enabled is not None:
3543
+ input_["debug_session_enabled"] = debug_session_enabled
3544
+ if fleet_override is not None:
3545
+ input_["fleet_override"] = fleet_override
3546
+ if auto_retry_limit_override is not None:
3547
+ input_["auto_retry_limit_override"] = auto_retry_limit_override
3548
+
3549
+ response = await aexecute_pipeline(
3550
+ AsyncOperationRequest(input=input_, options=options_),
3551
+ handler=_handler,
3552
+ interceptors=list(interceptors_),
3553
+ )
3554
+ await response.response.aclose()
3555
+ return response.output
3556
+
3557
+ async def start_build_batch(
3558
+ self,
3559
+ project_name: "capo_codebuild.types.non_empty_string.NonEmptyString",
3560
+ *,
3561
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
3562
+ secondary_sources_override: Optional[
3563
+ "capo_codebuild.types.project_sources.ProjectSources"
3564
+ ] = None,
3565
+ secondary_sources_version_override: Optional[
3566
+ "capo_codebuild.types.project_secondary_source_versions.ProjectSecondarySourceVersions"
3567
+ ] = None,
3568
+ source_version: Optional["capo_codebuild.types.string.String"] = None,
3569
+ artifacts_override: Optional[
3570
+ "capo_codebuild.types.project_artifacts.ProjectArtifacts"
3571
+ ] = None,
3572
+ secondary_artifacts_override: Optional[
3573
+ "capo_codebuild.types.project_artifacts_list.ProjectArtifactsList"
3574
+ ] = None,
3575
+ environment_variables_override: Optional[
3576
+ "capo_codebuild.types.environment_variables.EnvironmentVariables"
3577
+ ] = None,
3578
+ source_type_override: Optional[
3579
+ "capo_codebuild.types.source_type.SourceType"
3580
+ ] = None,
3581
+ source_location_override: Optional["capo_codebuild.types.string.String"] = None,
3582
+ source_auth_override: Optional[
3583
+ "capo_codebuild.types.source_auth.SourceAuth"
3584
+ ] = None,
3585
+ git_clone_depth_override: Optional[
3586
+ "capo_codebuild.types.git_clone_depth.GitCloneDepth"
3587
+ ] = None,
3588
+ git_submodules_config_override: Optional[
3589
+ "capo_codebuild.types.git_submodules_config.GitSubmodulesConfig"
3590
+ ] = None,
3591
+ buildspec_override: Optional["capo_codebuild.types.string.String"] = None,
3592
+ insecure_ssl_override: Optional[
3593
+ "capo_codebuild.types.wrapper_boolean.WrapperBoolean"
3594
+ ] = None,
3595
+ report_build_batch_status_override: Optional[
3596
+ "capo_codebuild.types.wrapper_boolean.WrapperBoolean"
3597
+ ] = None,
3598
+ environment_type_override: Optional[
3599
+ "capo_codebuild.types.environment_type.EnvironmentType"
3600
+ ] = None,
3601
+ image_override: Optional[
3602
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
3603
+ ] = None,
3604
+ compute_type_override: Optional[
3605
+ "capo_codebuild.types.compute_type.ComputeType"
3606
+ ] = None,
3607
+ certificate_override: Optional["capo_codebuild.types.string.String"] = None,
3608
+ cache_override: Optional[
3609
+ "capo_codebuild.types.project_cache.ProjectCache"
3610
+ ] = None,
3611
+ service_role_override: Optional[
3612
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
3613
+ ] = None,
3614
+ privileged_mode_override: Optional[
3615
+ "capo_codebuild.types.wrapper_boolean.WrapperBoolean"
3616
+ ] = None,
3617
+ build_timeout_in_minutes_override: Optional[
3618
+ "capo_codebuild.types.build_time_out.BuildTimeOut"
3619
+ ] = None,
3620
+ queued_timeout_in_minutes_override: Optional[
3621
+ "capo_codebuild.types.time_out.TimeOut"
3622
+ ] = None,
3623
+ encryption_key_override: Optional[
3624
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
3625
+ ] = None,
3626
+ idempotency_token: Optional["capo_codebuild.types.string.String"] = None,
3627
+ logs_config_override: Optional[
3628
+ "capo_codebuild.types.logs_config.LogsConfig"
3629
+ ] = None,
3630
+ registry_credential_override: Optional[
3631
+ "capo_codebuild.types.registry_credential.RegistryCredential"
3632
+ ] = None,
3633
+ image_pull_credentials_type_override: Optional[
3634
+ "capo_codebuild.types.image_pull_credentials_type.ImagePullCredentialsType"
3635
+ ] = None,
3636
+ build_batch_config_override: Optional[
3637
+ "capo_codebuild.types.project_build_batch_config.ProjectBuildBatchConfig"
3638
+ ] = None,
3639
+ debug_session_enabled: Optional[
3640
+ "capo_codebuild.types.wrapper_boolean.WrapperBoolean"
3641
+ ] = None,
3642
+ ) -> "capo_codebuild.types.start_build_batch_output.StartBuildBatchOutput":
3643
+ r"""<p>Starts a batch build for a project.</p>
3644
+
3645
+ Args:
3646
+ project_name: <p>The name of the project.</p>
3647
+ secondary_sources_override: <p>An array of <code>ProjectSource</code> objects that override the secondary sources defined in the batch build project.</p>
3648
+ secondary_sources_version_override: <p>An array of <code>ProjectSourceVersion</code> objects that override the secondary source versions in the batch build project.</p>
3649
+ source_version: <p>The version of the batch build input to be built, for this build only. If not specified, the latest version is used. If specified, the contents depends on the source provider:</p> <dl> <dt>CodeCommit</dt> <dd> <p>The commit ID, branch, or Git tag to use.</p> </dd> <dt>GitHub</dt> <dd> <p>The commit ID, pull request ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a pull request ID is specified, it must use the format <code>pr/pull-request-ID</code> (for example <code>pr/25</code>). If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p> </dd> <dt>Bitbucket</dt> <dd> <p>The commit ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p> </dd> <dt>Amazon S3</dt> <dd> <p>The version ID of the object that represents the build input ZIP file to use.</p> </dd> </dl> <p>If <code>sourceVersion</code> is specified at the project level, then this <code>sourceVersion</code> (at the build level) takes precedence. </p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html\">Source Version Sample with CodeBuild</a> in the <i>CodeBuild User Guide</i>. </p>
3650
+ artifacts_override: <p>An array of <code>ProjectArtifacts</code> objects that contains information about the build output artifact overrides for the build project.</p>
3651
+ secondary_artifacts_override: <p>An array of <code>ProjectArtifacts</code> objects that override the secondary artifacts defined in the batch build project.</p>
3652
+ environment_variables_override: <p>An array of <code>EnvironmentVariable</code> objects that override, or add to, the environment variables defined in the batch build project.</p>
3653
+ source_type_override: <p>The source input type that overrides the source input defined in the batch build project.</p>
3654
+ source_location_override: <p>A location that overrides, for this batch build, the source location defined in the batch build project.</p>
3655
+ source_auth_override: <p>A <code>SourceAuth</code> object that overrides the one defined in the batch build project. This override applies only if the build project's source is BitBucket or GitHub.</p>
3656
+ git_clone_depth_override: <p>The user-defined depth of history, with a minimum value of 0, that overrides, for this batch build only, any previous depth of history defined in the batch build project.</p>
3657
+ git_submodules_config_override: <p>A <code>GitSubmodulesConfig</code> object that overrides the Git submodules configuration for this batch build.</p>
3658
+ buildspec_override: <p>A buildspec file declaration that overrides, for this build only, the latest one already defined in the build project.</p> <p>If this value is set, it can be either an inline buildspec definition, the path to an alternate buildspec file relative to the value of the built-in <code>CODEBUILD_SRC_DIR</code> environment variable, or the path to an S3 bucket. The bucket must be in the same Amazon Web Services Region as the build project. Specify the buildspec file using its ARN (for example, <code>arn:aws:s3:::my-codebuild-sample2/buildspec.yml</code>). If this value is not provided or is set to an empty string, the source code must contain a buildspec file in its root directory. For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-name-storage\">Buildspec File Name and Storage Location</a>. </p>
3659
+ insecure_ssl_override: <p>Enable this flag to override the insecure SSL setting that is specified in the batch build project. The insecure SSL setting determines whether to ignore SSL warnings while connecting to the project source code. This override applies only if the build's source is GitHub Enterprise.</p>
3660
+ report_build_batch_status_override: <p>Set to <code>true</code> to report to your source provider the status of a batch build's start and completion. If you use this option with a source provider other than GitHub, GitHub Enterprise, or Bitbucket, an <code>invalidInputException</code> is thrown. </p> <note> <p>The status of a build triggered by a webhook is always reported to your source provider. </p> </note>
3661
+ environment_type_override: <p>A container type for this batch build that overrides the one specified in the batch build project.</p>
3662
+ image_override: <p>The name of an image for this batch build that overrides the one specified in the batch build project.</p>
3663
+ compute_type_override: <p>The name of a compute type for this batch build that overrides the one specified in the batch build project.</p>
3664
+ certificate_override: <p>The name of a certificate for this batch build that overrides the one specified in the batch build project.</p>
3665
+ cache_override: <p>A <code>ProjectCache</code> object that specifies cache overrides.</p>
3666
+ service_role_override: <p>The name of a service role for this batch build that overrides the one specified in the batch build project.</p>
3667
+ privileged_mode_override: <p>Enable this flag to override privileged mode in the batch build project.</p>
3668
+ build_timeout_in_minutes_override: <p>Overrides the build timeout specified in the batch build project.</p>
3669
+ queued_timeout_in_minutes_override: <p>The number of minutes a batch build is allowed to be queued before it times out.</p>
3670
+ encryption_key_override: <p>The Key Management Service customer master key (CMK) that overrides the one specified in the batch build project. The CMK key encrypts the build output artifacts.</p> <note> <p>You can use a cross-account KMS key to encrypt the build output artifacts if your service role has permission to that key. </p> </note> <p>You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK's alias (using the format <code>alias/<alias-name></code>).</p>
3671
+ idempotency_token: <p>A unique, case sensitive identifier you provide to ensure the idempotency of the <code>StartBuildBatch</code> request. The token is included in the <code>StartBuildBatch</code> request and is valid for five minutes. If you repeat the <code>StartBuildBatch</code> request with the same token, but change a parameter, CodeBuild returns a parameter mismatch error.</p>
3672
+ logs_config_override: <p>A <code>LogsConfig</code> object that override the log settings defined in the batch build project.</p>
3673
+ registry_credential_override: <p>A <code>RegistryCredential</code> object that overrides credentials for access to a private registry.</p>
3674
+ image_pull_credentials_type_override: <p>The type of credentials CodeBuild uses to pull images in your batch build. There are two valid values: </p> <dl> <dt>CODEBUILD</dt> <dd> <p>Specifies that CodeBuild uses its own credentials. This requires that you modify your ECR repository policy to trust CodeBuild's service principal.</p> </dd> <dt>SERVICE_ROLE</dt> <dd> <p>Specifies that CodeBuild uses your build project's service role. </p> </dd> </dl> <p>When using a cross-account or private registry image, you must use <code>SERVICE_ROLE</code> credentials. When using an CodeBuild curated image, you must use <code>CODEBUILD</code> credentials. </p>
3675
+ build_batch_config_override: <p>A <code>BuildBatchConfigOverride</code> object that contains batch build configuration overrides.</p>
3676
+ debug_session_enabled: <p>Specifies if session debugging is enabled for this batch build. For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/session-manager.html\">Viewing a running build in Session Manager</a>. Batch session debugging is not supported for matrix batch builds.</p>
3677
+
3678
+ Raises:
3679
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
3680
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
3681
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
3682
+ """
3683
+
3684
+ async def _handler(
3685
+ req: "AsyncOperationRequest[capo_codebuild.types.start_build_batch_input.StartBuildBatchInput]",
3686
+ ) -> AsyncOperationResponse[
3687
+ "capo_codebuild.types.start_build_batch_output.StartBuildBatchOutput"
3688
+ ]:
3689
+ import capo_codebuild._operations.code_build_20161006.start_build_batch
3690
+
3691
+ (
3692
+ output,
3693
+ http_response,
3694
+ ) = await capo_codebuild._operations.code_build_20161006.start_build_batch.async_start_build_batch(
3695
+ req.options, req.input
3696
+ )
3697
+ return AsyncOperationResponse(output=output, response=http_response)
3698
+
3699
+ interceptors_, options_ = self.operation_options(config_overrides)
3700
+ input_: capo_codebuild.types.start_build_batch_input.StartBuildBatchInput = {
3701
+ "project_name": project_name
3702
+ }
3703
+ if secondary_sources_override is not None:
3704
+ input_["secondary_sources_override"] = secondary_sources_override
3705
+ if secondary_sources_version_override is not None:
3706
+ input_["secondary_sources_version_override"] = (
3707
+ secondary_sources_version_override
3708
+ )
3709
+ if source_version is not None:
3710
+ input_["source_version"] = source_version
3711
+ if artifacts_override is not None:
3712
+ input_["artifacts_override"] = artifacts_override
3713
+ if secondary_artifacts_override is not None:
3714
+ input_["secondary_artifacts_override"] = secondary_artifacts_override
3715
+ if environment_variables_override is not None:
3716
+ input_["environment_variables_override"] = environment_variables_override
3717
+ if source_type_override is not None:
3718
+ input_["source_type_override"] = source_type_override
3719
+ if source_location_override is not None:
3720
+ input_["source_location_override"] = source_location_override
3721
+ if source_auth_override is not None:
3722
+ input_["source_auth_override"] = source_auth_override
3723
+ if git_clone_depth_override is not None:
3724
+ input_["git_clone_depth_override"] = git_clone_depth_override
3725
+ if git_submodules_config_override is not None:
3726
+ input_["git_submodules_config_override"] = git_submodules_config_override
3727
+ if buildspec_override is not None:
3728
+ input_["buildspec_override"] = buildspec_override
3729
+ if insecure_ssl_override is not None:
3730
+ input_["insecure_ssl_override"] = insecure_ssl_override
3731
+ if report_build_batch_status_override is not None:
3732
+ input_["report_build_batch_status_override"] = (
3733
+ report_build_batch_status_override
3734
+ )
3735
+ if environment_type_override is not None:
3736
+ input_["environment_type_override"] = environment_type_override
3737
+ if image_override is not None:
3738
+ input_["image_override"] = image_override
3739
+ if compute_type_override is not None:
3740
+ input_["compute_type_override"] = compute_type_override
3741
+ if certificate_override is not None:
3742
+ input_["certificate_override"] = certificate_override
3743
+ if cache_override is not None:
3744
+ input_["cache_override"] = cache_override
3745
+ if service_role_override is not None:
3746
+ input_["service_role_override"] = service_role_override
3747
+ if privileged_mode_override is not None:
3748
+ input_["privileged_mode_override"] = privileged_mode_override
3749
+ if build_timeout_in_minutes_override is not None:
3750
+ input_["build_timeout_in_minutes_override"] = (
3751
+ build_timeout_in_minutes_override
3752
+ )
3753
+ if queued_timeout_in_minutes_override is not None:
3754
+ input_["queued_timeout_in_minutes_override"] = (
3755
+ queued_timeout_in_minutes_override
3756
+ )
3757
+ if encryption_key_override is not None:
3758
+ input_["encryption_key_override"] = encryption_key_override
3759
+ if idempotency_token is not None:
3760
+ input_["idempotency_token"] = idempotency_token
3761
+ if logs_config_override is not None:
3762
+ input_["logs_config_override"] = logs_config_override
3763
+ if registry_credential_override is not None:
3764
+ input_["registry_credential_override"] = registry_credential_override
3765
+ if image_pull_credentials_type_override is not None:
3766
+ input_["image_pull_credentials_type_override"] = (
3767
+ image_pull_credentials_type_override
3768
+ )
3769
+ if build_batch_config_override is not None:
3770
+ input_["build_batch_config_override"] = build_batch_config_override
3771
+ if debug_session_enabled is not None:
3772
+ input_["debug_session_enabled"] = debug_session_enabled
3773
+
3774
+ response = await aexecute_pipeline(
3775
+ AsyncOperationRequest(input=input_, options=options_),
3776
+ handler=_handler,
3777
+ interceptors=list(interceptors_),
3778
+ )
3779
+ await response.response.aclose()
3780
+ return response.output
3781
+
3782
+ async def start_command_execution(
3783
+ self,
3784
+ sandbox_id: "capo_codebuild.types.non_empty_string.NonEmptyString",
3785
+ command: "capo_codebuild.types.sensitive_non_empty_string.SensitiveNonEmptyString",
3786
+ *,
3787
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
3788
+ type: Optional["capo_codebuild.types.command_type.CommandType"] = None,
3789
+ ) -> "capo_codebuild.types.start_command_execution_output.StartCommandExecutionOutput":
3790
+ """<p>Starts a command execution.</p>
3791
+
3792
+ Args:
3793
+ sandbox_id: <p>A <code>sandboxId</code> or <code>sandboxArn</code>.</p>
3794
+ command: <p>The command that needs to be executed.</p>
3795
+ type: <p>The command type.</p>
3796
+
3797
+ Raises:
3798
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
3799
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
3800
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
3801
+ """
3802
+
3803
+ async def _handler(
3804
+ req: "AsyncOperationRequest[capo_codebuild.types.start_command_execution_input.StartCommandExecutionInput]",
3805
+ ) -> AsyncOperationResponse[
3806
+ "capo_codebuild.types.start_command_execution_output.StartCommandExecutionOutput"
3807
+ ]:
3808
+ import capo_codebuild._operations.code_build_20161006.start_command_execution
3809
+
3810
+ (
3811
+ output,
3812
+ http_response,
3813
+ ) = await capo_codebuild._operations.code_build_20161006.start_command_execution.async_start_command_execution(
3814
+ req.options, req.input
3815
+ )
3816
+ return AsyncOperationResponse(output=output, response=http_response)
3817
+
3818
+ interceptors_, options_ = self.operation_options(config_overrides)
3819
+ input_: capo_codebuild.types.start_command_execution_input.StartCommandExecutionInput = {
3820
+ "sandbox_id": sandbox_id,
3821
+ "command": command,
3822
+ }
3823
+ if type is not None:
3824
+ input_["type"] = type
3825
+
3826
+ response = await aexecute_pipeline(
3827
+ AsyncOperationRequest(input=input_, options=options_),
3828
+ handler=_handler,
3829
+ interceptors=list(interceptors_),
3830
+ )
3831
+ await response.response.aclose()
3832
+ return response.output
3833
+
3834
+ async def start_sandbox(
3835
+ self,
3836
+ *,
3837
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
3838
+ project_name: Optional[
3839
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
3840
+ ] = None,
3841
+ idempotency_token: Optional[
3842
+ "capo_codebuild.types.sensitive_string.SensitiveString"
3843
+ ] = None,
3844
+ ) -> "capo_codebuild.types.start_sandbox_output.StartSandboxOutput":
3845
+ """<p>Starts a sandbox.</p>
3846
+
3847
+ Args:
3848
+ project_name: <p>The CodeBuild project name.</p>
3849
+ idempotency_token: <p>A unique client token.</p>
3850
+
3851
+ Raises:
3852
+ capo_codebuild.errors.account_suspended_exception.AccountSuspendedException: <p>The CodeBuild access has been suspended for the calling Amazon Web Services account.</p>
3853
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
3854
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
3855
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
3856
+ """
3857
+
3858
+ async def _handler(
3859
+ req: "AsyncOperationRequest[capo_codebuild.types.start_sandbox_input.StartSandboxInput]",
3860
+ ) -> AsyncOperationResponse[
3861
+ "capo_codebuild.types.start_sandbox_output.StartSandboxOutput"
3862
+ ]:
3863
+ import capo_codebuild._operations.code_build_20161006.start_sandbox
3864
+
3865
+ (
3866
+ output,
3867
+ http_response,
3868
+ ) = await capo_codebuild._operations.code_build_20161006.start_sandbox.async_start_sandbox(
3869
+ req.options, req.input
3870
+ )
3871
+ return AsyncOperationResponse(output=output, response=http_response)
3872
+
3873
+ interceptors_, options_ = self.operation_options(config_overrides)
3874
+ input_: capo_codebuild.types.start_sandbox_input.StartSandboxInput = {}
3875
+ if project_name is not None:
3876
+ input_["project_name"] = project_name
3877
+ if idempotency_token is not None:
3878
+ input_["idempotency_token"] = idempotency_token
3879
+
3880
+ response = await aexecute_pipeline(
3881
+ AsyncOperationRequest(input=input_, options=options_),
3882
+ handler=_handler,
3883
+ interceptors=list(interceptors_),
3884
+ )
3885
+ await response.response.aclose()
3886
+ return response.output
3887
+
3888
+ async def start_sandbox_connection(
3889
+ self,
3890
+ sandbox_id: "capo_codebuild.types.non_empty_string.NonEmptyString",
3891
+ *,
3892
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
3893
+ ) -> "capo_codebuild.types.start_sandbox_connection_output.StartSandboxConnectionOutput":
3894
+ """<p>Starts a sandbox connection.</p>
3895
+
3896
+ Args:
3897
+ sandbox_id: <p>A <code>sandboxId</code> or <code>sandboxArn</code>.</p>
3898
+
3899
+ Raises:
3900
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
3901
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
3902
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
3903
+ """
3904
+
3905
+ async def _handler(
3906
+ req: "AsyncOperationRequest[capo_codebuild.types.start_sandbox_connection_input.StartSandboxConnectionInput]",
3907
+ ) -> AsyncOperationResponse[
3908
+ "capo_codebuild.types.start_sandbox_connection_output.StartSandboxConnectionOutput"
3909
+ ]:
3910
+ import capo_codebuild._operations.code_build_20161006.start_sandbox_connection
3911
+
3912
+ (
3913
+ output,
3914
+ http_response,
3915
+ ) = await capo_codebuild._operations.code_build_20161006.start_sandbox_connection.async_start_sandbox_connection(
3916
+ req.options, req.input
3917
+ )
3918
+ return AsyncOperationResponse(output=output, response=http_response)
3919
+
3920
+ interceptors_, options_ = self.operation_options(config_overrides)
3921
+ input_: capo_codebuild.types.start_sandbox_connection_input.StartSandboxConnectionInput = {
3922
+ "sandbox_id": sandbox_id
3923
+ }
3924
+
3925
+ response = await aexecute_pipeline(
3926
+ AsyncOperationRequest(input=input_, options=options_),
3927
+ handler=_handler,
3928
+ interceptors=list(interceptors_),
3929
+ )
3930
+ await response.response.aclose()
3931
+ return response.output
3932
+
3933
+ async def stop_build(
3934
+ self,
3935
+ id: "capo_codebuild.types.non_empty_string.NonEmptyString",
3936
+ *,
3937
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
3938
+ ) -> "capo_codebuild.types.stop_build_output.StopBuildOutput":
3939
+ """<p>Attempts to stop running a build.</p>
3940
+
3941
+ Args:
3942
+ id: <p>The ID of the build.</p>
3943
+
3944
+ Raises:
3945
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
3946
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
3947
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
3948
+ """
3949
+
3950
+ async def _handler(
3951
+ req: "AsyncOperationRequest[capo_codebuild.types.stop_build_input.StopBuildInput]",
3952
+ ) -> AsyncOperationResponse[
3953
+ "capo_codebuild.types.stop_build_output.StopBuildOutput"
3954
+ ]:
3955
+ import capo_codebuild._operations.code_build_20161006.stop_build
3956
+
3957
+ (
3958
+ output,
3959
+ http_response,
3960
+ ) = await capo_codebuild._operations.code_build_20161006.stop_build.async_stop_build(
3961
+ req.options, req.input
3962
+ )
3963
+ return AsyncOperationResponse(output=output, response=http_response)
3964
+
3965
+ interceptors_, options_ = self.operation_options(config_overrides)
3966
+ input_: capo_codebuild.types.stop_build_input.StopBuildInput = {"id": id}
3967
+
3968
+ response = await aexecute_pipeline(
3969
+ AsyncOperationRequest(input=input_, options=options_),
3970
+ handler=_handler,
3971
+ interceptors=list(interceptors_),
3972
+ )
3973
+ await response.response.aclose()
3974
+ return response.output
3975
+
3976
+ async def stop_build_batch(
3977
+ self,
3978
+ id: "capo_codebuild.types.non_empty_string.NonEmptyString",
3979
+ *,
3980
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
3981
+ ) -> "capo_codebuild.types.stop_build_batch_output.StopBuildBatchOutput":
3982
+ """<p>Stops a running batch build.</p>
3983
+
3984
+ Args:
3985
+ id: <p>The identifier of the batch build to stop.</p>
3986
+
3987
+ Raises:
3988
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
3989
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
3990
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
3991
+ """
3992
+
3993
+ async def _handler(
3994
+ req: "AsyncOperationRequest[capo_codebuild.types.stop_build_batch_input.StopBuildBatchInput]",
3995
+ ) -> AsyncOperationResponse[
3996
+ "capo_codebuild.types.stop_build_batch_output.StopBuildBatchOutput"
3997
+ ]:
3998
+ import capo_codebuild._operations.code_build_20161006.stop_build_batch
3999
+
4000
+ (
4001
+ output,
4002
+ http_response,
4003
+ ) = await capo_codebuild._operations.code_build_20161006.stop_build_batch.async_stop_build_batch(
4004
+ req.options, req.input
4005
+ )
4006
+ return AsyncOperationResponse(output=output, response=http_response)
4007
+
4008
+ interceptors_, options_ = self.operation_options(config_overrides)
4009
+ input_: capo_codebuild.types.stop_build_batch_input.StopBuildBatchInput = {
4010
+ "id": id
4011
+ }
4012
+
4013
+ response = await aexecute_pipeline(
4014
+ AsyncOperationRequest(input=input_, options=options_),
4015
+ handler=_handler,
4016
+ interceptors=list(interceptors_),
4017
+ )
4018
+ await response.response.aclose()
4019
+ return response.output
4020
+
4021
+ async def stop_sandbox(
4022
+ self,
4023
+ id: "capo_codebuild.types.non_empty_string.NonEmptyString",
4024
+ *,
4025
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
4026
+ ) -> "capo_codebuild.types.stop_sandbox_output.StopSandboxOutput":
4027
+ """<p>Stops a sandbox.</p>
4028
+
4029
+ Args:
4030
+ id: <p>Information about the requested sandbox ID.</p>
4031
+
4032
+ Raises:
4033
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
4034
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
4035
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
4036
+ """
4037
+
4038
+ async def _handler(
4039
+ req: "AsyncOperationRequest[capo_codebuild.types.stop_sandbox_input.StopSandboxInput]",
4040
+ ) -> AsyncOperationResponse[
4041
+ "capo_codebuild.types.stop_sandbox_output.StopSandboxOutput"
4042
+ ]:
4043
+ import capo_codebuild._operations.code_build_20161006.stop_sandbox
4044
+
4045
+ (
4046
+ output,
4047
+ http_response,
4048
+ ) = await capo_codebuild._operations.code_build_20161006.stop_sandbox.async_stop_sandbox(
4049
+ req.options, req.input
4050
+ )
4051
+ return AsyncOperationResponse(output=output, response=http_response)
4052
+
4053
+ interceptors_, options_ = self.operation_options(config_overrides)
4054
+ input_: capo_codebuild.types.stop_sandbox_input.StopSandboxInput = {"id": id}
4055
+
4056
+ response = await aexecute_pipeline(
4057
+ AsyncOperationRequest(input=input_, options=options_),
4058
+ handler=_handler,
4059
+ interceptors=list(interceptors_),
4060
+ )
4061
+ await response.response.aclose()
4062
+ return response.output
4063
+
4064
+ async def update_fleet(
4065
+ self,
4066
+ arn: "capo_codebuild.types.non_empty_string.NonEmptyString",
4067
+ *,
4068
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
4069
+ base_capacity: Optional[
4070
+ "capo_codebuild.types.fleet_capacity.FleetCapacity"
4071
+ ] = None,
4072
+ environment_type: Optional[
4073
+ "capo_codebuild.types.environment_type.EnvironmentType"
4074
+ ] = None,
4075
+ compute_type: Optional["capo_codebuild.types.compute_type.ComputeType"] = None,
4076
+ compute_configuration: Optional[
4077
+ "capo_codebuild.types.compute_configuration.ComputeConfiguration"
4078
+ ] = None,
4079
+ scaling_configuration: Optional[
4080
+ "capo_codebuild.types.scaling_configuration_input.ScalingConfigurationInput"
4081
+ ] = None,
4082
+ overflow_behavior: Optional[
4083
+ "capo_codebuild.types.fleet_overflow_behavior.FleetOverflowBehavior"
4084
+ ] = None,
4085
+ vpc_config: Optional["capo_codebuild.types.vpc_config.VpcConfig"] = None,
4086
+ proxy_configuration: Optional[
4087
+ "capo_codebuild.types.proxy_configuration.ProxyConfiguration"
4088
+ ] = None,
4089
+ image_id: Optional[
4090
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
4091
+ ] = None,
4092
+ fleet_service_role: Optional[
4093
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
4094
+ ] = None,
4095
+ tags: Optional["capo_codebuild.types.tag_list.TagList"] = None,
4096
+ ) -> "capo_codebuild.types.update_fleet_output.UpdateFleetOutput":
4097
+ r"""<p>Updates a compute fleet.</p>
4098
+
4099
+ Args:
4100
+ arn: <p>The ARN of the compute fleet.</p>
4101
+ base_capacity: <p>The initial number of machines allocated to the compute fleet, which defines the number of builds that can run in parallel.</p>
4102
+ environment_type: <p>The environment type of the compute fleet.</p> <ul> <li> <p>The environment type <code>ARM_CONTAINER</code> is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), Asia Pacific (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), EU (Frankfurt), and South America (São Paulo).</p> </li> <li> <p>The environment type <code>ARM_EC2</code> is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), South America (São Paulo), and Asia Pacific (Mumbai).</p> </li> <li> <p>The environment type <code>LINUX_CONTAINER</code> is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), South America (São Paulo), and Asia Pacific (Mumbai).</p> </li> <li> <p>The environment type <code>LINUX_EC2</code> is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), South America (São Paulo), and Asia Pacific (Mumbai).</p> </li> <li> <p>The environment type <code>LINUX_GPU_CONTAINER</code> is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), and Asia Pacific (Sydney).</p> </li> <li> <p>The environment type <code>MAC_ARM</code> is available for Medium fleets only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), Asia Pacific (Sydney), and EU (Frankfurt)</p> </li> <li> <p>The environment type <code>MAC_ARM</code> is available for Large fleets only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), and Asia Pacific (Sydney).</p> </li> <li> <p>The environment type <code>WINDOWS_EC2</code> is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), South America (São Paulo), and Asia Pacific (Mumbai).</p> </li> <li> <p>The environment type <code>WINDOWS_SERVER_2019_CONTAINER</code> is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), Asia Pacific (Sydney), Asia Pacific (Tokyo), Asia Pacific (Mumbai) and EU (Ireland).</p> </li> <li> <p>The environment type <code>WINDOWS_SERVER_2022_CONTAINER</code> is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Sydney), Asia Pacific (Singapore), Asia Pacific (Tokyo), South America (São Paulo) and Asia Pacific (Mumbai).</p> </li> </ul> <p>For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html\">Build environment compute types</a> in the <i>CodeBuild user guide</i>.</p>
4103
+ compute_type: <p>Information about the compute resources the compute fleet uses. Available values include:</p> <ul> <li> <p> <code>ATTRIBUTE_BASED_COMPUTE</code>: Specify the amount of vCPUs, memory, disk space, and the type of machine.</p> <note> <p> If you use <code>ATTRIBUTE_BASED_COMPUTE</code>, you must define your attributes by using <code>computeConfiguration</code>. CodeBuild will select the cheapest instance that satisfies your specified attributes. For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment-reserved-capacity.types\">Reserved capacity environment types</a> in the <i>CodeBuild User Guide</i>.</p> </note> </li> <li> <p> <code>CUSTOM_INSTANCE_TYPE</code>: Specify the instance type for your compute fleet. For a list of supported instance types, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment-reserved-capacity.instance-types\">Supported instance families </a> in the <i>CodeBuild User Guide</i>.</p> </li> <li> <p> <code>BUILD_GENERAL1_SMALL</code>: Use up to 4 GiB memory and 2 vCPUs for builds.</p> </li> <li> <p> <code>BUILD_GENERAL1_MEDIUM</code>: Use up to 8 GiB memory and 4 vCPUs for builds.</p> </li> <li> <p> <code>BUILD_GENERAL1_LARGE</code>: Use up to 16 GiB memory and 8 vCPUs for builds, depending on your environment type.</p> </li> <li> <p> <code>BUILD_GENERAL1_XLARGE</code>: Use up to 72 GiB memory and 36 vCPUs for builds, depending on your environment type.</p> </li> <li> <p> <code>BUILD_GENERAL1_2XLARGE</code>: Use up to 144 GiB memory, 72 vCPUs, and 824 GB of SSD storage for builds. This compute type supports Docker images up to 100 GB uncompressed.</p> </li> <li> <p> <code>BUILD_LAMBDA_1GB</code>: Use up to 1 GiB memory for builds. Only available for environment type <code>LINUX_LAMBDA_CONTAINER</code> and <code>ARM_LAMBDA_CONTAINER</code>.</p> </li> <li> <p> <code>BUILD_LAMBDA_2GB</code>: Use up to 2 GiB memory for builds. Only available for environment type <code>LINUX_LAMBDA_CONTAINER</code> and <code>ARM_LAMBDA_CONTAINER</code>.</p> </li> <li> <p> <code>BUILD_LAMBDA_4GB</code>: Use up to 4 GiB memory for builds. Only available for environment type <code>LINUX_LAMBDA_CONTAINER</code> and <code>ARM_LAMBDA_CONTAINER</code>.</p> </li> <li> <p> <code>BUILD_LAMBDA_8GB</code>: Use up to 8 GiB memory for builds. Only available for environment type <code>LINUX_LAMBDA_CONTAINER</code> and <code>ARM_LAMBDA_CONTAINER</code>.</p> </li> <li> <p> <code>BUILD_LAMBDA_10GB</code>: Use up to 10 GiB memory for builds. Only available for environment type <code>LINUX_LAMBDA_CONTAINER</code> and <code>ARM_LAMBDA_CONTAINER</code>.</p> </li> </ul> <p> If you use <code>BUILD_GENERAL1_SMALL</code>: </p> <ul> <li> <p> For environment type <code>LINUX_CONTAINER</code>, you can use up to 4 GiB memory and 2 vCPUs for builds. </p> </li> <li> <p> For environment type <code>LINUX_GPU_CONTAINER</code>, you can use up to 16 GiB memory, 4 vCPUs, and 1 NVIDIA A10G Tensor Core GPU for builds.</p> </li> <li> <p> For environment type <code>ARM_CONTAINER</code>, you can use up to 4 GiB memory and 2 vCPUs on ARM-based processors for builds.</p> </li> </ul> <p> If you use <code>BUILD_GENERAL1_LARGE</code>: </p> <ul> <li> <p> For environment type <code>LINUX_CONTAINER</code>, you can use up to 16 GiB memory and 8 vCPUs for builds. </p> </li> <li> <p> For environment type <code>LINUX_GPU_CONTAINER</code>, you can use up to 255 GiB memory, 32 vCPUs, and 4 NVIDIA Tesla V100 GPUs for builds.</p> </li> <li> <p> For environment type <code>ARM_CONTAINER</code>, you can use up to 16 GiB memory and 8 vCPUs on ARM-based processors for builds.</p> </li> </ul> <p>For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types\">On-demand environment types</a> in the <i>CodeBuild User Guide.</i> </p>
4104
+ compute_configuration: <p>The compute configuration of the compute fleet. This is only required if <code>computeType</code> is set to <code>ATTRIBUTE_BASED_COMPUTE</code> or <code>CUSTOM_INSTANCE_TYPE</code>.</p>
4105
+ scaling_configuration: <p>The scaling configuration of the compute fleet.</p>
4106
+ overflow_behavior: <p>The compute fleet overflow behavior.</p> <ul> <li> <p>For overflow behavior <code>QUEUE</code>, your overflow builds need to wait on the existing fleet instance to become available.</p> </li> <li> <p>For overflow behavior <code>ON_DEMAND</code>, your overflow builds run on CodeBuild on-demand.</p> <note> <p>If you choose to set your overflow behavior to on-demand while creating a VPC-connected fleet, make sure that you add the required VPC permissions to your project service role. For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface\">Example policy statement to allow CodeBuild access to Amazon Web Services services required to create a VPC network interface</a>.</p> </note> </li> </ul>
4107
+ proxy_configuration: <p>The proxy configuration of the compute fleet.</p>
4108
+ image_id: <p>The Amazon Machine Image (AMI) of the compute fleet.</p>
4109
+ fleet_service_role: <p>The service role associated with the compute fleet. For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html\"> Allow a user to add a permission policy for a fleet service role</a> in the <i>CodeBuild User Guide</i>.</p>
4110
+ tags: <p>A list of tag key and value pairs associated with this compute fleet.</p> <p>These tags are available for use by Amazon Web Services services that support CodeBuild build project tags.</p>
4111
+
4112
+ Raises:
4113
+ capo_codebuild.errors.account_limit_exceeded_exception.AccountLimitExceededException: <p>An Amazon Web Services service limit was exceeded for the calling Amazon Web Services account.</p>
4114
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
4115
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
4116
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
4117
+ """
4118
+
4119
+ async def _handler(
4120
+ req: "AsyncOperationRequest[capo_codebuild.types.update_fleet_input.UpdateFleetInput]",
4121
+ ) -> AsyncOperationResponse[
4122
+ "capo_codebuild.types.update_fleet_output.UpdateFleetOutput"
4123
+ ]:
4124
+ import capo_codebuild._operations.code_build_20161006.update_fleet
4125
+
4126
+ (
4127
+ output,
4128
+ http_response,
4129
+ ) = await capo_codebuild._operations.code_build_20161006.update_fleet.async_update_fleet(
4130
+ req.options, req.input
4131
+ )
4132
+ return AsyncOperationResponse(output=output, response=http_response)
4133
+
4134
+ interceptors_, options_ = self.operation_options(config_overrides)
4135
+ input_: capo_codebuild.types.update_fleet_input.UpdateFleetInput = {"arn": arn}
4136
+ if base_capacity is not None:
4137
+ input_["base_capacity"] = base_capacity
4138
+ if environment_type is not None:
4139
+ input_["environment_type"] = environment_type
4140
+ if compute_type is not None:
4141
+ input_["compute_type"] = compute_type
4142
+ if compute_configuration is not None:
4143
+ input_["compute_configuration"] = compute_configuration
4144
+ if scaling_configuration is not None:
4145
+ input_["scaling_configuration"] = scaling_configuration
4146
+ if overflow_behavior is not None:
4147
+ input_["overflow_behavior"] = overflow_behavior
4148
+ if vpc_config is not None:
4149
+ input_["vpc_config"] = vpc_config
4150
+ if proxy_configuration is not None:
4151
+ input_["proxy_configuration"] = proxy_configuration
4152
+ if image_id is not None:
4153
+ input_["image_id"] = image_id
4154
+ if fleet_service_role is not None:
4155
+ input_["fleet_service_role"] = fleet_service_role
4156
+ if tags is not None:
4157
+ input_["tags"] = tags
4158
+
4159
+ response = await aexecute_pipeline(
4160
+ AsyncOperationRequest(input=input_, options=options_),
4161
+ handler=_handler,
4162
+ interceptors=list(interceptors_),
4163
+ )
4164
+ await response.response.aclose()
4165
+ return response.output
4166
+
4167
+ async def update_project(
4168
+ self,
4169
+ name: "capo_codebuild.types.non_empty_string.NonEmptyString",
4170
+ *,
4171
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
4172
+ description: Optional[
4173
+ "capo_codebuild.types.project_description.ProjectDescription"
4174
+ ] = None,
4175
+ source: Optional["capo_codebuild.types.project_source.ProjectSource"] = None,
4176
+ secondary_sources: Optional[
4177
+ "capo_codebuild.types.project_sources.ProjectSources"
4178
+ ] = None,
4179
+ source_version: Optional["capo_codebuild.types.string.String"] = None,
4180
+ secondary_source_versions: Optional[
4181
+ "capo_codebuild.types.project_secondary_source_versions.ProjectSecondarySourceVersions"
4182
+ ] = None,
4183
+ artifacts: Optional[
4184
+ "capo_codebuild.types.project_artifacts.ProjectArtifacts"
4185
+ ] = None,
4186
+ secondary_artifacts: Optional[
4187
+ "capo_codebuild.types.project_artifacts_list.ProjectArtifactsList"
4188
+ ] = None,
4189
+ cache: Optional["capo_codebuild.types.project_cache.ProjectCache"] = None,
4190
+ environment: Optional[
4191
+ "capo_codebuild.types.project_environment.ProjectEnvironment"
4192
+ ] = None,
4193
+ service_role: Optional[
4194
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
4195
+ ] = None,
4196
+ timeout_in_minutes: Optional[
4197
+ "capo_codebuild.types.build_time_out.BuildTimeOut"
4198
+ ] = None,
4199
+ queued_timeout_in_minutes: Optional[
4200
+ "capo_codebuild.types.time_out.TimeOut"
4201
+ ] = None,
4202
+ encryption_key: Optional[
4203
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
4204
+ ] = None,
4205
+ tags: Optional["capo_codebuild.types.tag_list.TagList"] = None,
4206
+ vpc_config: Optional["capo_codebuild.types.vpc_config.VpcConfig"] = None,
4207
+ badge_enabled: Optional[
4208
+ "capo_codebuild.types.wrapper_boolean.WrapperBoolean"
4209
+ ] = None,
4210
+ logs_config: Optional["capo_codebuild.types.logs_config.LogsConfig"] = None,
4211
+ file_system_locations: Optional[
4212
+ "capo_codebuild.types.project_file_system_locations.ProjectFileSystemLocations"
4213
+ ] = None,
4214
+ build_batch_config: Optional[
4215
+ "capo_codebuild.types.project_build_batch_config.ProjectBuildBatchConfig"
4216
+ ] = None,
4217
+ concurrent_build_limit: Optional[
4218
+ "capo_codebuild.types.wrapper_int.WrapperInt"
4219
+ ] = None,
4220
+ auto_retry_limit: Optional[
4221
+ "capo_codebuild.types.wrapper_int.WrapperInt"
4222
+ ] = None,
4223
+ ) -> "capo_codebuild.types.update_project_output.UpdateProjectOutput":
4224
+ r"""<p>Changes the settings of a build project.</p>
4225
+
4226
+ Args:
4227
+ name: <p>The name of the build project.</p> <note> <p>You cannot change a build project's name.</p> </note>
4228
+ description: <p>A new or replacement description of the build project.</p>
4229
+ source: <p>Information to be changed about the build input source code for the build project.</p>
4230
+ secondary_sources: <p> An array of <code>ProjectSource</code> objects. </p>
4231
+ source_version: <p> A version of the build input to be built for this project. If not specified, the latest version is used. If specified, it must be one of: </p> <ul> <li> <p>For CodeCommit: the commit ID, branch, or Git tag to use.</p> </li> <li> <p>For GitHub: the commit ID, pull request ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a pull request ID is specified, it must use the format <code>pr/pull-request-ID</code> (for example <code>pr/25</code>). If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p> </li> <li> <p>For GitLab: the commit ID, branch, or Git tag to use.</p> </li> <li> <p>For Bitbucket: the commit ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p> </li> <li> <p>For Amazon S3: the version ID of the object that represents the build input ZIP file to use.</p> </li> </ul> <p> If <code>sourceVersion</code> is specified at the build level, then that version takes precedence over this <code>sourceVersion</code> (at the project level). </p> <p> For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html\">Source Version Sample with CodeBuild</a> in the <i>CodeBuild User Guide</i>. </p>
4232
+ secondary_source_versions: <p> An array of <code>ProjectSourceVersion</code> objects. If <code>secondarySourceVersions</code> is specified at the build level, then they take over these <code>secondarySourceVersions</code> (at the project level). </p>
4233
+ artifacts: <p>Information to be changed about the build output artifacts for the build project.</p>
4234
+ secondary_artifacts: <p> An array of <code>ProjectArtifact</code> objects. </p>
4235
+ cache: <p>Stores recently used information so that it can be quickly accessed at a later time.</p>
4236
+ environment: <p>Information to be changed about the build environment for the build project.</p>
4237
+ service_role: <p>The replacement ARN of the IAM role that enables CodeBuild to interact with dependent Amazon Web Services services on behalf of the Amazon Web Services account.</p>
4238
+ timeout_in_minutes: <p>The replacement value in minutes, from 5 to 2160 (36 hours), for CodeBuild to wait before timing out any related build that did not get marked as completed.</p>
4239
+ queued_timeout_in_minutes: <p> The number of minutes a build is allowed to be queued before it times out. </p>
4240
+ encryption_key: <p>The Key Management Service customer master key (CMK) to be used for encrypting the build output artifacts.</p> <note> <p> You can use a cross-account KMS key to encrypt the build output artifacts if your service role has permission to that key. </p> </note> <p>You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK's alias (using the format <code>alias/<alias-name></code>). </p>
4241
+ tags: <p>An updated list of tag key and value pairs associated with this build project.</p> <p>These tags are available for use by Amazon Web Services services that support CodeBuild build project tags.</p>
4242
+ vpc_config: <p>VpcConfig enables CodeBuild to access resources in an Amazon VPC.</p>
4243
+ badge_enabled: <p>Set this to true to generate a publicly accessible URL for your project's build badge.</p>
4244
+ logs_config: <p> Information about logs for the build project. A project can create logs in CloudWatch Logs, logs in an S3 bucket, or both. </p>
4245
+ file_system_locations: <p> An array of <code>ProjectFileSystemLocation</code> objects for a CodeBuild build project. A <code>ProjectFileSystemLocation</code> object specifies the <code>identifier</code>, <code>location</code>, <code>mountOptions</code>, <code>mountPoint</code>, and <code>type</code> of a file system created using Amazon Elastic File System. </p>
4246
+ concurrent_build_limit: <p>The maximum number of concurrent builds that are allowed for this project.</p> <p>New builds are only started if the current number of builds is less than or equal to this limit. If the current build count meets this limit, new builds are throttled and are not run.</p> <p>To remove this limit, set this value to -1.</p>
4247
+ auto_retry_limit: <p>The maximum number of additional automatic retries after a failed build. For example, if the auto-retry limit is set to 2, CodeBuild will call the <code>RetryBuild</code> API to automatically retry your build for up to 2 additional times.</p>
4248
+
4249
+ Raises:
4250
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
4251
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
4252
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
4253
+ """
4254
+
4255
+ async def _handler(
4256
+ req: "AsyncOperationRequest[capo_codebuild.types.update_project_input.UpdateProjectInput]",
4257
+ ) -> AsyncOperationResponse[
4258
+ "capo_codebuild.types.update_project_output.UpdateProjectOutput"
4259
+ ]:
4260
+ import capo_codebuild._operations.code_build_20161006.update_project
4261
+
4262
+ (
4263
+ output,
4264
+ http_response,
4265
+ ) = await capo_codebuild._operations.code_build_20161006.update_project.async_update_project(
4266
+ req.options, req.input
4267
+ )
4268
+ return AsyncOperationResponse(output=output, response=http_response)
4269
+
4270
+ interceptors_, options_ = self.operation_options(config_overrides)
4271
+ input_: capo_codebuild.types.update_project_input.UpdateProjectInput = {
4272
+ "name": name
4273
+ }
4274
+ if description is not None:
4275
+ input_["description"] = description
4276
+ if source is not None:
4277
+ input_["source"] = source
4278
+ if secondary_sources is not None:
4279
+ input_["secondary_sources"] = secondary_sources
4280
+ if source_version is not None:
4281
+ input_["source_version"] = source_version
4282
+ if secondary_source_versions is not None:
4283
+ input_["secondary_source_versions"] = secondary_source_versions
4284
+ if artifacts is not None:
4285
+ input_["artifacts"] = artifacts
4286
+ if secondary_artifacts is not None:
4287
+ input_["secondary_artifacts"] = secondary_artifacts
4288
+ if cache is not None:
4289
+ input_["cache"] = cache
4290
+ if environment is not None:
4291
+ input_["environment"] = environment
4292
+ if service_role is not None:
4293
+ input_["service_role"] = service_role
4294
+ if timeout_in_minutes is not None:
4295
+ input_["timeout_in_minutes"] = timeout_in_minutes
4296
+ if queued_timeout_in_minutes is not None:
4297
+ input_["queued_timeout_in_minutes"] = queued_timeout_in_minutes
4298
+ if encryption_key is not None:
4299
+ input_["encryption_key"] = encryption_key
4300
+ if tags is not None:
4301
+ input_["tags"] = tags
4302
+ if vpc_config is not None:
4303
+ input_["vpc_config"] = vpc_config
4304
+ if badge_enabled is not None:
4305
+ input_["badge_enabled"] = badge_enabled
4306
+ if logs_config is not None:
4307
+ input_["logs_config"] = logs_config
4308
+ if file_system_locations is not None:
4309
+ input_["file_system_locations"] = file_system_locations
4310
+ if build_batch_config is not None:
4311
+ input_["build_batch_config"] = build_batch_config
4312
+ if concurrent_build_limit is not None:
4313
+ input_["concurrent_build_limit"] = concurrent_build_limit
4314
+ if auto_retry_limit is not None:
4315
+ input_["auto_retry_limit"] = auto_retry_limit
4316
+
4317
+ response = await aexecute_pipeline(
4318
+ AsyncOperationRequest(input=input_, options=options_),
4319
+ handler=_handler,
4320
+ interceptors=list(interceptors_),
4321
+ )
4322
+ await response.response.aclose()
4323
+ return response.output
4324
+
4325
+ async def update_project_visibility(
4326
+ self,
4327
+ project_arn: "capo_codebuild.types.non_empty_string.NonEmptyString",
4328
+ project_visibility: "capo_codebuild.types.project_visibility_type.ProjectVisibilityType",
4329
+ *,
4330
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
4331
+ resource_access_role: Optional[
4332
+ "capo_codebuild.types.non_empty_string.NonEmptyString"
4333
+ ] = None,
4334
+ ) -> "capo_codebuild.types.update_project_visibility_output.UpdateProjectVisibilityOutput":
4335
+ r"""<p>Changes the public visibility for a project. The project's build results, logs, and artifacts are available to the general public. For more information, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/public-builds.html\">Public build projects</a> in the <i>CodeBuild User Guide</i>.</p> <important> <p>The following should be kept in mind when making your projects public:</p> <ul> <li> <p>All of a project's build results, logs, and artifacts, including builds that were run when the project was private, are available to the general public.</p> </li> <li> <p>All build logs and artifacts are available to the public. Environment variables, source code, and other sensitive information may have been output to the build logs and artifacts. You must be careful about what information is output to the build logs. Some best practice are:</p> <ul> <li> <p>Do not store sensitive values in environment variables. We recommend that you use an Amazon EC2 Systems Manager Parameter Store or Secrets Manager to store sensitive values.</p> </li> <li> <p>Follow <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/webhooks.html#webhook-best-practices\">Best practices for using webhooks</a> in the <i>CodeBuild User Guide</i> to limit which entities can trigger a build, and do not store the buildspec in the project itself, to ensure that your webhooks are as secure as possible.</p> </li> </ul> </li> <li> <p>A malicious user can use public builds to distribute malicious artifacts. We recommend that you review all pull requests to verify that the pull request is a legitimate change. We also recommend that you validate any artifacts with their checksums to make sure that the correct artifacts are being downloaded.</p> </li> </ul> </important>
4336
+
4337
+ Args:
4338
+ project_arn: <p>The Amazon Resource Name (ARN) of the build project.</p>
4339
+ resource_access_role: <p>The ARN of the IAM role that enables CodeBuild to access the CloudWatch Logs and Amazon S3 artifacts for the project's builds.</p>
4340
+
4341
+ Raises:
4342
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
4343
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
4344
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
4345
+ """
4346
+
4347
+ async def _handler(
4348
+ req: "AsyncOperationRequest[capo_codebuild.types.update_project_visibility_input.UpdateProjectVisibilityInput]",
4349
+ ) -> AsyncOperationResponse[
4350
+ "capo_codebuild.types.update_project_visibility_output.UpdateProjectVisibilityOutput"
4351
+ ]:
4352
+ import capo_codebuild._operations.code_build_20161006.update_project_visibility
4353
+
4354
+ (
4355
+ output,
4356
+ http_response,
4357
+ ) = await capo_codebuild._operations.code_build_20161006.update_project_visibility.async_update_project_visibility(
4358
+ req.options, req.input
4359
+ )
4360
+ return AsyncOperationResponse(output=output, response=http_response)
4361
+
4362
+ interceptors_, options_ = self.operation_options(config_overrides)
4363
+ input_: capo_codebuild.types.update_project_visibility_input.UpdateProjectVisibilityInput = {
4364
+ "project_arn": project_arn,
4365
+ "project_visibility": project_visibility,
4366
+ }
4367
+ if resource_access_role is not None:
4368
+ input_["resource_access_role"] = resource_access_role
4369
+
4370
+ response = await aexecute_pipeline(
4371
+ AsyncOperationRequest(input=input_, options=options_),
4372
+ handler=_handler,
4373
+ interceptors=list(interceptors_),
4374
+ )
4375
+ await response.response.aclose()
4376
+ return response.output
4377
+
4378
+ async def update_report_group(
4379
+ self,
4380
+ arn: "capo_codebuild.types.non_empty_string.NonEmptyString",
4381
+ *,
4382
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
4383
+ export_config: Optional[
4384
+ "capo_codebuild.types.report_export_config.ReportExportConfig"
4385
+ ] = None,
4386
+ tags: Optional["capo_codebuild.types.tag_list.TagList"] = None,
4387
+ ) -> "capo_codebuild.types.update_report_group_output.UpdateReportGroupOutput":
4388
+ """<p> Updates a report group. </p>
4389
+
4390
+ Args:
4391
+ arn: <p> The ARN of the report group to update. </p>
4392
+ export_config: <p> Used to specify an updated export type. Valid values are: </p> <ul> <li> <p> <code>S3</code>: The report results are exported to an S3 bucket. </p> </li> <li> <p> <code>NO_EXPORT</code>: The report results are not exported. </p> </li> </ul>
4393
+ tags: <p> An updated list of tag key and value pairs associated with this report group. </p> <p>These tags are available for use by Amazon Web Services services that support CodeBuild report group tags.</p>
4394
+
4395
+ Raises:
4396
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
4397
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
4398
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
4399
+ """
4400
+
4401
+ async def _handler(
4402
+ req: "AsyncOperationRequest[capo_codebuild.types.update_report_group_input.UpdateReportGroupInput]",
4403
+ ) -> AsyncOperationResponse[
4404
+ "capo_codebuild.types.update_report_group_output.UpdateReportGroupOutput"
4405
+ ]:
4406
+ import capo_codebuild._operations.code_build_20161006.update_report_group
4407
+
4408
+ (
4409
+ output,
4410
+ http_response,
4411
+ ) = await capo_codebuild._operations.code_build_20161006.update_report_group.async_update_report_group(
4412
+ req.options, req.input
4413
+ )
4414
+ return AsyncOperationResponse(output=output, response=http_response)
4415
+
4416
+ interceptors_, options_ = self.operation_options(config_overrides)
4417
+ input_: capo_codebuild.types.update_report_group_input.UpdateReportGroupInput = {
4418
+ "arn": arn
4419
+ }
4420
+ if export_config is not None:
4421
+ input_["export_config"] = export_config
4422
+ if tags is not None:
4423
+ input_["tags"] = tags
4424
+
4425
+ response = await aexecute_pipeline(
4426
+ AsyncOperationRequest(input=input_, options=options_),
4427
+ handler=_handler,
4428
+ interceptors=list(interceptors_),
4429
+ )
4430
+ await response.response.aclose()
4431
+ return response.output
4432
+
4433
+ async def update_webhook(
4434
+ self,
4435
+ project_name: "capo_codebuild.types.project_name.ProjectName",
4436
+ *,
4437
+ config_overrides: Optional[AsyncCodeBuildClientConfig] = None,
4438
+ branch_filter: Optional["capo_codebuild.types.string.String"] = None,
4439
+ rotate_secret: Optional["capo_codebuild.types.boolean.Boolean"] = None,
4440
+ filter_groups: Optional[
4441
+ "capo_codebuild.types.filter_groups.FilterGroups"
4442
+ ] = None,
4443
+ build_type: Optional[
4444
+ "capo_codebuild.types.webhook_build_type.WebhookBuildType"
4445
+ ] = None,
4446
+ pull_request_build_policy: Optional[
4447
+ "capo_codebuild.types.pull_request_build_policy.PullRequestBuildPolicy"
4448
+ ] = None,
4449
+ ) -> "capo_codebuild.types.update_webhook_output.UpdateWebhookOutput":
4450
+ r"""<p> Updates the webhook associated with an CodeBuild build project. </p> <note> <p> If you use Bitbucket for your repository, <code>rotateSecret</code> is ignored. </p> </note>
4451
+
4452
+ Args:
4453
+ project_name: <p>The name of the CodeBuild project.</p>
4454
+ branch_filter: <p>A regular expression used to determine which repository branches are built when a webhook is triggered. If the name of a branch matches the regular expression, then it is built. If <code>branchFilter</code> is empty, then all branches are built.</p> <note> <p> It is recommended that you use <code>filterGroups</code> instead of <code>branchFilter</code>. </p> </note>
4455
+ rotate_secret: <p> A boolean value that specifies whether the associated GitHub repository's secret token should be updated. If you use Bitbucket for your repository, <code>rotateSecret</code> is ignored. </p>
4456
+ filter_groups: <p> An array of arrays of <code>WebhookFilter</code> objects used to determine if a webhook event can trigger a build. A filter group must contain at least one <code>EVENT</code> <code>WebhookFilter</code>. </p>
4457
+ build_type: <p>Specifies the type of build this webhook will trigger.</p> <note> <p> <code>RUNNER_BUILDKITE_BUILD</code> is only available for <code>NO_SOURCE</code> source type projects configured for Buildkite runner builds. For more information about CodeBuild-hosted Buildkite runner builds, see <a href=\"https://docs.aws.amazon.com/codebuild/latest/userguide/sample-runner-buildkite.html\">Tutorial: Configure a CodeBuild-hosted Buildkite runner</a> in the <i>CodeBuild user guide</i>.</p> </note>
4458
+ pull_request_build_policy: <p>A PullRequestBuildPolicy object that defines comment-based approval requirements for triggering builds on pull requests. This policy helps control when automated builds are executed based on contributor permissions and approval workflows.</p>
4459
+
4460
+ Raises:
4461
+ capo_codebuild.errors.invalid_input_exception.InvalidInputException: <p>The input value that was provided is not valid.</p>
4462
+ capo_codebuild.errors.o_auth_provider_exception.OAuthProviderException: <p>There was a problem with the underlying OAuth provider.</p>
4463
+ capo_codebuild.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified Amazon Web Services resource cannot be found.</p>
4464
+ capo_codebuild.errors.UnknownServiceError: The service returned an error code this client does not model.
4465
+ """
4466
+
4467
+ async def _handler(
4468
+ req: "AsyncOperationRequest[capo_codebuild.types.update_webhook_input.UpdateWebhookInput]",
4469
+ ) -> AsyncOperationResponse[
4470
+ "capo_codebuild.types.update_webhook_output.UpdateWebhookOutput"
4471
+ ]:
4472
+ import capo_codebuild._operations.code_build_20161006.update_webhook
4473
+
4474
+ (
4475
+ output,
4476
+ http_response,
4477
+ ) = await capo_codebuild._operations.code_build_20161006.update_webhook.async_update_webhook(
4478
+ req.options, req.input
4479
+ )
4480
+ return AsyncOperationResponse(output=output, response=http_response)
4481
+
4482
+ interceptors_, options_ = self.operation_options(config_overrides)
4483
+ input_: capo_codebuild.types.update_webhook_input.UpdateWebhookInput = {
4484
+ "project_name": project_name
4485
+ }
4486
+ if branch_filter is not None:
4487
+ input_["branch_filter"] = branch_filter
4488
+ if rotate_secret is not None:
4489
+ input_["rotate_secret"] = rotate_secret
4490
+ if filter_groups is not None:
4491
+ input_["filter_groups"] = filter_groups
4492
+ if build_type is not None:
4493
+ input_["build_type"] = build_type
4494
+ if pull_request_build_policy is not None:
4495
+ input_["pull_request_build_policy"] = pull_request_build_policy
4496
+
4497
+ response = await aexecute_pipeline(
4498
+ AsyncOperationRequest(input=input_, options=options_),
4499
+ handler=_handler,
4500
+ interceptors=list(interceptors_),
4501
+ )
4502
+ await response.response.aclose()
4503
+ return response.output
4504
+
4505
+ async def __aenter__(self) -> Self:
4506
+ return self
4507
+
4508
+ async def __aexit__(self, exc_type: Any, exc: Any, tb: Any):
4509
+ await self._client.aclose()