aws-sdk-codebuild 1.26.0 → 1.27.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 66ac4fba1022bf1ec84ee65427e43b9241464608
4
- data.tar.gz: fd958b52922e6c1d5d48c0c997a2d31fe595a79a
3
+ metadata.gz: d0216b4491357ea89b8cc3cc8f7a8b0f0cdf51d9
4
+ data.tar.gz: fdb81b9cee2e4cee36c55e02fba69b0f73e6f348
5
5
  SHA512:
6
- metadata.gz: 4018b1397738d878765a96faf7882846b5affba35a6560b9b9d7fd50971a76e5177a2204cef571e739613d1fae9d72e4c3f7ddee8798a296ed9a2c6a5f8db7ca
7
- data.tar.gz: 6f1f5deabfc179d6a29992feec67510d86ae0f2f419b858e55c8064229c6d5ca17f54aec591561169f083f55bb150860cccdaf8db0856f0e2556758695b89f81
6
+ metadata.gz: 765c5db3eb04d2a16db558634946e9eab3a719054402912a947365f416ee458c705bf4317328783b9818334146661a76bf2199a9da646937d936b21d74944f73
7
+ data.tar.gz: 9d1b055295c05f49f838045230630cfbcc14c673dc161539ff77ba9dcdb6a4d012e9e6ee6da53fb2fbbd7287fcadc1f7275dcd067852045f8d47a7591ee31101
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-codebuild/customizations'
42
42
  # @service
43
43
  module Aws::CodeBuild
44
44
 
45
- GEM_VERSION = '1.26.0'
45
+ GEM_VERSION = '1.27.0'
46
46
 
47
47
  end
@@ -708,6 +708,11 @@ module Aws::CodeBuild
708
708
  # resp.projects[0].webhook.payload_url #=> String
709
709
  # resp.projects[0].webhook.secret #=> String
710
710
  # resp.projects[0].webhook.branch_filter #=> String
711
+ # resp.projects[0].webhook.filter_groups #=> Array
712
+ # resp.projects[0].webhook.filter_groups[0] #=> Array
713
+ # resp.projects[0].webhook.filter_groups[0][0].type #=> String, one of "EVENT", "BASE_REF", "HEAD_REF", "ACTOR_ACCOUNT_ID", "FILE_PATH"
714
+ # resp.projects[0].webhook.filter_groups[0][0].pattern #=> String
715
+ # resp.projects[0].webhook.filter_groups[0][0].exclude_matched_pattern #=> Boolean
711
716
  # resp.projects[0].webhook.last_modified_secret #=> Time
712
717
  # resp.projects[0].vpc_config.vpc_id #=> String
713
718
  # resp.projects[0].vpc_config.subnets #=> Array
@@ -778,6 +783,11 @@ module Aws::CodeBuild
778
783
  # The AWS Key Management Service (AWS KMS) customer master key (CMK) to
779
784
  # be used for encrypting the build output artifacts.
780
785
  #
786
+ # <note markdown="1"> You can use a cross-account KMS key to encrypt the build output
787
+ # artifacts if your service role has permission to that key.
788
+ #
789
+ # </note>
790
+ #
781
791
  # You can specify either the Amazon Resource Name (ARN) of the CMK or,
782
792
  # if available, the CMK's alias (using the format `alias/alias-name `).
783
793
  #
@@ -982,6 +992,11 @@ module Aws::CodeBuild
982
992
  # resp.project.webhook.payload_url #=> String
983
993
  # resp.project.webhook.secret #=> String
984
994
  # resp.project.webhook.branch_filter #=> String
995
+ # resp.project.webhook.filter_groups #=> Array
996
+ # resp.project.webhook.filter_groups[0] #=> Array
997
+ # resp.project.webhook.filter_groups[0][0].type #=> String, one of "EVENT", "BASE_REF", "HEAD_REF", "ACTOR_ACCOUNT_ID", "FILE_PATH"
998
+ # resp.project.webhook.filter_groups[0][0].pattern #=> String
999
+ # resp.project.webhook.filter_groups[0][0].exclude_matched_pattern #=> Boolean
985
1000
  # resp.project.webhook.last_modified_secret #=> Time
