aws-cdk-lib 2.128.0__py3-none-any.whl → 2.129.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.

Potentially problematic release.


This version of aws-cdk-lib might be problematic. Click here for more details.

Files changed (98) hide show
  1. aws_cdk/__init__.py +2 -10
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.128.0.jsii.tgz → aws-cdk-lib@2.129.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_amazonmq/__init__.py +6 -24
  5. aws_cdk/aws_amplify/__init__.py +1 -2
  6. aws_cdk/aws_appconfig/__init__.py +0 -16
  7. aws_cdk/aws_applicationautoscaling/__init__.py +55 -22
  8. aws_cdk/aws_appstream/__init__.py +14 -14
  9. aws_cdk/aws_appsync/__init__.py +334 -3
  10. aws_cdk/aws_autoscaling/__init__.py +11 -7
  11. aws_cdk/aws_batch/__init__.py +137 -16
  12. aws_cdk/aws_cleanrooms/__init__.py +1 -2
  13. aws_cdk/aws_cloudformation/__init__.py +2 -10
  14. aws_cdk/aws_cloudfront/__init__.py +15 -8
  15. aws_cdk/aws_cloudfront/experimental/__init__.py +22 -0
  16. aws_cdk/aws_cloudfront_origins/__init__.py +332 -0
  17. aws_cdk/aws_cloudtrail/__init__.py +12 -2
  18. aws_cdk/aws_cloudwatch/__init__.py +4 -0
  19. aws_cdk/aws_codepipeline/__init__.py +463 -11
  20. aws_cdk/aws_cognito/__init__.py +0 -9
  21. aws_cdk/aws_config/__init__.py +2 -2
  22. aws_cdk/aws_connect/__init__.py +6 -1
  23. aws_cdk/aws_controltower/__init__.py +527 -7
  24. aws_cdk/aws_datasync/__init__.py +2 -2
  25. aws_cdk/aws_directoryservice/__init__.py +2 -3
  26. aws_cdk/aws_dynamodb/__init__.py +7 -0
  27. aws_cdk/aws_ec2/__init__.py +117 -210
  28. aws_cdk/aws_ecs/__init__.py +537 -3
  29. aws_cdk/aws_eks/__init__.py +1 -1
  30. aws_cdk/aws_elasticache/__init__.py +27 -20
  31. aws_cdk/aws_elasticloadbalancingv2/__init__.py +3 -4
  32. aws_cdk/aws_emr/__init__.py +23 -3
  33. aws_cdk/aws_events_targets/__init__.py +64 -20
  34. aws_cdk/aws_fis/__init__.py +4 -4
  35. aws_cdk/aws_frauddetector/__init__.py +3 -3
  36. aws_cdk/aws_globalaccelerator/__init__.py +2 -6
  37. aws_cdk/aws_glue/__init__.py +84 -55
  38. aws_cdk/aws_groundstation/__init__.py +8 -12
  39. aws_cdk/aws_guardduty/__init__.py +74 -70
  40. aws_cdk/aws_iam/__init__.py +16 -23
  41. aws_cdk/aws_imagebuilder/__init__.py +178 -156
  42. aws_cdk/aws_internetmonitor/__init__.py +12 -10
  43. aws_cdk/aws_iot/__init__.py +17 -10
  44. aws_cdk/aws_iotevents/__init__.py +4 -4
  45. aws_cdk/aws_iotfleetwise/__init__.py +10 -5
  46. aws_cdk/aws_iottwinmaker/__init__.py +3 -5
  47. aws_cdk/aws_iotwireless/__init__.py +35 -23
  48. aws_cdk/aws_kendra/__init__.py +36 -15
  49. aws_cdk/aws_kinesisfirehose/__init__.py +155 -114
  50. aws_cdk/aws_lambda/__init__.py +157 -12
  51. aws_cdk/aws_lambda_nodejs/__init__.py +22 -0
  52. aws_cdk/aws_lightsail/__init__.py +14 -18
  53. aws_cdk/aws_logs/__init__.py +15 -15
  54. aws_cdk/aws_mediaconnect/__init__.py +5 -3
  55. aws_cdk/aws_medialive/__init__.py +3 -12
  56. aws_cdk/aws_mediapackagev2/__init__.py +287 -286
  57. aws_cdk/aws_mediatailor/__init__.py +2 -2
  58. aws_cdk/aws_memorydb/__init__.py +2 -2
  59. aws_cdk/aws_msk/__init__.py +6 -3
  60. aws_cdk/aws_mwaa/__init__.py +10 -5
  61. aws_cdk/aws_neptunegraph/__init__.py +84 -66
  62. aws_cdk/aws_networkfirewall/__init__.py +5 -8
  63. aws_cdk/aws_networkmanager/__init__.py +3 -3
  64. aws_cdk/aws_nimblestudio/__init__.py +2 -4
  65. aws_cdk/aws_opensearchservice/__init__.py +6 -7
  66. aws_cdk/aws_osis/__init__.py +1 -3
  67. aws_cdk/aws_pinpoint/__init__.py +5 -5
  68. aws_cdk/aws_pipes/__init__.py +5 -5
  69. aws_cdk/aws_quicksight/__init__.py +5 -10
  70. aws_cdk/aws_rds/__init__.py +38 -21
  71. aws_cdk/aws_redshift/__init__.py +9 -5
  72. aws_cdk/aws_redshiftserverless/__init__.py +62 -38
  73. aws_cdk/aws_rolesanywhere/__init__.py +41 -53
  74. aws_cdk/aws_route53/__init__.py +532 -6
  75. aws_cdk/aws_route53recoverycontrol/__init__.py +1 -3
  76. aws_cdk/aws_route53recoveryreadiness/__init__.py +2 -2
  77. aws_cdk/aws_route53resolver/__init__.py +1 -4
  78. aws_cdk/aws_s3/__init__.py +3 -1
  79. aws_cdk/aws_s3objectlambda/__init__.py +7 -4
  80. aws_cdk/aws_s3outposts/__init__.py +1 -1
  81. aws_cdk/aws_sagemaker/__init__.py +111 -11
  82. aws_cdk/aws_servicecatalogappregistry/__init__.py +3 -3
  83. aws_cdk/aws_sns/__init__.py +185 -38
  84. aws_cdk/aws_ssm/__init__.py +16 -16
  85. aws_cdk/aws_ssmincidents/__init__.py +1 -1
  86. aws_cdk/aws_synthetics/__init__.py +94 -21
  87. aws_cdk/aws_verifiedpermissions/__init__.py +1 -2
  88. aws_cdk/aws_vpclattice/__init__.py +8 -4
  89. aws_cdk/aws_wafv2/__init__.py +14 -59
  90. aws_cdk/aws_workspaces/__init__.py +5 -4
  91. aws_cdk/aws_workspacesweb/__init__.py +6 -12
  92. aws_cdk/triggers/__init__.py +22 -0
  93. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/METADATA +1 -1
  94. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/RECORD +98 -98
  95. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/LICENSE +0 -0
  96. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/NOTICE +0 -0
  97. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/WHEEL +0 -0
  98. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/top_level.txt +0 -0
