aws-sdk-codegurureviewer 1.17.0 → 1.18.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.
@@ -14,13 +14,18 @@ module Aws::CodeGuruReviewer
14
14
  include Seahorse::Model
15
15
 
16
16
  AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
17
+ AnalysisType = Shapes::StringShape.new(name: 'AnalysisType')
18
+ AnalysisTypes = Shapes::ListShape.new(name: 'AnalysisTypes')
17
19
  Arn = Shapes::StringShape.new(name: 'Arn')
18
20
  AssociateRepositoryRequest = Shapes::StructureShape.new(name: 'AssociateRepositoryRequest')
19
21
  AssociateRepositoryResponse = Shapes::StructureShape.new(name: 'AssociateRepositoryResponse')
20
22
  AssociationArn = Shapes::StringShape.new(name: 'AssociationArn')
21
23
  AssociationId = Shapes::StringShape.new(name: 'AssociationId')
24
+ BranchDiffSourceCodeType = Shapes::StructureShape.new(name: 'BranchDiffSourceCodeType')
22
25
  BranchName = Shapes::StringShape.new(name: 'BranchName')
26
+ BuildArtifactsObjectKey = Shapes::StringShape.new(name: 'BuildArtifactsObjectKey')
23
27
  ClientRequestToken = Shapes::StringShape.new(name: 'ClientRequestToken')
28
+ CodeArtifacts = Shapes::StructureShape.new(name: 'CodeArtifacts')
24
29
  CodeCommitRepository = Shapes::StructureShape.new(name: 'CodeCommitRepository')
25
30
  CodeReview = Shapes::StructureShape.new(name: 'CodeReview')
26
31
  CodeReviewName = Shapes::StringShape.new(name: 'CodeReviewName')
@@ -43,6 +48,9 @@ module Aws::CodeGuruReviewer
43
48
  DisassociateRepositoryResponse = Shapes::StructureShape.new(name: 'DisassociateRepositoryResponse')
44
49
  EncryptionOption = Shapes::StringShape.new(name: 'EncryptionOption')
45
50
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
51
+ EventInfo = Shapes::StructureShape.new(name: 'EventInfo')
52
+ EventName = Shapes::StringShape.new(name: 'EventName')
53
+ EventState = Shapes::StringShape.new(name: 'EventState')
46
54
  FilePath = Shapes::StringShape.new(name: 'FilePath')
47
55
  FindingsCount = Shapes::IntegerShape.new(name: 'FindingsCount')
48
56
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
@@ -79,6 +87,7 @@ module Aws::CodeGuruReviewer
79
87
  PutRecommendationFeedbackResponse = Shapes::StructureShape.new(name: 'PutRecommendationFeedbackResponse')
80
88
  Reaction = Shapes::StringShape.new(name: 'Reaction')
81
89
  Reactions = Shapes::ListShape.new(name: 'Reactions')
90
+ RecommendationCategory = Shapes::StringShape.new(name: 'RecommendationCategory')
82
91
  RecommendationFeedback = Shapes::StructureShape.new(name: 'RecommendationFeedback')
83
92
  RecommendationFeedbackSummaries = Shapes::ListShape.new(name: 'RecommendationFeedbackSummaries')
84
93
  RecommendationFeedbackSummary = Shapes::StructureShape.new(name: 'RecommendationFeedbackSummary')
@@ -95,7 +104,15 @@ module Aws::CodeGuruReviewer
95
104
  RepositoryAssociationSummary = Shapes::StructureShape.new(name: 'RepositoryAssociationSummary')
96
105
  RepositoryHeadSourceCodeType = Shapes::StructureShape.new(name: 'RepositoryHeadSourceCodeType')
97
106
  RepositoryNames = Shapes::ListShape.new(name: 'RepositoryNames')
107
+ RequestId = Shapes::StringShape.new(name: 'RequestId')
108
+ RequestMetadata = Shapes::StructureShape.new(name: 'RequestMetadata')
109
+ Requester = Shapes::StringShape.new(name: 'Requester')
98
110
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
111
+ S3BucketName = Shapes::StringShape.new(name: 'S3BucketName')
112
+ S3BucketRepository = Shapes::StructureShape.new(name: 'S3BucketRepository')
113
+ S3Repository = Shapes::StructureShape.new(name: 'S3Repository')
114
+ S3RepositoryDetails = Shapes::StructureShape.new(name: 'S3RepositoryDetails')
115
+ SourceCodeArtifactsObjectKey = Shapes::StringShape.new(name: 'SourceCodeArtifactsObjectKey')
99
116
  SourceCodeType = Shapes::StructureShape.new(name: 'SourceCodeType')
100
117
  StateReason = Shapes::StringShape.new(name: 'StateReason')
101
118
  TagKey = Shapes::StringShape.new(name: 'TagKey')
@@ -114,10 +131,13 @@ module Aws::CodeGuruReviewer
114
131
  UserId = Shapes::StringShape.new(name: 'UserId')
115
132
  UserIds = Shapes::ListShape.new(name: 'UserIds')
116
133
  ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
134
+ VendorName = Shapes::StringShape.new(name: 'VendorName')
117
135
 
118
136
  AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
119
137
  AccessDeniedException.struct_class = Types::AccessDeniedException
120
138
 
139
+ AnalysisTypes.member = Shapes::ShapeRef.new(shape: AnalysisType)
140
+
121
141
  AssociateRepositoryRequest.add_member(:repository, Shapes::ShapeRef.new(shape: Repository, required: true, location_name: "Repository"))
122
142
  AssociateRepositoryRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: ClientRequestToken, location_name: "ClientRequestToken", metadata: {"idempotencyToken"=>true}))
123
143
  AssociateRepositoryRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
@@ -128,6 +148,14 @@ module Aws::CodeGuruReviewer
128
148
  AssociateRepositoryResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
129
149
  AssociateRepositoryResponse.struct_class = Types::AssociateRepositoryResponse
130
150
 