986
1001
  # resp.project.vpc_config.vpc_id #=> String
987
1002
  # resp.project.vpc_config.subnets #=> Array
@@ -1021,7 +1036,7 @@ module Aws::CodeBuild
1021
1036
  #
1022
1037
  #
1023
1038
  #
1024
- # [1]: http://docs.aws.amazon.com/codebuild/latest/userguide/change-project.html#change-project-console
1039
+ # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/change-project.html#change-project-console
1025
1040
  #
1026
1041
  # @option params [required, String] :project_name
1027
1042
  # The name of the AWS CodeBuild project.
@@ -1032,6 +1047,20 @@ module Aws::CodeBuild
1032
1047
  # regular expression, then it is built. If `branchFilter` is empty, then
1033
1048
  # all branches are built.
1034
1049
  #
1050
+ # <note markdown="1"> It is recommended that you use `filterGroups` instead of
1051
+ # `branchFilter`.
1052
+ #
1053
+ # </note>
1054
+ #
1055
+ # @option params [Array<Array>] :filter_groups
1056
+ # An array of arrays of `WebhookFilter` objects used to determine which
1057
+ # webhooks are triggered. At least one `WebhookFilter` in the array must
1058
+ # specify `EVENT` as its `type`.
1059
+ #
1060
+ # For a build to be triggered, at least one filter group in the
1061
+ # `filterGroups` array must pass. For a filter group to pass, each of
1062
+ # its filters must pass.
1063
+ #
1035
1064
  # @return [Types::CreateWebhookOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1036
1065
  #
1037
1066
  # * {Types::CreateWebhookOutput#webhook #webhook} => Types::Webhook
@@ -1041,6 +1070,15 @@ module Aws::CodeBuild
1041
1070
  # resp = client.create_webhook({
1042
1071
  # project_name: "ProjectName", # required
1043
1072
  # branch_filter: "String",
1073
+ # filter_groups: [
1074
+ # [
1075
+ # {
1076
+ # type: "EVENT", # required, accepts EVENT, BASE_REF, HEAD_REF, ACTOR_ACCOUNT_ID, FILE_PATH
1077
+ # pattern: "String", # required
1078
+ # exclude_matched_pattern: false,
1079
+ # },
1080
+ # ],
1081
+ # ],
1044
1082
  # })
1045
1083
  #
1046
1084
  # @example Response structure
@@ -1049,6 +1087,11 @@ module Aws::CodeBuild
1049
1087
  # resp.webhook.payload_url #=> String
1050
1088
  # resp.webhook.secret #=> String
1051
1089
  # resp.webhook.branch_filter #=> String
1090
+ # resp.webhook.filter_groups #=> Array
1091
+ # resp.webhook.filter_groups[0] #=> Array
1092
+ # resp.webhook.filter_groups[0][0].type #=> String, one of "EVENT", "BASE_REF", "HEAD_REF", "ACTOR_ACCOUNT_ID", "FILE_PATH"
1093
+ # resp.webhook.filter_groups[0][0].pattern #=> String
1094
+ # resp.webhook.filter_groups[0][0].exclude_matched_pattern #=> Boolean
1052
1095
  # resp.webhook.last_modified_secret #=> Time
1053
1096
  #
1054
1097
  # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/CreateWebhook AWS API Documentation
@@ -1930,11 +1973,16 @@ module Aws::CodeBuild
1930
1973
  # out.
1931
1974
  #
1932
1975
  # @option params [String] :encryption_key
1933
- # The replacement AWS Key Management Service (AWS KMS) customer master
1934
- # key (CMK) to be used for encrypting the build output artifacts.
1976
+ # The AWS Key Management Service (AWS KMS) customer master key (CMK) to
1977
+ # be used for encrypting the build output artifacts.
1935
1978
  #
1936
- # You can specify either the Amazon Resource Name (ARN)of the CMK or, if
1937
- # available, the CMK's alias (using the format `alias/alias-name `).
1979
+ # <note markdown="1"> You can use a cross-account KMS key to encrypt the build output
1980
+ # artifacts if your service role has permission to that key.
1981
+ #
1982
+ # </note>
1983
+ #
1984
+ # You can specify either the Amazon Resource Name (ARN) of the CMK or,
1985
+ # if available, the CMK's alias (using the format `alias/alias-name `).
1938
1986
  #