@@ -2303,7 +2303,9 @@ class CfnPipeline(
2303
2303
  ):
2304
2304
  '''The ``AWS::CodePipeline::Pipeline`` resource creates a CodePipeline pipeline that describes how software changes go through a release process.
2305
2305
 
2306
- For more information, see `What Is CodePipeline? <https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html>`_ in the *AWS CodePipeline User Guide* .
2306
+ For more information, see `What Is CodePipeline? <https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html>`_ in the *CodePipeline User Guide* .
2307
+
2308
+ For an example in YAML and JSON that contains the parameters in this reference, see `Examples <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#aws-resource-codepipeline-pipeline--examples>`_ .
2307
2309
 
2308
2310
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html
2309
2311
  :cloudformationResource: AWS::CodePipeline::Pipeline
@@ -2379,6 +2381,7 @@ class CfnPipeline(
2379
2381
  reason="reason",
2380
2382
  stage_name="stageName"
2381
2383
  )],
2384
+ execution_mode="executionMode",
2382
2385
  name="name",
2383
2386
  pipeline_type="pipelineType",
2384
2387
  restart_execution_on_update=False,
@@ -2394,7 +2397,26 @@ class CfnPipeline(
2394
2397
  source_action_name="sourceActionName",
2395
2398
 
2396
2399
  # the properties below are optional
2400
+ pull_request=[codepipeline.CfnPipeline.GitPullRequestFilterProperty(
2401
+ branches=codepipeline.CfnPipeline.GitBranchFilterCriteriaProperty(
2402
+ excludes=["excludes"],
2403
+ includes=["includes"]
2404
+ ),
2405
+ events=["events"],
2406
+ file_paths=codepipeline.CfnPipeline.GitFilePathFilterCriteriaProperty(
2407
+ excludes=["excludes"],
2408
+ includes=["includes"]
2409
+ )
2410
+ )],
2397
2411
  push=[codepipeline.CfnPipeline.GitPushFilterProperty(
2412
+ branches=codepipeline.CfnPipeline.GitBranchFilterCriteriaProperty(
2413
+ excludes=["excludes"],
2414
+ includes=["includes"]
2415
+ ),
2416
+ file_paths=codepipeline.CfnPipeline.GitFilePathFilterCriteriaProperty(
2417
+ excludes=["excludes"],
2418
+ includes=["includes"]
2419
+ ),
2398
2420
  tags=codepipeline.CfnPipeline.GitTagFilterCriteriaProperty(
2399
2421
  excludes=["excludes"],
2400
2422
  includes=["includes"]
@@ -2422,6 +2444,7 @@ class CfnPipeline(
2422
2444
  artifact_store: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnPipeline.ArtifactStoreProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2423
2445
  artifact_stores: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnPipeline.ArtifactStoreMapProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
2424
2446
  disable_inbound_stage_transitions: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnPipeline.StageTransitionProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
2447
+ execution_mode: typing.Optional[builtins.str] = None,
2425
2448
  name: typing.Optional[builtins.str] = None,
2426
2449
  pipeline_type: typing.Optional[builtins.str] = None,
2427
2450
  restart_execution_on_update: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
@@ -2437,8 +2460,9 @@ class CfnPipeline(
2437
2460
  :param artifact_store: The S3 bucket where artifacts for the pipeline are stored. .. epigraph:: You must include either ``artifactStore`` or ``artifactStores`` in your pipeline, but you cannot use both. If you create a cross-region action in your pipeline, you must use ``artifactStores`` .
2438
2461
  :param artifact_stores: A mapping of ``artifactStore`` objects and their corresponding AWS Regions. There must be an artifact store for the pipeline Region and for each cross-region action in the pipeline. .. epigraph:: You must include either ``artifactStore`` or ``artifactStores`` in your pipeline, but you cannot use both. If you create a cross-region action in your pipeline, you must use ``artifactStores`` .
2439
2462
  :param disable_inbound_stage_transitions: Represents the input of a ``DisableStageTransition`` action.
2463
+ :param execution_mode: The method that the pipeline will use to handle multiple executions. The default mode is SUPERSEDED.
2440
2464
  :param name: The name of the pipeline.
2441
- :param pipeline_type: CodePipeline provides the following pipeline types, which differ in characteristics and price, so that you can tailor your pipeline features and cost to the needs of your applications. - V1 type pipelines have a JSON structure that contains standard pipeline, stage, and action-level parameters. - V2 type pipelines have the same structure as a V1 type, along with additional parameters for release safety and trigger configuration. .. epigraph:: Including V2 parameters, such as triggers on Git tags, in the pipeline JSON when creating or updating a pipeline will result in the pipeline having the V2 type of pipeline and the associated costs. For information about pricing for CodePipeline, see `Pricing <https://docs.aws.amazon.com/https://aws.amazon.com/codepipeline/pricing/>`_ . For information about which type of pipeline to choose, see `What type of pipeline is right for me? <https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-types-planning.html>`_ .
2465
+ :param pipeline_type: CodePipeline provides the following pipeline types, which differ in characteristics and price, so that you can tailor your pipeline features and cost to the needs of your applications. - V1 type pipelines have a JSON structure that contains standard pipeline, stage, and action-level parameters. - V2 type pipelines have the same structure as a V1 type, along with additional parameters for release safety and trigger configuration. .. epigraph:: Including V2 parameters, such as triggers on Git tags, in the pipeline JSON when creating or updating a pipeline will result in the pipeline having the V2 type of pipeline and the associated costs. For information about pricing for CodePipeline, see `Pricing <https://docs.aws.amazon.com/codepipeline/pricing/>`_ . For information about which type of pipeline to choose, see `What type of pipeline is right for me? <https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-types-planning.html>`_ .
2442
2466
  :param restart_execution_on_update: Indicates whether to rerun the CodePipeline pipeline after you update it.
2443
2467
  :param tags: Specifies the tags applied to the pipeline.
2444
2468
  :param triggers: The trigger configuration specifying a type of event, such as Git tags, that starts the pipeline. .. epigraph:: When a trigger configuration is specified, default change detection for repository and branch commits is disabled.
@@ -2454,6 +2478,7 @@ class CfnPipeline(
2454
2478
  artifact_store=artifact_store,
2455
2479
  artifact_stores=artifact_stores,
2456
2480
  disable_inbound_stage_transitions=disable_inbound_stage_transitions,
2481
+ execution_mode=execution_mode,
2457
2482
  name=name,
2458
2483
  pipeline_type=pipeline_type,
2459
2484
  restart_execution_on_update=restart_execution_on_update,
@@ -2611,6 +2636,19 @@ class CfnPipeline(
2611
2636
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2612
2637
  jsii.set(self, "disableInboundStageTransitions", value)
2613
2638
 
2639
+ @builtins.property
2640
+ @jsii.member(jsii_name="executionMode")
2641
+ def execution_mode(self) -> typing.Optional[builtins.str]:
2642
+ '''The method that the pipeline will use to handle multiple executions.'''
2643
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "executionMode"))
2644
+
2645
+ @execution_mode.setter
2646
+ def execution_mode(self, value: typing.Optional[builtins.str]) -> None:
2647
+ if __debug__:
2648
+ type_hints = typing.get_type_hints(_typecheckingstub__472d85ae1c4eb5d13c62e60f6347b15da6be45b950e9ce0ab0c5a3d67951fda0)
2649
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2650
+ jsii.set(self, "executionMode", value)
2651
+
2614
2652
  @builtins.property
2615
2653
  @jsii.member(jsii_name="name")
2616
2654
  def name(self) -> typing.Optional[builtins.str]:
@@ -2735,6 +2773,10 @@ class CfnPipeline(
2735
2773
  ) -> None:
2736
2774
  '''Represents information about an action declaration.