151
+ BranchDiffSourceCodeType.add_member(:source_branch_name, Shapes::ShapeRef.new(shape: BranchName, required: true, location_name: "SourceBranchName"))
152
+ BranchDiffSourceCodeType.add_member(:destination_branch_name, Shapes::ShapeRef.new(shape: BranchName, required: true, location_name: "DestinationBranchName"))
153
+ BranchDiffSourceCodeType.struct_class = Types::BranchDiffSourceCodeType
154
+
155
+ CodeArtifacts.add_member(:source_code_artifacts_object_key, Shapes::ShapeRef.new(shape: SourceCodeArtifactsObjectKey, required: true, location_name: "SourceCodeArtifactsObjectKey"))
156
+ CodeArtifacts.add_member(:build_artifacts_object_key, Shapes::ShapeRef.new(shape: BuildArtifactsObjectKey, location_name: "BuildArtifactsObjectKey"))
157
+ CodeArtifacts.struct_class = Types::CodeArtifacts
158
+
131
159
  CodeCommitRepository.add_member(:name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "Name"))
132
160
  CodeCommitRepository.struct_class = Types::CodeCommitRepository
133
161
 
@@ -145,6 +173,7 @@ module Aws::CodeGuruReviewer
145
173
  CodeReview.add_member(:source_code_type, Shapes::ShapeRef.new(shape: SourceCodeType, location_name: "SourceCodeType"))
146
174
  CodeReview.add_member(:association_arn, Shapes::ShapeRef.new(shape: AssociationArn, location_name: "AssociationArn"))
147
175
  CodeReview.add_member(:metrics, Shapes::ShapeRef.new(shape: Metrics, location_name: "Metrics"))
176
+ CodeReview.add_member(:analysis_types, Shapes::ShapeRef.new(shape: AnalysisTypes, location_name: "AnalysisTypes"))
148
177
  CodeReview.struct_class = Types::CodeReview
149
178
 
150
179
  CodeReviewSummaries.member = Shapes::ShapeRef.new(shape: CodeReviewSummary)
@@ -160,13 +189,16 @@ module Aws::CodeGuruReviewer
160
189
  CodeReviewSummary.add_member(:type, Shapes::ShapeRef.new(shape: Type, location_name: "Type"))
161
190
  CodeReviewSummary.add_member(:pull_request_id, Shapes::ShapeRef.new(shape: PullRequestId, location_name: "PullRequestId"))
162
191
  CodeReviewSummary.add_member(:metrics_summary, Shapes::ShapeRef.new(shape: MetricsSummary, location_name: "MetricsSummary"))
192
+ CodeReviewSummary.add_member(:source_code_type, Shapes::ShapeRef.new(shape: SourceCodeType, location_name: "SourceCodeType"))
163
193
  CodeReviewSummary.struct_class = Types::CodeReviewSummary
164
194
 
165
195
  CodeReviewType.add_member(:repository_analysis, Shapes::ShapeRef.new(shape: RepositoryAnalysis, required: true, location_name: "RepositoryAnalysis"))
196
+ CodeReviewType.add_member(:analysis_types, Shapes::ShapeRef.new(shape: AnalysisTypes, location_name: "AnalysisTypes"))
166
197
  CodeReviewType.struct_class = Types::CodeReviewType
167
198
 
168
199
  CommitDiffSourceCodeType.add_member(:source_commit, Shapes::ShapeRef.new(shape: CommitId, location_name: "SourceCommit"))
169
200
  CommitDiffSourceCodeType.add_member(:destination_commit, Shapes::ShapeRef.new(shape: CommitId, location_name: "DestinationCommit"))
201
+ CommitDiffSourceCodeType.add_member(:merge_base_commit, Shapes::ShapeRef.new(shape: CommitId, location_name: "MergeBaseCommit"))
170
202
  CommitDiffSourceCodeType.struct_class = Types::CommitDiffSourceCodeType
171
203
 
172
204
  ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
@@ -209,6 +241,10 @@ module Aws::CodeGuruReviewer
209
241
  DisassociateRepositoryResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
210
242
  DisassociateRepositoryResponse.struct_class = Types::DisassociateRepositoryResponse
211
243
 
244
+ EventInfo.add_member(:name, Shapes::ShapeRef.new(shape: EventName, location_name: "Name"))
245
+ EventInfo.add_member(:state, Shapes::ShapeRef.new(shape: EventState, location_name: "State"))
246
+ EventInfo.struct_class = Types::EventInfo
247
+
212
248
  InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
213
249
  InternalServerException.struct_class = Types::InternalServerException
214
250
 
@@ -318,14 +354,17 @@ module Aws::CodeGuruReviewer
318
354
  RecommendationSummary.add_member(:start_line, Shapes::ShapeRef.new(shape: LineNumber, location_name: "StartLine"))
319
355
  RecommendationSummary.add_member(:end_line, Shapes::ShapeRef.new(shape: LineNumber, location_name: "EndLine"))
320
356
  RecommendationSummary.add_member(:description, Shapes::ShapeRef.new(shape: Text, location_name: "Description"))
357
+ RecommendationSummary.add_member(:recommendation_category, Shapes::ShapeRef.new(shape: RecommendationCategory, location_name: "RecommendationCategory"))
321
358
  RecommendationSummary.struct_class = Types::RecommendationSummary
322
359
 
323
360
  Repository.add_member(:code_commit, Shapes::ShapeRef.new(shape: CodeCommitRepository, location_name: "CodeCommit"))
324
361
  Repository.add_member(:bitbucket, Shapes::ShapeRef.new(shape: ThirdPartySourceRepository, location_name: "Bitbucket"))
325
362
  Repository.add_member(:git_hub_enterprise_server, Shapes::ShapeRef.new(shape: ThirdPartySourceRepository, location_name: "GitHubEnterpriseServer"))
363
+ Repository.add_member(:s3_bucket, Shapes::ShapeRef.new(shape: S3Repository, location_name: "S3Bucket"))
326
364
  Repository.struct_class = Types::Repository
327
365
 
328
- RepositoryAnalysis.add_member(:repository_head, Shapes::ShapeRef.new(shape: RepositoryHeadSourceCodeType, required: true, location_name: "RepositoryHead"))
366
+ RepositoryAnalysis.add_member(:repository_head, Shapes::ShapeRef.new(shape: RepositoryHeadSourceCodeType, location_name: "RepositoryHead"))
367
+ RepositoryAnalysis.add_member(:source_code_type, Shapes::ShapeRef.new(shape: SourceCodeType, location_name: "SourceCodeType"))
329
368
  RepositoryAnalysis.struct_class = Types::RepositoryAnalysis
330
369
 