1939
1987
  # @option params [Array<Types::Tag>] :tags
1940
1988
  # The replacement set of tags for this build project.
@@ -2136,6 +2184,11 @@ module Aws::CodeBuild
2136
2184
  # resp.project.webhook.payload_url #=> String
2137
2185
  # resp.project.webhook.secret #=> String
2138
2186
  # resp.project.webhook.branch_filter #=> String
2187
+ # resp.project.webhook.filter_groups #=> Array
2188
+ # resp.project.webhook.filter_groups[0] #=> Array
2189
+ # resp.project.webhook.filter_groups[0][0].type #=> String, one of "EVENT", "BASE_REF", "HEAD_REF", "ACTOR_ACCOUNT_ID", "FILE_PATH"
2190
+ # resp.project.webhook.filter_groups[0][0].pattern #=> String
2191
+ # resp.project.webhook.filter_groups[0][0].exclude_matched_pattern #=> Boolean
2139
2192
  # resp.project.webhook.last_modified_secret #=> Time
2140
2193
  # resp.project.vpc_config.vpc_id #=> String
2141
2194
  # resp.project.vpc_config.subnets #=> Array
@@ -2174,6 +2227,16 @@ module Aws::CodeBuild
2174
2227
  # regular expression, then it is built. If `branchFilter` is empty, then
2175
2228
  # all branches are built.
2176
2229
  #
2230
+ # <note markdown="1"> It is recommended that you use `filterGroups` instead of
2231
+ # `branchFilter`.
2232
+ #
2233
+ # </note>
2234
+ #
2235
+ # @option params [Array<Array>] :filter_groups
2236
+ # An array of arrays of `WebhookFilter` objects used to determine if a
2237
+ # webhook event can trigger a build. A filter group must pcontain at
2238
+ # least one `EVENT` `WebhookFilter`.
2239
+ #
2177
2240
  # @option params [Boolean] :rotate_secret
2178
2241
  # A boolean value that specifies whether the associated GitHub
2179
2242
  # repository's secret token should be updated. If you use Bitbucket for
@@ -2188,6 +2251,15 @@ module Aws::CodeBuild
2188
2251
  # resp = client.update_webhook({
2189
2252
  # project_name: "ProjectName", # required
2190
2253
  # branch_filter: "String",
2254
+ # filter_groups: [
2255
+ # [
2256
+ # {
2257
+ # type: "EVENT", # required, accepts EVENT, BASE_REF, HEAD_REF, ACTOR_ACCOUNT_ID, FILE_PATH
2258
+ # pattern: "String", # required
2259
+ # exclude_matched_pattern: false,
2260
+ # },
2261
+ # ],
2262
+ # ],
2191
2263
  # rotate_secret: false,
2192
2264
  # })
2193
2265
  #
@@ -2197,6 +2269,11 @@ module Aws::CodeBuild
2197
2269
  # resp.webhook.payload_url #=> String
2198
2270
  # resp.webhook.secret #=> String
2199
2271
  # resp.webhook.branch_filter #=> String
2272
+ # resp.webhook.filter_groups #=> Array
2273
+ # resp.webhook.filter_groups[0] #=> Array
2274
+ # resp.webhook.filter_groups[0][0].type #=> String, one of "EVENT", "BASE_REF", "HEAD_REF", "ACTOR_ACCOUNT_ID", "FILE_PATH"
2275
+ # resp.webhook.filter_groups[0][0].pattern #=> String
2276
+ # resp.webhook.filter_groups[0][0].exclude_matched_pattern #=> Boolean
2200
2277
  # resp.webhook.last_modified_secret #=> Time
2201
2278
  #
2202
2279
  # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/UpdateWebhook AWS API Documentation
@@ -2221,7 +2298,7 @@ module Aws::CodeBuild
2221
2298
  params: params,
2222
2299
  config: config)