2737
2775
 
2776
+ .. epigraph::
2777
+
2778
+ Documentation for the ``timeoutInMinutes`` parameter in the ``ActionDeclaration`` is not yet available for CloudFormation and CDK resources in CodePipeline. For more information about the configurable timeout for manual approval actions, see the `ActionDeclaration <https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_ActionDeclaration.html>`_ in the CodePipeline API Reference.
2779
+
2738
2780
  :param action_type_id: Specifies the action type and the provider of the action.
2739
2781
  :param name: The action declaration's name.
2740
2782
  :param configuration: The action's configuration. These are key-value pairs that specify input values for an action. For more information, see `Action Structure Requirements in CodePipeline <https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#action-requirements>`_ . For the list of configuration properties for the AWS CloudFormation action type in CodePipeline, see `Configuration Properties Reference <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/continuous-delivery-codepipeline-action-reference.html>`_ in the *AWS CloudFormation User Guide* . For template snippets with examples, see `Using Parameter Override Functions with CodePipeline Pipelines <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/continuous-delivery-codepipeline-parameter-override-functions.html>`_ in the *AWS CloudFormation User Guide* . The values can be represented in either JSON or YAML format. For example, the JSON configuration item format is as follows: *JSON:* ``"Configuration" : { Key : Value },``
@@ -3384,16 +3426,91 @@ class CfnPipeline(
3384
3426
  k + "=" + repr(v) for k, v in self._values.items()
3385
3427
  )
3386
3428
 
3429
+ @jsii.data_type(
3430
+ jsii_type="aws-cdk-lib.aws_codepipeline.CfnPipeline.GitBranchFilterCriteriaProperty",
3431
+ jsii_struct_bases=[],
3432
+ name_mapping={"excludes": "excludes", "includes": "includes"},
3433
+ )
3434
+ class GitBranchFilterCriteriaProperty:
3435
+ def __init__(
3436
+ self,
3437
+ *,
3438
+ excludes: typing.Optional[typing.Sequence[builtins.str]] = None,
3439
+ includes: typing.Optional[typing.Sequence[builtins.str]] = None,
3440
+ ) -> None:
3441
+ '''The Git repository branches specified as filter criteria to start the pipeline.
3442
+
3443
+ :param excludes: The list of patterns of Git branches that, when a commit is pushed, are to be excluded from starting the pipeline.
3444
+ :param includes: The list of patterns of Git branches that, when a commit is pushed, are to be included as criteria that starts the pipeline.
3445
+
3446
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-gitbranchfiltercriteria.html
3447
+ :exampleMetadata: fixture=_generated
3448
+
3449
+ Example::
3450
+
3451
+ # The code below shows an example of how to instantiate this type.
3452
+ # The values are placeholders you should change.
3453
+ from aws_cdk import aws_codepipeline as codepipeline
3454
+
3455
+ git_branch_filter_criteria_property = codepipeline.CfnPipeline.GitBranchFilterCriteriaProperty(
3456
+ excludes=["excludes"],
3457
+ includes=["includes"]
3458
+ )
3459
+ '''
3460
+ if __debug__:
3461
+ type_hints = typing.get_type_hints(_typecheckingstub__1d236727cda322520f3a703d9e848a434f71ca107e953aec5359ac063333d29b)
3462
+ check_type(argname="argument excludes", value=excludes, expected_type=type_hints["excludes"])
3463
+ check_type(argname="argument includes", value=includes, expected_type=type_hints["includes"])
3464
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
3465
+ if excludes is not None:
3466
+ self._values["excludes"] = excludes
3467
+ if includes is not None:
3468
+ self._values["includes"] = includes
3469
+
3470
+ @builtins.property
3471
+ def excludes(self) -> typing.Optional[typing.List[builtins.str]]:
3472
+ '''The list of patterns of Git branches that, when a commit is pushed, are to be excluded from starting the pipeline.
3473
+
3474
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-gitbranchfiltercriteria.html#cfn-codepipeline-pipeline-gitbranchfiltercriteria-excludes
3475
+ '''
3476
+ result = self._values.get("excludes")
3477
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
3478
+
3479
+ @builtins.property
3480
+ def includes(self) -> typing.Optional[typing.List[builtins.str]]:
3481
+ '''The list of patterns of Git branches that, when a commit is pushed, are to be included as criteria that starts the pipeline.
3482
+
3483
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-gitbranchfiltercriteria.html#cfn-codepipeline-pipeline-gitbranchfiltercriteria-includes
3484
+ '''
3485
+ result = self._values.get("includes")
3486
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
3487
+
3488
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3489
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3490
+
3491
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3492
+ return not (rhs == self)
3493
+
3494
+ def __repr__(self) -> str:
3495
+ return "GitBranchFilterCriteriaProperty(%s)" % ", ".join(
3496
+ k + "=" + repr(v) for k, v in self._values.items()
3497
+ )
3498
+
3387
3499
  @jsii.data_type(
3388
3500
  jsii_type="aws-cdk-lib.aws_codepipeline.CfnPipeline.GitConfigurationProperty",
3389
3501
  jsii_struct_bases=[],
3390
- name_mapping={"source_action_name": "sourceActionName", "push": "push"},
3502
+ name_mapping={
3503
+ "source_action_name": "sourceActionName",
3504
+ "pull_request": "pullRequest",
3505
+ "push": "push",
3506
+ },
3391
3507
  )