331
370
  RepositoryAssociation.add_member(:association_id, Shapes::ShapeRef.new(shape: AssociationId, location_name: "AssociationId"))
@@ -339,6 +378,7 @@ module Aws::CodeGuruReviewer
339
378
  RepositoryAssociation.add_member(:last_updated_time_stamp, Shapes::ShapeRef.new(shape: TimeStamp, location_name: "LastUpdatedTimeStamp"))
340
379
  RepositoryAssociation.add_member(:created_time_stamp, Shapes::ShapeRef.new(shape: TimeStamp, location_name: "CreatedTimeStamp"))
341
380
  RepositoryAssociation.add_member(:kms_key_details, Shapes::ShapeRef.new(shape: KMSKeyDetails, location_name: "KMSKeyDetails"))
381
+ RepositoryAssociation.add_member(:s3_repository_details, Shapes::ShapeRef.new(shape: S3RepositoryDetails, location_name: "S3RepositoryDetails"))
342
382
  RepositoryAssociation.struct_class = Types::RepositoryAssociation
343
383
 
344
384
  RepositoryAssociationStates.member = Shapes::ShapeRef.new(shape: RepositoryAssociationState)
@@ -360,11 +400,32 @@ module Aws::CodeGuruReviewer
360
400
 
361
401
  RepositoryNames.member = Shapes::ShapeRef.new(shape: Name)
362
402
 
403
+ RequestMetadata.add_member(:request_id, Shapes::ShapeRef.new(shape: RequestId, location_name: "RequestId"))
404
+ RequestMetadata.add_member(:requester, Shapes::ShapeRef.new(shape: Requester, location_name: "Requester"))
405
+ RequestMetadata.add_member(:event_info, Shapes::ShapeRef.new(shape: EventInfo, location_name: "EventInfo"))
406
+ RequestMetadata.add_member(:vendor_name, Shapes::ShapeRef.new(shape: VendorName, location_name: "VendorName"))
407
+ RequestMetadata.struct_class = Types::RequestMetadata
408
+
363
409
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
364
410
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
365
411
 
412
+ S3BucketRepository.add_member(:name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "Name"))
413
+ S3BucketRepository.add_member(:details, Shapes::ShapeRef.new(shape: S3RepositoryDetails, location_name: "Details"))
414
+ S3BucketRepository.struct_class = Types::S3BucketRepository
415
+
416
+ S3Repository.add_member(:name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "Name"))
417
+ S3Repository.add_member(:bucket_name, Shapes::ShapeRef.new(shape: S3BucketName, required: true, location_name: "BucketName"))
418
+ S3Repository.struct_class = Types::S3Repository
419
+
420
+ S3RepositoryDetails.add_member(:bucket_name, Shapes::ShapeRef.new(shape: S3BucketName, location_name: "BucketName"))
421
+ S3RepositoryDetails.add_member(:code_artifacts, Shapes::ShapeRef.new(shape: CodeArtifacts, location_name: "CodeArtifacts"))
422
+ S3RepositoryDetails.struct_class = Types::S3RepositoryDetails
423
+
366
424
  SourceCodeType.add_member(:commit_diff, Shapes::ShapeRef.new(shape: CommitDiffSourceCodeType, location_name: "CommitDiff"))
367
425
  SourceCodeType.add_member(:repository_head, Shapes::ShapeRef.new(shape: RepositoryHeadSourceCodeType, location_name: "RepositoryHead"))
426
+ SourceCodeType.add_member(:branch_diff, Shapes::ShapeRef.new(shape: BranchDiffSourceCodeType, location_name: "BranchDiff"))
427
+ SourceCodeType.add_member(:s3_bucket_repository, Shapes::ShapeRef.new(shape: S3BucketRepository, location_name: "S3BucketRepository"))
428
+ SourceCodeType.add_member(:request_metadata, Shapes::ShapeRef.new(shape: RequestMetadata, location_name: "RequestMetadata"))
368
429
  SourceCodeType.struct_class = Types::SourceCodeType
369
430
 
370
431
  TagKeyList.member = Shapes::ShapeRef.new(shape: TagKey)
@@ -41,6 +41,10 @@ module Aws::CodeGuruReviewer
41
41
  # connection_arn: "ConnectionArn", # required
42
42
  # owner: "Owner", # required
43
43
  # },
44
+ # s3_bucket: {
45
+ # name: "Name", # required
46
+ # bucket_name: "S3BucketName", # required
47
+ # },
44
48
  # },
45
49
  # client_request_token: "ClientRequestToken",
46
50
  # tags: {
@@ -126,6 +130,80 @@ module Aws::CodeGuruReviewer
126
130
  include Aws::Structure
127
131
  end
128
132
 
133
+ # A type of [ `SourceCodeType` ][1] that specifies a code diff between a
134
+ # source and destination branch in an associated repository.
135
+ #
136
+ #
137
+ #
138
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType
139
+ #
140
+ # @note When making an API call, you may pass BranchDiffSourceCodeType
141
+ # data as a hash:
142
+ #
143
+ # {
144
+ # source_branch_name: "BranchName", # required
145
+ # destination_branch_name: "BranchName", # required
146
+ # }
147
+ #
148
+ # @!attribute [rw] source_branch_name
149
+ # The source branch for a diff in an associated repository.
150
+ # @return [String]
151
+ #
152
+ # @!attribute [rw] destination_branch_name
153
+ # The destination branch for a diff in an associated repository.
154
+ # @return [String]
155
+ #
156
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/BranchDiffSourceCodeType AWS API Documentation
157
+ #
158
+ class BranchDiffSourceCodeType < Struct.new(
159
+ :source_branch_name,
160
+ :destination_branch_name)
161
+ SENSITIVE = []
162
+ include Aws::Structure
163
+ end
164
+
165
+ # Code artifacts are source code artifacts and build artifacts used in a
166
+ # repository analysis or a pull request review.
167
+ #
168
+ # * Source code artifacts are source code files in a Git repository that
169
+ # are compressed into a .zip file.
170
+ #
171
+ # * Build artifacts are .jar or .class files that are compressed in a
172
+ # .zip file.
173
+ #
174
+ # @note When making an API call, you may pass CodeArtifacts
175
+ # data as a hash:
176
+ #
177
+ # {
178
+ # source_code_artifacts_object_key: "SourceCodeArtifactsObjectKey", # required
179
+ # build_artifacts_object_key: "BuildArtifactsObjectKey",
180
+ # }
181
+ #
182
+ # @!attribute [rw] source_code_artifacts_object_key
183
+ # The S3 object key for a source code .zip file. This is required for
184
+ # all code reviews.
185
+ # @return [String]
186
+ #
187
+ # @!attribute [rw] build_artifacts_object_key
188
+ # The S3 object key for a build artifacts .zip file that contains .jar
189
+ # or .class files. This is required for a code review with security
190
+ # analysis. For more information, see [Create code reviews with
191
+ # security analysis][1] in the *Amazon CodeGuru Reviewer User Guide*.
192
+ #
193
+ #
194
+ #
195
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/code-review-security.html
196
+ # @return [String]
197
+ #
198
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/CodeArtifacts AWS API Documentation
199
+ #
200
+ class CodeArtifacts < Struct.new(
201
+ :source_code_artifacts_object_key,
202
+ :build_artifacts_object_key)
203
+ SENSITIVE = []
204
+ include Aws::Structure
205
+ end
206
+
129
207
  # Information about an AWS CodeCommit repository. The CodeCommit