2223
2300
  context[:gem_name] = 'aws-sdk-codebuild'
2224
- context[:gem_version] = '1.26.0'
2301
+ context[:gem_version] = '1.27.0'
2225
2302
  Seahorse::Client::Request.new(handlers, context)
2226
2303
  end
2227
2304
 
@@ -57,6 +57,8 @@ module Aws::CodeBuild
57
57
  EnvironmentVariable = Shapes::StructureShape.new(name: 'EnvironmentVariable')
58
58
  EnvironmentVariableType = Shapes::StringShape.new(name: 'EnvironmentVariableType')
59
59
  EnvironmentVariables = Shapes::ListShape.new(name: 'EnvironmentVariables')
60
+ FilterGroup = Shapes::ListShape.new(name: 'FilterGroup')
61
+ FilterGroups = Shapes::ListShape.new(name: 'FilterGroups')
60
62
  GitCloneDepth = Shapes::IntegerShape.new(name: 'GitCloneDepth')
61
63
  ImagePullCredentialsType = Shapes::StringShape.new(name: 'ImagePullCredentialsType')
62
64
  ImageVersions = Shapes::ListShape.new(name: 'ImageVersions')
@@ -132,6 +134,8 @@ module Aws::CodeBuild
132
134
  ValueInput = Shapes::StringShape.new(name: 'ValueInput')
133
135
  VpcConfig = Shapes::StructureShape.new(name: 'VpcConfig')
134
136
  Webhook = Shapes::StructureShape.new(name: 'Webhook')
137
+ WebhookFilter = Shapes::StructureShape.new(name: 'WebhookFilter')
138
+ WebhookFilterType = Shapes::StringShape.new(name: 'WebhookFilterType')
135
139
  WrapperBoolean = Shapes::BooleanShape.new(name: 'WrapperBoolean')
136
140
  WrapperInt = Shapes::IntegerShape.new(name: 'WrapperInt')
137
141
  WrapperLong = Shapes::IntegerShape.new(name: 'WrapperLong')
@@ -243,6 +247,7 @@ module Aws::CodeBuild
243
247
 
244
248
  CreateWebhookInput.add_member(:project_name, Shapes::ShapeRef.new(shape: ProjectName, required: true, location_name: "projectName"))
245
249
  CreateWebhookInput.add_member(:branch_filter, Shapes::ShapeRef.new(shape: String, location_name: "branchFilter"))
250
+ CreateWebhookInput.add_member(:filter_groups, Shapes::ShapeRef.new(shape: FilterGroups, location_name: "filterGroups"))
246
251
  CreateWebhookInput.struct_class = Types::CreateWebhookInput
247
252
 
248
253
  CreateWebhookOutput.add_member(:webhook, Shapes::ShapeRef.new(shape: Webhook, location_name: "webhook"))
@@ -290,6 +295,10 @@ module Aws::CodeBuild
290
295
 
291
296
  EnvironmentVariables.member = Shapes::ShapeRef.new(shape: EnvironmentVariable)
292
297
 
298
+ FilterGroup.member = Shapes::ShapeRef.new(shape: WebhookFilter)
299
+
300
+ FilterGroups.member = Shapes::ShapeRef.new(shape: FilterGroup)
301
+
293
302
  ImageVersions.member = Shapes::ShapeRef.new(shape: String)
294
303
 
295
304
  ImportSourceCredentialsInput.add_member(:username, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "username"))
@@ -529,6 +538,7 @@ module Aws::CodeBuild
529
538
 
530
539
  UpdateWebhookInput.add_member(:project_name, Shapes::ShapeRef.new(shape: ProjectName, required: true, location_name: "projectName"))
531
540
  UpdateWebhookInput.add_member(:branch_filter, Shapes::ShapeRef.new(shape: String, location_name: "branchFilter"))
541
+ UpdateWebhookInput.add_member(:filter_groups, Shapes::ShapeRef.new(shape: FilterGroups, location_name: "filterGroups"))
532
542
  UpdateWebhookInput.add_member(:rotate_secret, Shapes::ShapeRef.new(shape: Boolean, location_name: "rotateSecret"))