3392
3508
  class GitConfigurationProperty:
3393
3509
  def __init__(
3394
3510
  self,
3395
3511
  *,
3396
3512
  source_action_name: builtins.str,
3513
+ pull_request: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnPipeline.GitPullRequestFilterProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
3397
3514
  push: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnPipeline.GitPushFilterProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
3398
3515
  ) -> None:
3399
3516
  '''A type of trigger configuration for Git-based source actions.
@@ -3403,7 +3520,8 @@ class CfnPipeline(
3403
3520
  You can specify the Git configuration trigger type for all third-party Git-based source actions that are supported by the ``CodeStarSourceConnection`` action type.
3404
3521
 
3405
3522
  :param source_action_name: The name of the pipeline source action where the trigger configuration, such as Git tags, is specified. The trigger configuration will start the pipeline upon the specified change only. .. epigraph:: You can only specify one trigger configuration per source action.
3406
- :param push: The field where the repository event that will start the pipeline, such as pushing Git tags, is specified with details. .. epigraph:: Git tags is the only supported event type.
3523
+ :param pull_request: The field where the repository event that will start the pipeline is specified as pull requests.
3524
+ :param push: The field where the repository event that will start the pipeline, such as pushing Git tags, is specified with details.
3407
3525
 
3408
3526
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-gitconfiguration.html
3409
3527
  :exampleMetadata: fixture=_generated
@@ -3418,7 +3536,26 @@ class CfnPipeline(
3418
3536
  source_action_name="sourceActionName",
3419
3537
 
3420
3538
  # the properties below are optional
3539
+ pull_request=[codepipeline.CfnPipeline.GitPullRequestFilterProperty(
3540
+ branches=codepipeline.CfnPipeline.GitBranchFilterCriteriaProperty(
3541
+ excludes=["excludes"],
3542
+ includes=["includes"]
3543
+ ),
3544
+ events=["events"],
3545
+ file_paths=codepipeline.CfnPipeline.GitFilePathFilterCriteriaProperty(
3546
+ excludes=["excludes"],
3547
+ includes=["includes"]
3548
+ )
3549
+ )],
3421
3550
  push=[codepipeline.CfnPipeline.GitPushFilterProperty(
3551
+ branches=codepipeline.CfnPipeline.GitBranchFilterCriteriaProperty(
3552
+ excludes=["excludes"],
3553
+ includes=["includes"]
3554
+ ),
3555
+ file_paths=codepipeline.CfnPipeline.GitFilePathFilterCriteriaProperty(
3556
+ excludes=["excludes"],
3557
+ includes=["includes"]
3558
+ ),
3422
3559
  tags=codepipeline.CfnPipeline.GitTagFilterCriteriaProperty(
3423
3560
  excludes=["excludes"],
3424
3561
  includes=["includes"]
@@ -3429,10 +3566,13 @@ class CfnPipeline(
3429
3566
  if __debug__:
3430
3567
  type_hints = typing.get_type_hints(_typecheckingstub__76ac16c602eb78041b136170e0877a83865ceb0c0c451b7e61c00366edce50a8)
3431
3568
  check_type(argname="argument source_action_name", value=source_action_name, expected_type=type_hints["source_action_name"])
3569
+ check_type(argname="argument pull_request", value=pull_request, expected_type=type_hints["pull_request"])
3432
3570
  check_type(argname="argument push", value=push, expected_type=type_hints["push"])
3433
3571
  self._values: typing.Dict[builtins.str, typing.Any] = {
3434
3572
  "source_action_name": source_action_name,
3435
3573
  }
3574
+ if pull_request is not None:
3575
+ self._values["pull_request"] = pull_request
3436
3576
  if push is not None:
3437
3577
  self._values["push"] = push
3438
3578
 
@@ -3451,16 +3591,23 @@ class CfnPipeline(
3451
3591
  assert result is not None, "Required property 'source_action_name' is missing"
3452
3592
  return typing.cast(builtins.str, result)
3453
3593
 
3594
+ @builtins.property
3595
+ def pull_request(
3596
+ self,
3597
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnPipeline.GitPullRequestFilterProperty"]]]]:
3598
+ '''The field where the repository event that will start the pipeline is specified as pull requests.
3599
+
3600
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-gitconfiguration.html#cfn-codepipeline-pipeline-gitconfiguration-pullrequest
3601
+ '''
3602
+ result = self._values.get("pull_request")
3603
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnPipeline.GitPullRequestFilterProperty"]]]], result)
3604
+
3454
3605
  @builtins.property
3455
3606
  def push(
3456
3607
  self,
3457
3608
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnPipeline.GitPushFilterProperty"]]]]:
3458
3609
  '''The field where the repository event that will start the pipeline, such as pushing Git tags, is specified with details.
3459
3610
 