130
208
  # repository must be in the same AWS Region and AWS account where its
131
209
  # CodeGuru Reviewer code reviews are configured.
@@ -177,7 +255,8 @@ module Aws::CodeGuruReviewer
177
255
  # The owner of the repository. For an AWS CodeCommit repository, this
178
256
  # is the AWS account ID of the account that owns the repository. For a
179
257
  # GitHub, GitHub Enterprise Server, or Bitbucket repository, this is
180
- # the username for the account that owns the repository.
258
+ # the username for the account that owns the repository. For an S3
259
+ # repository, it can be the username or AWS account ID.
181
260
  # @return [String]
182
261
  #
183
262
  # @!attribute [rw] provider_type
@@ -239,6 +318,12 @@ module Aws::CodeGuruReviewer
239
318
  # The statistics from the code review.
240
319
  # @return [Types::Metrics]
241
320
  #
321
+ # @!attribute [rw] analysis_types
322
+ # They types of analysis performed during a repository analysis or a
323
+ # pull request review. You can specify either `Security`,
324
+ # `CodeQuality`, or both.
325
+ # @return [Array<String>]
326
+ #
242
327
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/CodeReview AWS API Documentation
243
328
  #
244
329
  class CodeReview < Struct.new(
@@ -255,7 +340,8 @@ module Aws::CodeGuruReviewer
255
340
  :pull_request_id,
256
341
  :source_code_type,
257
342
  :association_arn,
258
- :metrics)
343
+ :metrics,
344
+ :analysis_types)
259
345
  SENSITIVE = []
260
346
  include Aws::Structure
261
347
  end
@@ -282,7 +368,8 @@ module Aws::CodeGuruReviewer
282
368
  # The owner of the repository. For an AWS CodeCommit repository, this
283
369
  # is the AWS account ID of the account that owns the repository. For a
284
370
  # GitHub, GitHub Enterprise Server, or Bitbucket repository, this is
285
- # the username for the account that owns the repository.
371
+ # the username for the account that owns the repository. For an S3
372
+ # repository, it can be the username or AWS account ID.
286
373
  # @return [String]
287
374
  #
288
375
  # @!attribute [rw] provider_type
@@ -326,6 +413,10 @@ module Aws::CodeGuruReviewer
326
413
  # The statistics from the code review.
327
414
  # @return [Types::MetricsSummary]
328
415
  #
416
+ # @!attribute [rw] source_code_type
417
+ # Specifies the source code that is analyzed in a code review.
418
+ # @return [Types::SourceCodeType]
419
+ #
329
420
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/CodeReviewSummary AWS API Documentation
330
421
  #
331
422
  class CodeReviewSummary < Struct.new(
@@ -339,7 +430,8 @@ module Aws::CodeGuruReviewer
339
430
  :last_updated_time_stamp,
340
431
  :type,
341
432
  :pull_request_id,
342
- :metrics_summary)
433
+ :metrics_summary,
434
+ :source_code_type)
343
435
  SENSITIVE = []
344
436
  include Aws::Structure
345
437
  end
@@ -347,9 +439,7 @@ module Aws::CodeGuruReviewer
347
439
  # The type of a code review. There are two code review types:
348
440
  #
349
441
  # * `PullRequest` - A code review that is automatically triggered by a
350
- # pull request on an associated repository. Because this type of code
351
- # review is automatically generated, you cannot specify this code
352
- # review type using [ `CreateCodeReview` ][1].
442
+ # pull request on an associated repository.
353
443
  #
354
444
  # * `RepositoryAnalysis` - A code review that analyzes all code under a
355
445
  # specified branch in an associated repository. The associated
@@ -364,10 +454,44 @@ module Aws::CodeGuruReviewer
364
454
  #
365
455
  # {
366
456
  # repository_analysis: { # required
367
- # repository_head: { # required
457
+ # repository_head: {
368
458
  # branch_name: "BranchName", # required
369
459
  # },
460
+ # source_code_type: {
461
+ # commit_diff: {
462
+ # source_commit: "CommitId",
463
+ # destination_commit: "CommitId",
464
+ # merge_base_commit: "CommitId",
465
+ # },
466
+ # repository_head: {
467
+ # branch_name: "BranchName", # required
468
+ # },
469
+ # branch_diff: {
470
+ # source_branch_name: "BranchName", # required
471
+ # destination_branch_name: "BranchName", # required
472
+ # },
473
+ # s3_bucket_repository: {
474
+ # name: "Name", # required
475
+ # details: {
476
+ # bucket_name: "S3BucketName",
477
+ # code_artifacts: {
478
+ # source_code_artifacts_object_key: "SourceCodeArtifactsObjectKey", # required
479
+ # build_artifacts_object_key: "BuildArtifactsObjectKey",
480
+ # },
481
+ # },
482
+ # },
483
+ # request_metadata: {
484
+ # request_id: "RequestId",
485
+ # requester: "Requester",
486
+ # event_info: {
487
+ # name: "EventName",
488
+ # state: "EventState",
489
+ # },
490
+ # vendor_name: "GitHub", # accepts GitHub, GitLab, NativeS3
491
+ # },
492
+ # },
370
493
  # },