533
543
  UpdateWebhookInput.struct_class = Types::UpdateWebhookInput
534
544
 
@@ -544,9 +554,15 @@ module Aws::CodeBuild
544
554
  Webhook.add_member(:payload_url, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "payloadUrl"))
545
555
  Webhook.add_member(:secret, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "secret"))
546
556
  Webhook.add_member(:branch_filter, Shapes::ShapeRef.new(shape: String, location_name: "branchFilter"))
557
+ Webhook.add_member(:filter_groups, Shapes::ShapeRef.new(shape: FilterGroups, location_name: "filterGroups"))
547
558
  Webhook.add_member(:last_modified_secret, Shapes::ShapeRef.new(shape: Timestamp, location_name: "lastModifiedSecret"))
548
559
  Webhook.struct_class = Types::Webhook
549
560
 
561
+ WebhookFilter.add_member(:type, Shapes::ShapeRef.new(shape: WebhookFilterType, required: true, location_name: "type"))
562
+ WebhookFilter.add_member(:pattern, Shapes::ShapeRef.new(shape: String, required: true, location_name: "pattern"))
563
+ WebhookFilter.add_member(:exclude_matched_pattern, Shapes::ShapeRef.new(shape: WrapperBoolean, location_name: "excludeMatchedPattern"))
564
+ WebhookFilter.struct_class = Types::WebhookFilter
565
+
550
566
 
551
567
  # @api private
552
568
  API = Seahorse::Model::Api.new.tap do |api|
@@ -274,9 +274,14 @@ module Aws::CodeBuild
274
274
  # The AWS Key Management Service (AWS KMS) customer master key (CMK)
275
275
  # to be used for encrypting the build output artifacts.
276
276
  #
277
- # This is expressed either as the Amazon Resource Name (ARN) of the
278
- # CMK or, if specified, the CMK's alias (using the format
279
- # `alias/alias-name `).
277
+ # <note markdown="1"> You can use a cross-account KMS key to encrypt the build output
278
+ # artifacts if your service role has permission to that key.
279
+ #
280
+ # </note>
281
+ #
282
+ # You can specify either the Amazon Resource Name (ARN) of the CMK or,
283
+ # if available, the CMK's alias (using the format `alias/alias-name
284
+ # `).
280
285
  # @return [String]
281
286
  #
282
287
  # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/Build AWS API Documentation
@@ -502,7 +507,7 @@ module Aws::CodeBuild
502
507
  #
503
508
  #
504
509
  #
505
- # [1]: http://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html
510
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html
506
511
  # @return [String]
507
512
  #
508
513
  # @!attribute [rw] stream_name
@@ -511,7 +516,7 @@ module Aws::CodeBuild
511
516
  #
512
517
  #
513
518
  #
514
- # [1]: http://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html
519
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html
515
520
  # @return [String]
516
521
  #
517
522
  # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/CloudWatchLogsConfig AWS API Documentation
@@ -687,6 +692,11 @@ module Aws::CodeBuild
687
692
  # The AWS Key Management Service (AWS KMS) customer master key (CMK)
688
693
  # to be used for encrypting the build output artifacts.
689
694
  #
695
+ # <note markdown="1"> You can use a cross-account KMS key to encrypt the build output
696
+ # artifacts if your service role has permission to that key.
697
+ #
698
+ # </note>
699
+ #
690
700
  # You can specify either the Amazon Resource Name (ARN) of the CMK or,
691
701
  # if available, the CMK's alias (using the format `alias/alias-name
692
702
  # `).
@@ -754,6 +764,15 @@ module Aws::CodeBuild
754
764
  # {
755
765
  # project_name: "ProjectName", # required
756
766
  # branch_filter: "String",
767
+ # filter_groups: [
768
+ # [
769
+ # {
770
+ # type: "EVENT", # required, accepts EVENT, BASE_REF, HEAD_REF, ACTOR_ACCOUNT_ID, FILE_PATH
771
+ # pattern: "String", # required
772
+ # exclude_matched_pattern: false,
773
+ # },
774
+ # ],
775
+ # ],
757
776
  # }
758
777
  #