3460
- .. epigraph::
3461
-
3462
- Git tags is the only supported event type.
3463
-
3464
3611
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-gitconfiguration.html#cfn-codepipeline-pipeline-gitconfiguration-push
3465
3612
  '''
3466
3613
  result = self._values.get("push")
@@ -3477,19 +3624,196 @@ class CfnPipeline(
3477
3624
  k + "=" + repr(v) for k, v in self._values.items()
3478
3625
  )
3479
3626
 
3627
+ @jsii.data_type(
3628
+ jsii_type="aws-cdk-lib.aws_codepipeline.CfnPipeline.GitFilePathFilterCriteriaProperty",
3629
+ jsii_struct_bases=[],
3630
+ name_mapping={"excludes": "excludes", "includes": "includes"},
3631
+ )
3632
+ class GitFilePathFilterCriteriaProperty:
3633
+ def __init__(
3634
+ self,
3635
+ *,
3636
+ excludes: typing.Optional[typing.Sequence[builtins.str]] = None,
3637
+ includes: typing.Optional[typing.Sequence[builtins.str]] = None,
3638
+ ) -> None:
3639
+ '''The Git repository file paths specified as filter criteria to start the pipeline.
3640
+
3641
+ :param excludes: The list of patterns of Git repository file paths that, when a commit is pushed, are to be excluded from starting the pipeline.
3642
+ :param includes: The list of patterns of Git repository file paths that, when a commit is pushed, are to be included as criteria that starts the pipeline.
3643
+
3644
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-gitfilepathfiltercriteria.html
3645
+ :exampleMetadata: fixture=_generated
3646
+
3647
+ Example::
3648
+
3649
+ # The code below shows an example of how to instantiate this type.
3650
+ # The values are placeholders you should change.
3651
+ from aws_cdk import aws_codepipeline as codepipeline
3652
+
3653
+ git_file_path_filter_criteria_property = codepipeline.CfnPipeline.GitFilePathFilterCriteriaProperty(
3654
+ excludes=["excludes"],
3655
+ includes=["includes"]
3656
+ )
3657
+ '''
3658
+ if __debug__:
3659
+ type_hints = typing.get_type_hints(_typecheckingstub__6e825f3cafba918e1c84a158f90d3bcbd543fab5a2e3990e2677d0de4ad794df)
3660
+ check_type(argname="argument excludes", value=excludes, expected_type=type_hints["excludes"])
3661
+ check_type(argname="argument includes", value=includes, expected_type=type_hints["includes"])
3662
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
3663
+ if excludes is not None:
3664
+ self._values["excludes"] = excludes
3665
+ if includes is not None:
3666
+ self._values["includes"] = includes
3667
+
3668
+ @builtins.property
3669
+ def excludes(self) -> typing.Optional[typing.List[builtins.str]]:
3670
+ '''The list of patterns of Git repository file paths that, when a commit is pushed, are to be excluded from starting the pipeline.
3671
+
3672
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-gitfilepathfiltercriteria.html#cfn-codepipeline-pipeline-gitfilepathfiltercriteria-excludes
3673
+ '''
3674
+ result = self._values.get("excludes")
3675
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
3676
+
3677
+ @builtins.property
3678
+ def includes(self) -> typing.Optional[typing.List[builtins.str]]:
3679
+ '''The list of patterns of Git repository file paths that, when a commit is pushed, are to be included as criteria that starts the pipeline.
3680
+
3681
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-gitfilepathfiltercriteria.html#cfn-codepipeline-pipeline-gitfilepathfiltercriteria-includes
3682
+ '''
3683
+ result = self._values.get("includes")
3684
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
3685
+
3686
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3687
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3688
+
3689
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3690
+ return not (rhs == self)
3691
+
3692
+ def __repr__(self) -> str:
3693
+ return "GitFilePathFilterCriteriaProperty(%s)" % ", ".join(
3694
+ k + "=" + repr(v) for k, v in self._values.items()
3695
+ )
3696
+
3697
+ @jsii.data_type(
3698
+ jsii_type="aws-cdk-lib.aws_codepipeline.CfnPipeline.GitPullRequestFilterProperty",
3699
+ jsii_struct_bases=[],
3700
+ name_mapping={
3701
+ "branches": "branches",
3702
+ "events": "events",
3703
+ "file_paths": "filePaths",
3704
+ },
3705
+ )
3706
+ class GitPullRequestFilterProperty:
3707
+ def __init__(
3708
+ self,
3709
+ *,
3710
+ branches: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnPipeline.GitBranchFilterCriteriaProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3711
+ events: typing.Optional[typing.Sequence[builtins.str]] = None,
3712
+ file_paths: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnPipeline.GitFilePathFilterCriteriaProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3713
+ ) -> None:
3714
+ '''The event criteria for the pull request trigger configuration, such as the lists of branches or file paths to include and exclude.
3715
+
3716
+ :param branches: The field that specifies to filter on branches for the pull request trigger configuration.
3717
+ :param events: The field that specifies which pull request events to filter on (opened, updated, closed) for the trigger configuration.
3718
+ :param file_paths: The field that specifies to filter on file paths for the pull request trigger configuration.
3719
+
3720
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-gitpullrequestfilter.html
3721
+ :exampleMetadata: fixture=_generated
3722
+
3723
+ Example::
3724
+
3725
+ # The code below shows an example of how to instantiate this type.
3726
+ # The values are placeholders you should change.
3727
+ from aws_cdk import aws_codepipeline as codepipeline
3728
+
3729
+ git_pull_request_filter_property = codepipeline.CfnPipeline.GitPullRequestFilterProperty(
3730
+ branches=codepipeline.CfnPipeline.GitBranchFilterCriteriaProperty(
3731
+ excludes=["excludes"],
3732
+ includes=["includes"]
3733
+ ),
3734
+ events=["events"],
3735
+ file_paths=codepipeline.CfnPipeline.GitFilePathFilterCriteriaProperty(
3736
+ excludes=["excludes"],
3737
+ includes=["includes"]
3738
+ )
3739
+ )
3740
+ '''
3741
+ if __debug__:
3742
+ type_hints = typing.get_type_hints(_typecheckingstub__bd17e19e4fde95da653023de121d5f908ce71830fcd4cd84611c860dd5585932)
3743
+ check_type(argname="argument branches", value=branches, expected_type=type_hints["branches"])
3744
+ check_type(argname="argument events", value=events, expected_type=type_hints["events"])
3745
+ check_type(argname="argument file_paths", value=file_paths, expected_type=type_hints["file_paths"])
3746
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
3747
+ if branches is not None:
3748
+ self._values["branches"] = branches
3749
+ if events is not None:
3750
+ self._values["events"] = events
3751
+ if file_paths is not None:
3752
+ self._values["file_paths"] = file_paths
3753
+
3754
+ @builtins.property
3755
+ def branches(
3756
+ self,
3757
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnPipeline.GitBranchFilterCriteriaProperty"]]:
3758
+ '''The field that specifies to filter on branches for the pull request trigger configuration.
3759
+
3760
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-gitpullrequestfilter.html#cfn-codepipeline-pipeline-gitpullrequestfilter-branches
3761
+ '''
3762
+ result = self._values.get("branches")
3763
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnPipeline.GitBranchFilterCriteriaProperty"]], result)
3764
+
3765
+ @builtins.property
3766
+ def events(self) -> typing.Optional[typing.List[builtins.str]]:
3767
+ '''The field that specifies which pull request events to filter on (opened, updated, closed) for the trigger configuration.
3768
+
3769
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-gitpullrequestfilter.html#cfn-codepipeline-pipeline-gitpullrequestfilter-events
3770
+ '''
3771
+ result = self._values.get("events")
3772
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
3773
+
3774
+ @builtins.property
3775
+ def file_paths(
3776
+ self,
3777
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnPipeline.GitFilePathFilterCriteriaProperty"]]:
3778
+ '''The field that specifies to filter on file paths for the pull request trigger configuration.
3779
+
3780
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-gitpullrequestfilter.html#cfn-codepipeline-pipeline-gitpullrequestfilter-filepaths
3781
+ '''
3782
+ result = self._values.get("file_paths")
3783
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnPipeline.GitFilePathFilterCriteriaProperty"]], result)
3784
+
3785
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3786
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3787
+
3788
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3789
+ return not (rhs == self)
3790
+
3791
+ def __repr__(self) -> str:
3792
+ return "GitPullRequestFilterProperty(%s)" % ", ".join(
3793
+ k + "=" + repr(v) for k, v in self._values.items()
3794
+ )
3795
+
3480
3796
  @jsii.data_type(
3481
3797
  jsii_type="aws-cdk-lib.aws_codepipeline.CfnPipeline.GitPushFilterProperty",
3482
3798
  jsii_struct_bases=[],
3483
- name_mapping={"tags": "tags"},
3799
+ name_mapping={
3800
+ "branches": "branches",
3801
+ "file_paths": "filePaths",
3802
+ "tags": "tags",
3803
+ },
3484
3804
  )
3485
3805
  class GitPushFilterProperty:
3486
3806
  def __init__(
3487
3807
  self,
3488
3808
  *,
3809
+ branches: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnPipeline.GitBranchFilterCriteriaProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3810
+ file_paths: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnPipeline.GitFilePathFilterCriteriaProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3489
3811
  tags: typing.Optional[typing.Union["CfnPipeline.GitTagFilterCriteriaProperty", typing.Dict[builtins.str, typing.Any]]] = None,
3490
3812
  ) -> None:
3491
3813
  '''The event criteria that specify when a specified repository event will start the pipeline for the specified trigger configuration, such as the lists of Git tags to include and exclude.