494
+ # analysis_types: ["Security"], # accepts Security, CodeQuality
371
495
  # }
372
496
  #
373
497
  # @!attribute [rw] repository_analysis
@@ -380,34 +504,59 @@ module Aws::CodeGuruReviewer
380
504
  # [1]: https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CreateCodeReview
381
505
  # @return [Types::RepositoryAnalysis]
382
506
  #
507
+ # @!attribute [rw] analysis_types
508
+ # They types of analysis performed during a repository analysis or a
509
+ # pull request review. You can specify either `Security`,
510
+ # `CodeQuality`, or both.
511
+ # @return [Array<String>]
512
+ #
383
513
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/CodeReviewType AWS API Documentation
384
514
  #
385
515
  class CodeReviewType < Struct.new(
386
- :repository_analysis)
516
+ :repository_analysis,
517
+ :analysis_types)
387
518
  SENSITIVE = []
388
519
  include Aws::Structure
389
520
  end
390
521
 
391
522
  # A type of [ `SourceCodeType` ][1] that specifies the commit diff for a
392
- # pull request on an associated repository.
523
+ # pull request on an associated repository. The `SourceCommit` and
524
+ # `DestinationCommit` fields are required to do a pull request code
525
+ # review.
393
526
  #
394
527
  #
395
528
  #
396
529
  # [1]: https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType
397
530
  #
531
+ # @note When making an API call, you may pass CommitDiffSourceCodeType
532
+ # data as a hash:
533
+ #
534
+ # {
535
+ # source_commit: "CommitId",
536
+ # destination_commit: "CommitId",
537
+ # merge_base_commit: "CommitId",
538
+ # }
539
+ #
398
540
  # @!attribute [rw] source_commit
399
- # The SHA of the source commit used to generate a commit diff.
541
+ # The SHA of the source commit used to generate a commit diff. This
542
+ # field is required for a pull request code review.
400
543
  # @return [String]
401
544
  #
402
545
  # @!attribute [rw] destination_commit
403
546
  # The SHA of the destination commit used to generate a commit diff.
547
+ # This field is required for a pull request code review.
548
+ # @return [String]
549
+ #
550
+ # @!attribute [rw] merge_base_commit
551
+ # The SHA of the merge base of a commit.
404
552
  # @return [String]
405
553
  #
406
554
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/CommitDiffSourceCodeType AWS API Documentation
407
555
  #
408
556
  class CommitDiffSourceCodeType < Struct.new(
409
557
  :source_commit,
410
- :destination_commit)
558
+ :destination_commit,
559
+ :merge_base_commit)
411
560
  SENSITIVE = []
412
561
  include Aws::Structure
413
562
  end
@@ -435,10 +584,44 @@ module Aws::CodeGuruReviewer
435
584
  # repository_association_arn: "AssociationArn", # required
436
585
  # type: { # required
437
586
  # repository_analysis: { # required
438
- # repository_head: { # required
587
+ # repository_head: {
439
588
  # branch_name: "BranchName", # required
440
589
  # },
590
+ # source_code_type: {
591
+ # commit_diff: {
592
+ # source_commit: "CommitId",
593
+ # destination_commit: "CommitId",
594
+ # merge_base_commit: "CommitId",
595
+ # },
596
+ # repository_head: {
597
+ # branch_name: "BranchName", # required
598
+ # },
599
+ # branch_diff: {
600
+ # source_branch_name: "BranchName", # required
601
+ # destination_branch_name: "BranchName", # required
602
+ # },
603
+ # s3_bucket_repository: {
604
+ # name: "Name", # required
605
+ # details: {
606
+ # bucket_name: "S3BucketName",
607
+ # code_artifacts: {
608
+ # source_code_artifacts_object_key: "SourceCodeArtifactsObjectKey", # required
609
+ # build_artifacts_object_key: "BuildArtifactsObjectKey",
610
+ # },
611
+ # },
612
+ # },
613
+ # request_metadata: {
614
+ # request_id: "RequestId",
615
+ # requester: "Requester",
616
+ # event_info: {
617
+ # name: "EventName",
618
+ # state: "EventState",
619
+ # },
620
+ # vendor_name: "GitHub", # accepts GitHub, GitLab, NativeS3
621
+ # },
622
+ # },
441
623
  # },
624
+ # analysis_types: ["Security"], # accepts Security, CodeQuality
442
625
  # },
443
626
  # client_request_token: "ClientRequestToken",
444
627
  # }
@@ -702,6 +885,36 @@ module Aws::CodeGuruReviewer
702
885
  include Aws::Structure
703
886
  end
704
887
 
888
+ # Information about an event. The event might be a push, pull request,
889
+ # scheduled request, or another type of event.
890
+ #
891
+ # @note When making an API call, you may pass EventInfo
892
+ # data as a hash:
893
+ #
894
+ # {
895
+ # name: "EventName",
896
+ # state: "EventState",
897
+ # }
898
+ #
899
+ # @!attribute [rw] name
900
+ # The name of the event. The possible names are `pull_request`,
901
+ # `workflow_dispatch`, `schedule`, and `push`
902
+ # @return [String]
903
+ #
904
+ # @!attribute [rw] state
905
+ # The state of an event. The state might be open, closed, or another
906
+ # state.
907
+ # @return [String]
908
+ #
909
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/EventInfo AWS API Documentation
910
+ #
911
+ class EventInfo < Struct.new(
912
+ :name,
913
+ :state)
914
+ SENSITIVE = []
915
+ include Aws::Structure
916
+ end
917
+
705
918
  # The server encountered an internal error and is unable to complete the
706
919
  # request.
707
920
  #
@@ -757,7 +970,7 @@ module Aws::CodeGuruReviewer
757
970
  # data as a hash:
758
971
  #
759
972
  # {
760
- # provider_types: ["CodeCommit"], # accepts CodeCommit, GitHub, Bitbucket, GitHubEnterpriseServer
973
+ # provider_types: ["CodeCommit"], # accepts CodeCommit, GitHub, Bitbucket, GitHubEnterpriseServer, S3Bucket
761
974
  # states: ["Completed"], # accepts Completed, Pending, Failed, Deleting
762
975
  # repository_names: ["Name"],
763
976
  # type: "PullRequest", # required, accepts PullRequest, RepositoryAnalysis