759
778
  # @!attribute [rw] project_name
@@ -765,13 +784,29 @@ module Aws::CodeBuild
765
784
  # built when a webhook is triggered. If the name of a branch matches
766
785
  # the regular expression, then it is built. If `branchFilter` is
767
786
  # empty, then all branches are built.
787
+ #
788
+ # <note markdown="1"> It is recommended that you use `filterGroups` instead of
789
+ # `branchFilter`.
790
+ #
791
+ # </note>
768
792
  # @return [String]
769
793
  #
794
+ # @!attribute [rw] filter_groups
795
+ # An array of arrays of `WebhookFilter` objects used to determine
796
+ # which webhooks are triggered. At least one `WebhookFilter` in the
797
+ # array must specify `EVENT` as its `type`.
798
+ #
799
+ # For a build to be triggered, at least one filter group in the
800
+ # `filterGroups` array must pass. For a filter group to pass, each of
801
+ # its filters must pass.
802
+ # @return [Array<Array<Types::WebhookFilter>>]
803
+ #
770
804
  # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/CreateWebhookInput AWS API Documentation
771
805
  #
772
806
  class CreateWebhookInput < Struct.new(
773
807
  :project_name,
774
- :branch_filter)
808
+ :branch_filter,
809
+ :filter_groups)
775
810
  include Aws::Structure
776
811
  end
777
812
 
@@ -1439,9 +1474,14 @@ module Aws::CodeBuild
1439
1474
  # The AWS Key Management Service (AWS KMS) customer master key (CMK)
1440
1475
  # to be used for encrypting the build output artifacts.
1441
1476
  #
1442
- # This is expressed either as the Amazon Resource Name (ARN) of the
1443
- # CMK or, if specified, the CMK's alias (using the format
1444
- # `alias/alias-name `).
1477
+ # <note markdown="1"> You can use a cross-account KMS key to encrypt the build output
1478
+ # artifacts if your service role has permission to that key.
1479
+ #
1480
+ # </note>
1481
+ #
1482
+ # You can specify either the Amazon Resource Name (ARN) of the CMK or,
1483
+ # if available, the CMK's alias (using the format `alias/alias-name
1484
+ # `).
1445
1485
  # @return [String]
1446
1486
  #
1447
1487
  # @!attribute [rw] tags
@@ -2053,11 +2093,11 @@ module Aws::CodeBuild
2053
2093
  # * images cannot be curated or an Amazon ECR image.
2054
2094
  #
2055
2095
  # For more information, see [Private Registry with AWS Secrets Manager
2056
- # Samle for AWS CodeBuild][1].
2096
+ # Sample for AWS CodeBuild][1].
2057
2097
  #
2058
2098
  #
2059
2099
  #
2060
- # [1]: http://docs.aws.amazon.com/codebuild/latest/userguide/sample-private-registry.html
2100
+ # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-private-registry.html
2061
2101
  #
2062
2102
  # @note When making an API call, you may pass RegistryCredential
2063
2103
  # data as a hash:
@@ -2727,10 +2767,15 @@ module Aws::CodeBuild
2727
2767
  # @return [Integer]
2728
2768
  #
2729
2769
  # @!attribute [rw] encryption_key
2730
- # The replacement AWS Key Management Service (AWS KMS) customer master
2731
- # key (CMK) to be used for encrypting the build output artifacts.
2770
+ # The AWS Key Management Service (AWS KMS) customer master key (CMK)
2771
+ # to be used for encrypting the build output artifacts.
2772
+ #
2773
+ # <note markdown="1"> You can use a cross-account KMS key to encrypt the build output
2774
+ # artifacts if your service role has permission to that key.
2775
+ #
2776
+ # </note>
2732
2777
  #
2733
- # You can specify either the Amazon Resource Name (ARN)of the CMK or,
2778
+ # You can specify either the Amazon Resource Name (ARN) of the CMK or,
2734
2779
  # if available, the CMK's alias (using the format `alias/alias-name
2735
2780
  # `).
2736
2781
  # @return [String]
@@ -2796,6 +2841,15 @@ module Aws::CodeBuild
2796
2841
  # {