3492
3814
 
3815
+ :param branches: The field that specifies to filter on branches for the push trigger configuration.
3816
+ :param file_paths: The field that specifies to filter on file paths for the push trigger configuration.
3493
3817
  :param tags: The field that contains the details for the Git tags trigger configuration.
3494
3818
 
3495
3819
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-gitpushfilter.html
@@ -3502,6 +3826,14 @@ class CfnPipeline(
3502
3826
  from aws_cdk import aws_codepipeline as codepipeline
3503
3827
 
3504
3828
  git_push_filter_property = codepipeline.CfnPipeline.GitPushFilterProperty(
3829
+ branches=codepipeline.CfnPipeline.GitBranchFilterCriteriaProperty(
3830
+ excludes=["excludes"],
3831
+ includes=["includes"]
3832
+ ),
3833
+ file_paths=codepipeline.CfnPipeline.GitFilePathFilterCriteriaProperty(
3834
+ excludes=["excludes"],
3835
+ includes=["includes"]
3836
+ ),
3505
3837
  tags=codepipeline.CfnPipeline.GitTagFilterCriteriaProperty(
3506
3838
  excludes=["excludes"],
3507
3839
  includes=["includes"]
@@ -3512,11 +3844,39 @@ class CfnPipeline(
3512
3844
  tags = CfnPipeline.GitTagFilterCriteriaProperty(**tags)
3513
3845
  if __debug__:
3514
3846
  type_hints = typing.get_type_hints(_typecheckingstub__aace18192e6436301eeae21b4cd59bd8cb01b53eb17f6fcb74599b2f74f9ebd0)
3847
+ check_type(argname="argument branches", value=branches, expected_type=type_hints["branches"])
3848
+ check_type(argname="argument file_paths", value=file_paths, expected_type=type_hints["file_paths"])
3515
3849
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
3516
3850
  self._values: typing.Dict[builtins.str, typing.Any] = {}
3851
+ if branches is not None:
3852
+ self._values["branches"] = branches
3853
+ if file_paths is not None:
3854
+ self._values["file_paths"] = file_paths
3517
3855
  if tags is not None:
3518
3856
  self._values["tags"] = tags
3519
3857
 
3858
+ @builtins.property
3859
+ def branches(
3860
+ self,
3861
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnPipeline.GitBranchFilterCriteriaProperty"]]:
3862
+ '''The field that specifies to filter on branches for the push trigger configuration.
3863
+
3864
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-gitpushfilter.html#cfn-codepipeline-pipeline-gitpushfilter-branches
3865
+ '''
3866
+ result = self._values.get("branches")
3867
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnPipeline.GitBranchFilterCriteriaProperty"]], result)
3868
+
3869
+ @builtins.property
3870
+ def file_paths(
3871
+ self,
3872
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnPipeline.GitFilePathFilterCriteriaProperty"]]:
3873
+ '''The field that specifies to filter on file paths for the push trigger configuration.
3874
+
3875
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-gitpushfilter.html#cfn-codepipeline-pipeline-gitpushfilter-filepaths
3876
+ '''
3877
+ result = self._values.get("file_paths")
3878
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnPipeline.GitFilePathFilterCriteriaProperty"]], result)
3879
+
3520
3880
  @builtins.property
3521
3881
  def tags(self) -> typing.Optional["CfnPipeline.GitTagFilterCriteriaProperty"]:
3522
3882
  '''The field that contains the details for the Git tags trigger configuration.
@@ -3760,7 +4120,26 @@ class CfnPipeline(
3760
4120
  source_action_name="sourceActionName",
3761
4121
 
3762
4122
  # the properties below are optional
4123
+ pull_request=[codepipeline.CfnPipeline.GitPullRequestFilterProperty(
4124
+ branches=codepipeline.CfnPipeline.GitBranchFilterCriteriaProperty(
4125
+ excludes=["excludes"],
4126
+ includes=["includes"]
4127
+ ),
4128
+ events=["events"],
4129
+ file_paths=codepipeline.CfnPipeline.GitFilePathFilterCriteriaProperty(
4130
+ excludes=["excludes"],
4131
+ includes=["includes"]
4132
+ )
4133
+ )],
3763
4134
  push=[codepipeline.CfnPipeline.GitPushFilterProperty(
4135
+ branches=codepipeline.CfnPipeline.GitBranchFilterCriteriaProperty(
4136
+ excludes=["excludes"],
4137
+ includes=["includes"]
4138
+ ),
4139
+ file_paths=codepipeline.CfnPipeline.GitFilePathFilterCriteriaProperty(
4140
+ excludes=["excludes"],
4141
+ includes=["includes"]
4142
+ ),
3764
4143
  tags=codepipeline.CfnPipeline.GitTagFilterCriteriaProperty(
3765
4144
  excludes=["excludes"],
3766
4145
  includes=["includes"]
@@ -4101,6 +4480,7 @@ class CfnPipeline(
4101
4480
  "artifact_store": "artifactStore",
4102
4481
  "artifact_stores": "artifactStores",
4103
4482
  "disable_inbound_stage_transitions": "disableInboundStageTransitions",
4483
+ "execution_mode": "executionMode",
4104
4484
  "name": "name",
4105
4485
  "pipeline_type": "pipelineType",
4106
4486
  "restart_execution_on_update": "restartExecutionOnUpdate",
@@ -4118,6 +4498,7 @@ class CfnPipelineProps:
4118
4498
  artifact_store: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPipeline.ArtifactStoreProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4119
4499
  artifact_stores: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPipeline.ArtifactStoreMapProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
4120
4500
  disable_inbound_stage_transitions: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPipeline.StageTransitionProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
4501
+ execution_mode: typing.Optional[builtins.str] = None,
4121
4502
  name: typing.Optional[builtins.str] = None,
4122
4503
  pipeline_type: typing.Optional[builtins.str] = None,
4123
4504
  restart_execution_on_update: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
@@ -4132,8 +4513,9 @@ class CfnPipelineProps:
4132
4513
  :param artifact_store: The S3 bucket where artifacts for the pipeline are stored. .. epigraph:: You must include either ``artifactStore`` or ``artifactStores`` in your pipeline, but you cannot use both. If you create a cross-region action in your pipeline, you must use ``artifactStores`` .
4133
4514
  :param artifact_stores: A mapping of ``artifactStore`` objects and their corresponding AWS Regions. There must be an artifact store for the pipeline Region and for each cross-region action in the pipeline. .. epigraph:: You must include either ``artifactStore`` or ``artifactStores`` in your pipeline, but you cannot use both. If you create a cross-region action in your pipeline, you must use ``artifactStores`` .
4134
4515
  :param disable_inbound_stage_transitions: Represents the input of a ``DisableStageTransition`` action.
4516
+ :param execution_mode: The method that the pipeline will use to handle multiple executions. The default mode is SUPERSEDED.
4135
4517
  :param name: The name of the pipeline.
4136
- :param pipeline_type: CodePipeline provides the following pipeline types, which differ in characteristics and price, so that you can tailor your pipeline features and cost to the needs of your applications. - V1 type pipelines have a JSON structure that contains standard pipeline, stage, and action-level parameters. - V2 type pipelines have the same structure as a V1 type, along with additional parameters for release safety and trigger configuration. .. epigraph:: Including V2 parameters, such as triggers on Git tags, in the pipeline JSON when creating or updating a pipeline will result in the pipeline having the V2 type of pipeline and the associated costs. For information about pricing for CodePipeline, see `Pricing <https://docs.aws.amazon.com/https://aws.amazon.com/codepipeline/pricing/>`_ . For information about which type of pipeline to choose, see `What type of pipeline is right for me? <https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-types-planning.html>`_ .
4518
+ :param pipeline_type: CodePipeline provides the following pipeline types, which differ in characteristics and price, so that you can tailor your pipeline features and cost to the needs of your applications. - V1 type pipelines have a JSON structure that contains standard pipeline, stage, and action-level parameters. - V2 type pipelines have the same structure as a V1 type, along with additional parameters for release safety and trigger configuration. .. epigraph:: Including V2 parameters, such as triggers on Git tags, in the pipeline JSON when creating or updating a pipeline will result in the pipeline having the V2 type of pipeline and the associated costs. For information about pricing for CodePipeline, see `Pricing <https://docs.aws.amazon.com/codepipeline/pricing/>`_ . For information about which type of pipeline to choose, see `What type of pipeline is right for me? <https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-types-planning.html>`_ .
4137
4519
  :param restart_execution_on_update: Indicates whether to rerun the CodePipeline pipeline after you update it.
4138
4520
  :param tags: Specifies the tags applied to the pipeline.
4139
4521
  :param triggers: The trigger configuration specifying a type of event, such as Git tags, that starts the pipeline. .. epigraph:: When a trigger configuration is specified, default change detection for repository and branch commits is disabled.
@@ -4212,6 +4594,7 @@ class CfnPipelineProps:
4212
4594
  reason="reason",
4213
4595
  stage_name="stageName"
4214
4596
  )],
4597
+ execution_mode="executionMode",
4215
4598
  name="name",
4216
4599
  pipeline_type="pipelineType",
4217
4600
  restart_execution_on_update=False,
@@ -4227,7 +4610,26 @@ class CfnPipelineProps:
4227
4610
  source_action_name="sourceActionName",
4228
4611
 
4229
4612
  # the properties below are optional
4613
+ pull_request=[codepipeline.CfnPipeline.GitPullRequestFilterProperty(
4614
+ branches=codepipeline.CfnPipeline.GitBranchFilterCriteriaProperty(
4615
+ excludes=["excludes"],
4616
+ includes=["includes"]
4617
+ ),
4618
+ events=["events"],
4619
+ file_paths=codepipeline.CfnPipeline.GitFilePathFilterCriteriaProperty(
4620
+ excludes=["excludes"],
4621
+ includes=["includes"]
4622
+ )
4623
+ )],
4230
4624
  push=[codepipeline.CfnPipeline.GitPushFilterProperty(
4625
+ branches=codepipeline.CfnPipeline.GitBranchFilterCriteriaProperty(
4626
+ excludes=["excludes"],
4627
+ includes=["includes"]
4628
+ ),
4629
+ file_paths=codepipeline.CfnPipeline.GitFilePathFilterCriteriaProperty(
4630
+ excludes=["excludes"],
4631
+ includes=["includes"]
4632
+ ),
4231
4633
  tags=codepipeline.CfnPipeline.GitTagFilterCriteriaProperty(
4232
4634
  excludes=["excludes"],
4233
4635
  includes=["includes"]
@@ -4251,6 +4653,7 @@ class CfnPipelineProps:
4251
4653
  check_type(argname="argument artifact_store", value=artifact_store, expected_type=type_hints["artifact_store"])
4252
4654
  check_type(argname="argument artifact_stores", value=artifact_stores, expected_type=type_hints["artifact_stores"])
4253
4655
  check_type(argname="argument disable_inbound_stage_transitions", value=disable_inbound_stage_transitions, expected_type=type_hints["disable_inbound_stage_transitions"])
4656
+ check_type(argname="argument execution_mode", value=execution_mode, expected_type=type_hints["execution_mode"])
4254
4657
  check_type(argname="argument name", value=name, expected_type=type_hints["name"])
4255
4658
  check_type(argname="argument pipeline_type", value=pipeline_type, expected_type=type_hints["pipeline_type"])
4256
4659
  check_type(argname="argument restart_execution_on_update", value=restart_execution_on_update, expected_type=type_hints["restart_execution_on_update"])
@@ -4267,6 +4670,8 @@ class CfnPipelineProps:
4267
4670
  self._values["artifact_stores"] = artifact_stores
4268
4671
  if disable_inbound_stage_transitions is not None:
4269
4672
  self._values["disable_inbound_stage_transitions"] = disable_inbound_stage_transitions
4673
+ if execution_mode is not None:
4674
+ self._values["execution_mode"] = execution_mode
4270
4675
  if name is not None:
4271
4676
  self._values["name"] = name
4272
4677
  if pipeline_type is not None:
@@ -4344,6 +4749,17 @@ class CfnPipelineProps:
4344
4749
  result = self._values.get("disable_inbound_stage_transitions")
4345
4750
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnPipeline.StageTransitionProperty]]]], result)
4346
4751
 
4752
+ @builtins.property
4753
+ def execution_mode(self) -> typing.Optional[builtins.str]:
4754
+ '''The method that the pipeline will use to handle multiple executions.
4755
+
4756
+ The default mode is SUPERSEDED.
4757
+
4758
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-executionmode
4759
+ '''
4760
+ result = self._values.get("execution_mode")
4761
+ return typing.cast(typing.Optional[builtins.str], result)
4762
+
4347
4763
  @builtins.property
4348
4764
  def name(self) -> typing.Optional[builtins.str]:
4349
4765
  '''The name of the pipeline.
@@ -4364,7 +4780,7 @@ class CfnPipelineProps:
4364
4780
 
4365
4781
  Including V2 parameters, such as triggers on Git tags, in the pipeline JSON when creating or updating a pipeline will result in the pipeline having the V2 type of pipeline and the associated costs.
4366
4782
 
4367
- For information about pricing for CodePipeline, see `Pricing <https://docs.aws.amazon.com/https://aws.amazon.com/codepipeline/pricing/>`_ .
4783
+ For information about pricing for CodePipeline, see `Pricing <https://docs.aws.amazon.com/codepipeline/pricing/>`_ .
4368
4784
 
4369
4785
  For information about which type of pipeline to choose, see `What type of pipeline is right for me? <https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-types-planning.html>`_ .
4370
4786
 
@@ -8802,6 +9218,7 @@ def _typecheckingstub__43ae22b404f50a75462f3d5423718be3ca300d4e4e15354489d856039
8802
9218
  artifact_store: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPipeline.ArtifactStoreProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8803
9219
  artifact_stores: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPipeline.ArtifactStoreMapProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
8804
9220
  disable_inbound_stage_transitions: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPipeline.StageTransitionProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
9221
+ execution_mode: typing.Optional[builtins.str] = None,
8805
9222
  name: typing.Optional[builtins.str] = None,
8806
9223
  pipeline_type: typing.Optional[builtins.str] = None,
8807
9224
  restart_execution_on_update: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
@@ -8854,6 +9271,12 @@ def _typecheckingstub__a8171e6979490d73c864965d74418184aa66850b94084357d00f5bac7
8854
9271
  """Type checking stubs"""
8855
9272
  pass
8856
9273
 
9274
+ def _typecheckingstub__472d85ae1c4eb5d13c62e60f6347b15da6be45b950e9ce0ab0c5a3d67951fda0(
9275
+ value: typing.Optional[builtins.str],
9276
+ ) -> None:
9277
+ """Type checking stubs"""
9278
+ pass
9279
+
8857
9280
  def _typecheckingstub__2b2610baf2075574499b5c3a30d307e832f359e9aa154becdcd51b0b886e97cf(
8858
9281
  value: typing.Optional[builtins.str],
8859
9282
  ) -> None:
@@ -8948,16 +9371,44 @@ def _typecheckingstub__947de613103ce26163068b14d3b93b5c2d7f86d29fa6fc5cbd1509b11
8948
9371
  """Type checking stubs"""
8949
9372
  pass
8950
9373
 
9374
+ def _typecheckingstub__1d236727cda322520f3a703d9e848a434f71ca107e953aec5359ac063333d29b(
9375
+ *,
9376
+ excludes: typing.Optional[typing.Sequence[builtins.str]] = None,
9377
+ includes: typing.Optional[typing.Sequence[builtins.str]] = None,
9378
+ ) -> None:
9379
+ """Type checking stubs"""
9380
+ pass
9381
+
8951
9382
  def _typecheckingstub__76ac16c602eb78041b136170e0877a83865ceb0c0c451b7e61c00366edce50a8(
8952
9383
  *,
8953
9384
  source_action_name: builtins.str,
9385
+ pull_request: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPipeline.GitPullRequestFilterProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
8954
9386
  push: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPipeline.GitPushFilterProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
8955
9387
  ) -> None:
8956
9388
  """Type checking stubs"""
8957
9389
  pass
8958
9390
 
9391
+ def _typecheckingstub__6e825f3cafba918e1c84a158f90d3bcbd543fab5a2e3990e2677d0de4ad794df(
9392
+ *,
9393
+ excludes: typing.Optional[typing.Sequence[builtins.str]] = None,
9394
+ includes: typing.Optional[typing.Sequence[builtins.str]] = None,
9395
+ ) -> None:
9396
+ """Type checking stubs"""
9397
+ pass
9398
+
9399
+ def _typecheckingstub__bd17e19e4fde95da653023de121d5f908ce71830fcd4cd84611c860dd5585932(
9400
+ *,
9401
+ branches: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPipeline.GitBranchFilterCriteriaProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
9402
+ events: typing.Optional[typing.Sequence[builtins.str]] = None,
9403
+ file_paths: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPipeline.GitFilePathFilterCriteriaProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
9404
+ ) -> None:
9405
+ """Type checking stubs"""
9406
+ pass
9407
+
8959
9408
  def _typecheckingstub__aace18192e6436301eeae21b4cd59bd8cb01b53eb17f6fcb74599b2f74f9ebd0(
8960
9409
  *,
9410
+ branches: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPipeline.GitBranchFilterCriteriaProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
9411
+ file_paths: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPipeline.GitFilePathFilterCriteriaProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8961
9412
  tags: typing.Optional[typing.Union[CfnPipeline.GitTagFilterCriteriaProperty, typing.Dict[builtins.str, typing.Any]]] = None,
8962
9413
  ) -> None:
8963
9414
  """Type checking stubs"""
@@ -9026,6 +9477,7 @@ def _typecheckingstub__34b7cf6aaa1cc98db41892b9b8499f74092bf6b5f7f4050d1bd7642f7
9026
9477
  artifact_store: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPipeline.ArtifactStoreProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
9027
9478
  artifact_stores: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPipeline.ArtifactStoreMapProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
9028
9479
  disable_inbound_stage_transitions: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPipeline.StageTransitionProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
9480
+ execution_mode: typing.Optional[builtins.str] = None,
9029
9481
  name: typing.Optional[builtins.str] = None,
9030
9482
  pipeline_type: typing.Optional[builtins.str] = None,
9031
9483
  restart_execution_on_update: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,