@@ -980,7 +1193,7 @@ module Aws::CodeGuruReviewer
980
1193
  # data as a hash:
981
1194
  #
982
1195
  # {
983
- # provider_types: ["CodeCommit"], # accepts CodeCommit, GitHub, Bitbucket, GitHubEnterpriseServer
1196
+ # provider_types: ["CodeCommit"], # accepts CodeCommit, GitHub, Bitbucket, GitHubEnterpriseServer, S3Bucket
984
1197
  # states: ["Associated"], # accepts Associated, Associating, Failed, Disassociating, Disassociated
985
1198
  # names: ["Name"],
986
1199
  # owners: ["Owner"],
@@ -1383,6 +1596,10 @@ module Aws::CodeGuruReviewer
1383
1596
  # for the lines of code between the start line and the end line.
1384
1597
  # @return [String]
1385
1598
  #
1599
+ # @!attribute [rw] recommendation_category
1600
+ # The type of a recommendation.
1601
+ # @return [String]
1602
+ #
1386
1603
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/RecommendationSummary AWS API Documentation
1387
1604
  #
1388
1605
  class RecommendationSummary < Struct.new(
@@ -1390,7 +1607,8 @@ module Aws::CodeGuruReviewer
1390
1607
  :recommendation_id,
1391
1608
  :start_line,
1392
1609
  :end_line,
1393
- :description)
1610
+ :description,
1611
+ :recommendation_category)
1394
1612
  SENSITIVE = []
1395
1613
  include Aws::Structure
1396
1614
  end
@@ -1417,6 +1635,10 @@ module Aws::CodeGuruReviewer
1417
1635
  # connection_arn: "ConnectionArn", # required
1418
1636
  # owner: "Owner", # required
1419
1637
  # },
1638
+ # s3_bucket: {
1639
+ # name: "Name", # required
1640
+ # bucket_name: "S3BucketName", # required
1641
+ # },
1420
1642
  # }
1421
1643
  #
1422
1644
  # @!attribute [rw] code_commit
@@ -1431,12 +1653,17 @@ module Aws::CodeGuruReviewer
1431
1653
  # Information about a GitHub Enterprise Server repository.
1432
1654
  # @return [Types::ThirdPartySourceRepository]
1433
1655
  #
1656
+ # @!attribute [rw] s3_bucket
1657
+ # Information about a repository in an S3 bucket.
1658
+ # @return [Types::S3Repository]
1659
+ #
1434
1660
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/Repository AWS API Documentation
1435
1661
  #
1436
1662
  class Repository < Struct.new(
1437
1663
  :code_commit,
1438
1664
  :bitbucket,
1439
- :git_hub_enterprise_server)
1665
+ :git_hub_enterprise_server,
1666
+ :s3_bucket)
1440
1667
  SENSITIVE = []
1441
1668
  include Aws::Structure
1442
1669
  end
@@ -1453,9 +1680,42 @@ module Aws::CodeGuruReviewer
1453
1680
  # data as a hash:
1454
1681
  #
1455
1682
  # {
1456
- # repository_head: { # required
1683
+ # repository_head: {
1457
1684
  # branch_name: "BranchName", # required
1458
1685
  # },
1686
+ # source_code_type: {
1687
+ # commit_diff: {
1688
+ # source_commit: "CommitId",
1689
+ # destination_commit: "CommitId",
1690
+ # merge_base_commit: "CommitId",
1691
+ # },
1692
+ # repository_head: {
1693
+ # branch_name: "BranchName", # required
1694
+ # },
1695
+ # branch_diff: {
1696
+ # source_branch_name: "BranchName", # required
1697
+ # destination_branch_name: "BranchName", # required
1698
+ # },
1699
+ # s3_bucket_repository: {
1700
+ # name: "Name", # required
1701
+ # details: {
1702
+ # bucket_name: "S3BucketName",
1703
+ # code_artifacts: {
1704
+ # source_code_artifacts_object_key: "SourceCodeArtifactsObjectKey", # required
1705
+ # build_artifacts_object_key: "BuildArtifactsObjectKey",
1706
+ # },
1707
+ # },
1708
+ # },
1709
+ # request_metadata: {
1710
+ # request_id: "RequestId",
1711
+ # requester: "Requester",
1712
+ # event_info: {
1713
+ # name: "EventName",
1714
+ # state: "EventState",
1715
+ # },
1716
+ # vendor_name: "GitHub", # accepts GitHub, GitLab, NativeS3
1717
+ # },
1718
+ # },
1459
1719
  # }
1460
1720
  #
1461
1721
  # @!attribute [rw] repository_head
@@ -1467,10 +1727,15 @@ module Aws::CodeGuruReviewer
1467
1727
  # [1]: https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType
1468
1728
  # @return [Types::RepositoryHeadSourceCodeType]
1469
1729
  #
1730
+ # @!attribute [rw] source_code_type
1731
+ # Specifies the source code that is analyzed in a code review.
1732
+ # @return [Types::SourceCodeType]
1733
+ #
1470
1734
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/RepositoryAnalysis AWS API Documentation
1471
1735
  #
1472
1736
  class RepositoryAnalysis < Struct.new(
1473
- :repository_head)
1737
+ :repository_head,
1738
+ :source_code_type)
1474
1739
  SENSITIVE = []
1475
1740
  include Aws::Structure
1476
1741
  end
@@ -1512,7 +1777,8 @@ module Aws::CodeGuruReviewer
1512
1777
  # The owner of the repository. For an AWS CodeCommit repository, this
1513
1778
  # is the AWS account ID of the account that owns the repository. For a
1514
1779
  # GitHub, GitHub Enterprise Server, or Bitbucket repository, this is
1515
- # the username for the account that owns the repository.
1780
+ # the username for the account that owns the repository. For an S3
1781
+ # repository, it can be the username or AWS account ID.
1516
1782
  # @return [String]
1517
1783
  #
1518
1784
  # @!attribute [rw] provider_type
@@ -1586,6 +1852,12 @@ module Aws::CodeGuruReviewer
1586
1852
  # association.
1587
1853
  # @return [Types::KMSKeyDetails]
1588
1854
  #
1855
+ # @!attribute [rw] s3_repository_details
1856
+ # Specifies the name of an S3 bucket and a `CodeArtifacts` object that
1857
+ # contains the S3 object keys for a source code .zip file and for a
1858
+ # build artifacts .zip file that contains .jar or .class files.
1859
+ # @return [Types::S3RepositoryDetails]
1860
+ #
1589
1861
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/RepositoryAssociation AWS API Documentation
1590
1862
  #