2797
2842
  # project_name: "ProjectName", # required
2798
2843
  # branch_filter: "String",
2844
+ # filter_groups: [
2845
+ # [
2846
+ # {
2847
+ # type: "EVENT", # required, accepts EVENT, BASE_REF, HEAD_REF, ACTOR_ACCOUNT_ID, FILE_PATH
2848
+ # pattern: "String", # required
2849
+ # exclude_matched_pattern: false,
2850
+ # },
2851
+ # ],
2852
+ # ],
2799
2853
  # rotate_secret: false,
2800
2854
  # }
2801
2855
  #
@@ -2808,8 +2862,19 @@ module Aws::CodeBuild
2808
2862
  # built when a webhook is triggered. If the name of a branch matches
2809
2863
  # the regular expression, then it is built. If `branchFilter` is
2810
2864
  # empty, then all branches are built.
2865
+ #
2866
+ # <note markdown="1"> It is recommended that you use `filterGroups` instead of
2867
+ # `branchFilter`.
2868
+ #
2869
+ # </note>
2811
2870
  # @return [String]
2812
2871
  #
2872
+ # @!attribute [rw] filter_groups
2873
+ # An array of arrays of `WebhookFilter` objects used to determine if a
2874
+ # webhook event can trigger a build. A filter group must pcontain at
2875
+ # least one `EVENT` `WebhookFilter`.
2876
+ # @return [Array<Array<Types::WebhookFilter>>]
2877
+ #
2813
2878
  # @!attribute [rw] rotate_secret
2814
2879
  # A boolean value that specifies whether the associated GitHub
2815
2880
  # repository's secret token should be updated. If you use Bitbucket
@@ -2821,6 +2886,7 @@ module Aws::CodeBuild
2821
2886
  class UpdateWebhookInput < Struct.new(
2822
2887
  :project_name,
2823
2888
  :branch_filter,
2889
+ :filter_groups,
2824
2890
  :rotate_secret)
2825
2891
  include Aws::Structure
2826
2892
  end
@@ -2893,8 +2959,23 @@ module Aws::CodeBuild
2893
2959
  # built when a webhook is triggered. If the name of a branch matches
2894
2960
  # the regular expression, then it is built. If `branchFilter` is
2895
2961
  # empty, then all branches are built.
2962
+ #
2963
+ # <note markdown="1"> It is recommended that you use `filterGroups` instead of
2964
+ # `branchFilter`.
2965
+ #
2966
+ # </note>
2896
2967
  # @return [String]
2897
2968
  #
2969
+ # @!attribute [rw] filter_groups
2970
+ # An array of arrays of `WebhookFilter` objects used to determine
2971
+ # which webhooks are triggered. At least one `WebhookFilter` in the
2972
+ # array must specify `EVENT` as its `type`.
2973
+ #
2974
+ # For a build to be triggered, at least one filter group in the
2975
+ # `filterGroups` array must pass. For a filter group to pass, each of
2976
+ # its filters must pass.
2977
+ # @return [Array<Array<Types::WebhookFilter>>]
2978
+ #
2898
2979
  # @!attribute [rw] last_modified_secret
2899
2980
  # A timestamp that indicates the last time a repository's secret
2900
2981
  # token was modified.
@@ -2907,9 +2988,105 @@ module Aws::CodeBuild
2907
2988
  :payload_url,
2908
2989
  :secret,
2909
2990
  :branch_filter,
2991
+ :filter_groups,
2910
2992
  :last_modified_secret)
2911
2993
  include Aws::Structure
2912
2994
  end
2913
2995
 