1591
1863
  class RepositoryAssociation < Struct.new(
@@ -1599,7 +1871,8 @@ module Aws::CodeGuruReviewer
1599
1871
  :state_reason,
1600
1872
  :last_updated_time_stamp,
1601
1873
  :created_time_stamp,
1602
- :kms_key_details)
1874
+ :kms_key_details,
1875
+ :s3_repository_details)
1603
1876
  SENSITIVE = []
1604
1877
  include Aws::Structure
1605
1878
  end
@@ -1652,7 +1925,8 @@ module Aws::CodeGuruReviewer
1652
1925
  # The owner of the repository. For an AWS CodeCommit repository, this
1653
1926
  # is the AWS account ID of the account that owns the repository. For a
1654
1927
  # GitHub, GitHub Enterprise Server, or Bitbucket repository, this is
1655
- # the username for the account that owns the repository.
1928
+ # the username for the account that owns the repository. For an S3
1929
+ # repository, it can be the username or AWS account ID.
1656
1930
  # @return [String]
1657
1931
  #
1658
1932
  # @!attribute [rw] provider_type
@@ -1742,6 +2016,62 @@ module Aws::CodeGuruReviewer
1742
2016
  include Aws::Structure
1743
2017
  end
1744
2018
 
2019
+ # Metadata that is associated with a code review. This applies to both
2020
+ # pull request and repository analysis code reviews.
2021
+ #
2022
+ # @note When making an API call, you may pass RequestMetadata
2023
+ # data as a hash:
2024
+ #
2025
+ # {
2026
+ # request_id: "RequestId",
2027
+ # requester: "Requester",
2028
+ # event_info: {
2029
+ # name: "EventName",
2030
+ # state: "EventState",
2031
+ # },
2032
+ # vendor_name: "GitHub", # accepts GitHub, GitLab, NativeS3
2033
+ # }
2034
+ #
2035
+ # @!attribute [rw] request_id
2036
+ # The ID of the request. This is required for a pull request code
2037
+ # review.
2038
+ # @return [String]
2039
+ #
2040
+ # @!attribute [rw] requester
2041
+ # An identifier, such as a name or account ID, that is associated with
2042
+ # the requester. The `Requester` is used to capture the `author/actor`
2043
+ # name of the event request.
2044
+ # @return [String]
2045
+ #
2046
+ # @!attribute [rw] event_info
2047
+ # Information about the event associated with a code review.
2048
+ # @return [Types::EventInfo]
2049
+ #
2050
+ # @!attribute [rw] vendor_name
2051
+ # The name of the repository vendor used to upload code to an S3
2052
+ # bucket for a CI/CD code review. For example, if code and artifacts
2053
+ # are uploaded to an S3 bucket for a CI/CD code review by GitHub
2054
+ # scripts from a GitHub repository, then the repository association's
2055
+ # `ProviderType` is `S3Bucket` and the CI/CD repository vendor name is
2056
+ # GitHub. For more information, see the definition for `ProviderType`
2057
+ # in [RepositoryAssociation][1].
2058
+ #
2059
+ #
2060
+ #
2061
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html
2062
+ # @return [String]
2063
+ #
2064
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/RequestMetadata AWS API Documentation
2065
+ #
2066
+ class RequestMetadata < Struct.new(
2067
+ :request_id,
2068
+ :requester,
2069
+ :event_info,
2070
+ :vendor_name)
2071
+ SENSITIVE = []
2072
+ include Aws::Structure
2073
+ end
2074
+
1745
2075
  # The resource specified in the request was not found.
1746
2076
  #
1747
2077
  # @!attribute [rw] message
@@ -1755,9 +2085,145 @@ module Aws::CodeGuruReviewer
1755
2085
  include Aws::Structure
1756
2086
  end
1757
2087
 
1758
- # Specifies the source code that is analyzed in a code review. A code
1759
- # review can analyze the source code that is specified using a pull
1760
- # request diff or a branch in an associated repository.
2088
+ # Information about an associated repository in an S3 bucket. The
2089
+ # associated repository contains a source code .zip file and a build
2090
+ # artifacts .zip file that contains .jar or .class files.
2091
+ #
2092
+ # @note When making an API call, you may pass S3BucketRepository
2093
+ # data as a hash:
2094
+ #
2095
+ # {
2096
+ # name: "Name", # required
2097
+ # details: {
2098
+ # bucket_name: "S3BucketName",
2099
+ # code_artifacts: {
2100
+ # source_code_artifacts_object_key: "SourceCodeArtifactsObjectKey", # required
2101
+ # build_artifacts_object_key: "BuildArtifactsObjectKey",
2102
+ # },
2103
+ # },
2104
+ # }
2105
+ #
2106
+ # @!attribute [rw] name
2107
+ # The name of the repository when the `ProviderType` is `S3Bucket`.
2108
+ # @return [String]
2109
+ #
2110
+ # @!attribute [rw] details
2111
+ # An `S3RepositoryDetails` object that specifies the name of an S3
2112
+ # bucket and a `CodeArtifacts` object. The `CodeArtifacts` object
2113
+ # includes the S3 object keys for a source code .zip file and for a
2114
+ # build artifacts .zip file.
2115
+ # @return [Types::S3RepositoryDetails]
2116
+ #
2117
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/S3BucketRepository AWS API Documentation
2118
+ #
2119
+ class S3BucketRepository < Struct.new(
2120
+ :name,
2121
+ :details)
2122
+ SENSITIVE = []
2123
+ include Aws::Structure
2124
+ end
2125
+
2126
+ # Information about a repository in an S3 bucket.
2127
+ #
2128
+ # @note When making an API call, you may pass S3Repository
2129
+ # data as a hash:
2130
+ #
2131
+ # {
2132
+ # name: "Name", # required
2133
+ # bucket_name: "S3BucketName", # required
2134
+ # }
2135
+ #
2136
+ # @!attribute [rw] name
2137
+ # The name of the repository in the S3 bucket.
2138
+ # @return [String]
2139
+ #
2140
+ # @!attribute [rw] bucket_name
2141
+ # The name of the S3 bucket used for associating a new S3 repository.
2142
+ # It must begin with `codeguru-reviewer-`.
2143
+ # @return [String]
2144
+ #
2145
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/S3Repository AWS API Documentation
2146
+ #
2147
+ class S3Repository < Struct.new(
2148
+ :name,
2149
+ :bucket_name)
2150
+ SENSITIVE = []
2151
+ include Aws::Structure
2152
+ end
2153
+
2154
+ # Specifies the name of an S3 bucket and a `CodeArtifacts` object that
2155
+ # contains the S3 object keys for a source code .zip file and for a
2156
+ # build artifacts .zip file that contains .jar or .class files.
2157
+ #
2158
+ # @note When making an API call, you may pass S3RepositoryDetails
2159
+ # data as a hash:
2160
+ #
2161
+ # {
2162
+ # bucket_name: "S3BucketName",
2163
+ # code_artifacts: {
2164
+ # source_code_artifacts_object_key: "SourceCodeArtifactsObjectKey", # required
2165
+ # build_artifacts_object_key: "BuildArtifactsObjectKey",
2166
+ # },
2167
+ # }
2168
+ #
2169
+ # @!attribute [rw] bucket_name
2170
+ # The name of the S3 bucket used for associating a new S3 repository.
2171
+ # It must begin with `codeguru-reviewer-`.
2172
+ # @return [String]
2173
+ #
2174
+ # @!attribute [rw] code_artifacts
2175
+ # A `CodeArtifacts` object. The `CodeArtifacts` object includes the S3
2176
+ # object key for a source code .zip file and for a build artifacts
2177
+ # .zip file that contains .jar or .class files.
2178
+ # @return [Types::CodeArtifacts]
2179
+ #
2180
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/S3RepositoryDetails AWS API Documentation
2181
+ #
2182
+ class S3RepositoryDetails < Struct.new(
2183
+ :bucket_name,
2184
+ :code_artifacts)
2185
+ SENSITIVE = []
2186
+ include Aws::Structure
2187
+ end
2188
+
2189
+ # Specifies the source code that is analyzed in a code review.
2190
+ #
2191
+ # @note When making an API call, you may pass SourceCodeType
2192
+ # data as a hash:
2193
+ #
2194
+ # {
2195
+ # commit_diff: {
2196
+ # source_commit: "CommitId",
2197
+ # destination_commit: "CommitId",
2198
+ # merge_base_commit: "CommitId",
2199
+ # },
2200
+ # repository_head: {
2201
+ # branch_name: "BranchName", # required
2202
+ # },
2203
+ # branch_diff: {
2204
+ # source_branch_name: "BranchName", # required
2205
+ # destination_branch_name: "BranchName", # required
2206
+ # },
2207
+ # s3_bucket_repository: {
2208
+ # name: "Name", # required
2209
+ # details: {
2210
+ # bucket_name: "S3BucketName",
2211
+ # code_artifacts: {
2212
+ # source_code_artifacts_object_key: "SourceCodeArtifactsObjectKey", # required
2213
+ # build_artifacts_object_key: "BuildArtifactsObjectKey",
2214
+ # },
2215
+ # },
2216
+ # },
2217
+ # request_metadata: {
2218
+ # request_id: "RequestId",
2219
+ # requester: "Requester",
2220
+ # event_info: {
2221
+ # name: "EventName",
2222
+ # state: "EventState",
2223
+ # },
2224
+ # vendor_name: "GitHub", # accepts GitHub, GitLab, NativeS3
2225
+ # },
2226
+ # }
1761
2227
  #
1762
2228
  # @!attribute [rw] commit_diff
1763
2229
  # A [ `SourceCodeType` ][1] that specifies a commit diff created by a
@@ -1777,11 +2243,44 @@ module Aws::CodeGuruReviewer
1777
2243
  # [1]: https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType
1778
2244
  # @return [Types::RepositoryHeadSourceCodeType]
1779
2245
  #
2246
+ # @!attribute [rw] branch_diff
2247
+ # A type of [ `SourceCodeType` ][1] that specifies a source branch
2248
+ # name and a destination branch name in an associated repository.
2249
+ #
2250
+ #
2251
+ #
2252
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType
2253
+ # @return [Types::BranchDiffSourceCodeType]
2254
+ #
2255
+ # @!attribute [rw] s3_bucket_repository
2256
+ # Information about an associated repository in an S3 bucket that
2257
+ # includes its name and an `S3RepositoryDetails` object. The
2258
+ # `S3RepositoryDetails` object includes the name of an S3 bucket, an
2259
+ # S3 key for a source code .zip file, and an S3 key for a build
2260
+ # artifacts .zip file. `S3BucketRepository` is required in [
2261
+ # `SourceCodeType` ][1] for `S3BucketRepository` based code reviews.
2262
+ #
2263
+ #
2264
+ #
2265
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType
2266
+ # @return [Types::S3BucketRepository]
2267
+ #
2268
+ # @!attribute [rw] request_metadata
2269
+ # Metadata that is associated with a code review. This applies to any
2270
+ # type of code review supported by CodeGuru Reviewer. The
2271
+ # `RequestMetadaa` field captures any event metadata. For example, it
2272
+ # might capture metadata associated with an event trigger, such as a
2273
+ # push or a pull request.
2274
+ # @return [Types::RequestMetadata]
2275
+ #
1780
2276
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/SourceCodeType AWS API Documentation
1781
2277
  #
1782
2278
  class SourceCodeType < Struct.new(
1783
2279
  :commit_diff,
1784
- :repository_head)
2280
+ :repository_head,
2281
+ :branch_diff,
2282
+ :s3_bucket_repository,
2283
+ :request_metadata)
1785
2284
  SENSITIVE = []
1786
2285
  include Aws::Structure
1787
2286
  end
@@ -1864,7 +2363,8 @@ module Aws::CodeGuruReviewer
1864
2363
  # @!attribute [rw] owner
1865
2364
  # The owner of the repository. For a GitHub, GitHub Enterprise, or
1866
2365
  # Bitbucket repository, this is the username for the account that owns
1867
- # the repository.
2366
+ # the repository. For an S3 repository, this can be the username or
2367
+ # AWS account ID.
1868
2368
  # @return [String]
1869
2369
  #
1870
2370
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/ThirdPartySourceRepository AWS API Documentation