2996
+ # A filter used to determine which webhooks trigger a build.
2997
+ #
2998
+ # @note When making an API call, you may pass WebhookFilter
2999
+ # data as a hash:
3000
+ #
3001
+ # {
3002
+ # type: "EVENT", # required, accepts EVENT, BASE_REF, HEAD_REF, ACTOR_ACCOUNT_ID, FILE_PATH
3003
+ # pattern: "String", # required
3004
+ # exclude_matched_pattern: false,
3005
+ # }
3006
+ #
3007
+ # @!attribute [rw] type
3008
+ # The type of webhook filter. There are five webhook filter types:
3009
+ # `EVENT`, `ACTOR_ACCOUNT_ID`, `HEAD_REF`, `BASE_REF`, and
3010
+ # `FILE_PATH`.
3011
+ #
3012
+ # EVENT
3013
+ #
3014
+ # : A webhook event triggers a build when the provided `pattern`
3015
+ # matches one of four event types: `PUSH`, `PULL_REQUEST_CREATED`,
3016
+ # `PULL_REQUEST_UPDATED`, and `PULL_REQUEST_REOPENED`. The `EVENT`
3017
+ # patterns are specified as a comma-separated string. For example,
3018
+ # `PUSH, PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED` filters all
3019
+ # push, pull request created, and pull request updated events.
3020
+ #
3021
+ # <note markdown="1"> The `PULL_REQUEST_REOPENED` works with GitHub and GitHub
3022
+ # Enterprise only.
3023
+ #
3024
+ # </note>
3025
+ #
3026
+ # ACTOR\_ACCOUNT\_ID
3027
+ #
3028
+ # : A webhook event triggers a build when a GitHub, GitHub Enterprise,
3029
+ # or Bitbucket account ID matches the regular expression `pattern`.
3030
+ #
3031
+ # HEAD\_REF
3032
+ #
3033
+ # : A webhook event triggers a build when the head reference matches
3034
+ # the regular expression `pattern`. For example,
3035
+ # `refs/heads/branch-name` and `refs/tags/tag-name`.
3036
+ #
3037
+ # Works with GitHub and GitHub Enterprise push, GitHub and GitHub
3038
+ # Enterprise pull request, Bitbucket push, and Bitbucket pull
3039
+ # request events.
3040
+ #
3041
+ # BASE\_REF
3042
+ #
3043
+ # : A webhook event triggers a build when the base reference matches
3044
+ # the regular expression `pattern`. For example,
3045
+ # `refs/heads/branch-name`.
3046
+ #
3047
+ # <note markdown="1"> Works with pull request events only.
3048
+ #
3049
+ # </note>
3050
+ #
3051
+ # FILE\_PATH
3052
+ #
3053
+ # : A webhook triggers a build when the path of a changed file matches
3054
+ # the regular expression `pattern`.
3055
+ #
3056
+ # <note markdown="1"> Works with GitHub and GitHub Enterprise push events only.
3057
+ #
3058
+ # </note>
3059
+ # @return [String]
3060
+ #
3061
+ # @!attribute [rw] pattern
3062
+ # For a `WebHookFilter` that uses `EVENT` type, a comma-separated
3063
+ # string that specifies one or more events. For example, the webhook
3064
+ # filter `PUSH, PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED` allows all
3065
+ # push, pull request created, and pull request updated events to
3066
+ # trigger a build.
3067
+ #
3068
+ # For a `WebHookFilter` that uses any of the other filter types, a
3069
+ # regular expression pattern. For example, a `WebHookFilter` that uses
3070
+ # `HEAD_REF` for its `type` and the pattern `^refs/heads/` triggers a
3071
+ # build when the head reference is a branch with a reference name
3072
+ # `refs/heads/branch-name`.
3073
+ # @return [String]
3074
+ #
3075
+ # @!attribute [rw] exclude_matched_pattern
3076
+ # Used to indicate that the `pattern` determines which webhook events
3077
+ # do not trigger a build. If true, then a webhook event that does not
3078
+ # match the `pattern` triggers a build. If false, then a webhook event
3079
+ # that matches the `pattern` triggers a build.
3080
+ # @return [Boolean]
3081
+ #
3082
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/WebhookFilter AWS API Documentation
3083
+ #
3084
+ class WebhookFilter < Struct.new(
3085
+ :type,
3086
+ :pattern,
3087
+ :exclude_matched_pattern)
3088
+ include Aws::Structure
3089
+ end
3090
+
2914
3091
  end
2915
3092
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-codebuild
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.26.0
4
+ version: 1.27.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-01-24 00:00:00.000000000 Z
11
+ date: 2019-02-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core