aws-sdk-codegurureviewer 1.16.0 → 1.20.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')
@@ -41,12 +46,18 @@ module Aws::CodeGuruReviewer
41
46
  DescribeRepositoryAssociationResponse = Shapes::StructureShape.new(name: 'DescribeRepositoryAssociationResponse')
42
47
  DisassociateRepositoryRequest = Shapes::StructureShape.new(name: 'DisassociateRepositoryRequest')
43
48
  DisassociateRepositoryResponse = Shapes::StructureShape.new(name: 'DisassociateRepositoryResponse')
49
+ EncryptionOption = Shapes::StringShape.new(name: 'EncryptionOption')
44
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')
45
54
  FilePath = Shapes::StringShape.new(name: 'FilePath')
46
55
  FindingsCount = Shapes::IntegerShape.new(name: 'FindingsCount')
47
56
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
48
57
  JobState = Shapes::StringShape.new(name: 'JobState')
49
58
  JobStates = Shapes::ListShape.new(name: 'JobStates')
59
+ KMSKeyDetails = Shapes::StructureShape.new(name: 'KMSKeyDetails')
60
+ KMSKeyId = Shapes::StringShape.new(name: 'KMSKeyId')
50
61
  LineNumber = Shapes::IntegerShape.new(name: 'LineNumber')
51
62
  ListCodeReviewsMaxResults = Shapes::IntegerShape.new(name: 'ListCodeReviewsMaxResults')
52
63
  ListCodeReviewsRequest = Shapes::StructureShape.new(name: 'ListCodeReviewsRequest')
@@ -76,6 +87,7 @@ module Aws::CodeGuruReviewer
76
87
  PutRecommendationFeedbackResponse = Shapes::StructureShape.new(name: 'PutRecommendationFeedbackResponse')
77
88
  Reaction = Shapes::StringShape.new(name: 'Reaction')
78
89
  Reactions = Shapes::ListShape.new(name: 'Reactions')
90
+ RecommendationCategory = Shapes::StringShape.new(name: 'RecommendationCategory')
79
91
  RecommendationFeedback = Shapes::StructureShape.new(name: 'RecommendationFeedback')
80
92
  RecommendationFeedbackSummaries = Shapes::ListShape.new(name: 'RecommendationFeedbackSummaries')
81
93
  RecommendationFeedbackSummary = Shapes::StructureShape.new(name: 'RecommendationFeedbackSummary')
@@ -92,7 +104,15 @@ module Aws::CodeGuruReviewer
92
104
  RepositoryAssociationSummary = Shapes::StructureShape.new(name: 'RepositoryAssociationSummary')
93
105
  RepositoryHeadSourceCodeType = Shapes::StructureShape.new(name: 'RepositoryHeadSourceCodeType')
94
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')
95
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')
96
116
  SourceCodeType = Shapes::StructureShape.new(name: 'SourceCodeType')
97
117
  StateReason = Shapes::StringShape.new(name: 'StateReason')
98
118
  TagKey = Shapes::StringShape.new(name: 'TagKey')
@@ -111,19 +131,31 @@ module Aws::CodeGuruReviewer
111
131
  UserId = Shapes::StringShape.new(name: 'UserId')
112
132
  UserIds = Shapes::ListShape.new(name: 'UserIds')
113
133
  ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
134
+ VendorName = Shapes::StringShape.new(name: 'VendorName')
114
135
 
115
136
  AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
116
137
  AccessDeniedException.struct_class = Types::AccessDeniedException
117
138
 
139
+ AnalysisTypes.member = Shapes::ShapeRef.new(shape: AnalysisType)
140
+
118
141
  AssociateRepositoryRequest.add_member(:repository, Shapes::ShapeRef.new(shape: Repository, required: true, location_name: "Repository"))
119
142
  AssociateRepositoryRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: ClientRequestToken, location_name: "ClientRequestToken", metadata: {"idempotencyToken"=>true}))
120
143
  AssociateRepositoryRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
144
+ AssociateRepositoryRequest.add_member(:kms_key_details, Shapes::ShapeRef.new(shape: KMSKeyDetails, location_name: "KMSKeyDetails"))
121
145
  AssociateRepositoryRequest.struct_class = Types::AssociateRepositoryRequest
122
146
 
123
147
  AssociateRepositoryResponse.add_member(:repository_association, Shapes::ShapeRef.new(shape: RepositoryAssociation, location_name: "RepositoryAssociation"))
124
148
  AssociateRepositoryResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
125
149
  AssociateRepositoryResponse.struct_class = Types::AssociateRepositoryResponse
126
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
+
127
159
  CodeCommitRepository.add_member(:name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "Name"))
128
160
  CodeCommitRepository.struct_class = Types::CodeCommitRepository
129
161
 
@@ -141,6 +173,7 @@ module Aws::CodeGuruReviewer
141
173
  CodeReview.add_member(:source_code_type, Shapes::ShapeRef.new(shape: SourceCodeType, location_name: "SourceCodeType"))
142
174
  CodeReview.add_member(:association_arn, Shapes::ShapeRef.new(shape: AssociationArn, location_name: "AssociationArn"))
143
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"))
144
177
  CodeReview.struct_class = Types::CodeReview
145
178
 
146
179
  CodeReviewSummaries.member = Shapes::ShapeRef.new(shape: CodeReviewSummary)
@@ -156,13 +189,16 @@ module Aws::CodeGuruReviewer
156
189
  CodeReviewSummary.add_member(:type, Shapes::ShapeRef.new(shape: Type, location_name: "Type"))
157
190
  CodeReviewSummary.add_member(:pull_request_id, Shapes::ShapeRef.new(shape: PullRequestId, location_name: "PullRequestId"))
158
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"))
159
193
  CodeReviewSummary.struct_class = Types::CodeReviewSummary
160
194
 
161
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"))
162
197
  CodeReviewType.struct_class = Types::CodeReviewType
163
198
 
164
199
  CommitDiffSourceCodeType.add_member(:source_commit, Shapes::ShapeRef.new(shape: CommitId, location_name: "SourceCommit"))
165
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"))
166
202
  CommitDiffSourceCodeType.struct_class = Types::CommitDiffSourceCodeType
167
203
 
168
204
  ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
@@ -205,11 +241,19 @@ module Aws::CodeGuruReviewer
205
241
  DisassociateRepositoryResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
206
242
  DisassociateRepositoryResponse.struct_class = Types::DisassociateRepositoryResponse
207
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
+
208
248
  InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
209
249
  InternalServerException.struct_class = Types::InternalServerException
210
250
 
211
251
  JobStates.member = Shapes::ShapeRef.new(shape: JobState)
212
252
 
253
+ KMSKeyDetails.add_member(:kms_key_id, Shapes::ShapeRef.new(shape: KMSKeyId, location_name: "KMSKeyId"))
254
+ KMSKeyDetails.add_member(:encryption_option, Shapes::ShapeRef.new(shape: EncryptionOption, location_name: "EncryptionOption"))
255
+ KMSKeyDetails.struct_class = Types::KMSKeyDetails
256
+
213
257
  ListCodeReviewsRequest.add_member(:provider_types, Shapes::ShapeRef.new(shape: ProviderTypes, location: "querystring", location_name: "ProviderTypes"))
214
258
  ListCodeReviewsRequest.add_member(:states, Shapes::ShapeRef.new(shape: JobStates, location: "querystring", location_name: "States"))
215
259
  ListCodeReviewsRequest.add_member(:repository_names, Shapes::ShapeRef.new(shape: RepositoryNames, location: "querystring", location_name: "RepositoryNames"))
@@ -310,14 +354,17 @@ module Aws::CodeGuruReviewer
310
354
  RecommendationSummary.add_member(:start_line, Shapes::ShapeRef.new(shape: LineNumber, location_name: "StartLine"))
311
355
  RecommendationSummary.add_member(:end_line, Shapes::ShapeRef.new(shape: LineNumber, location_name: "EndLine"))
312
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"))
313
358
  RecommendationSummary.struct_class = Types::RecommendationSummary
314
359
 
315
360
  Repository.add_member(:code_commit, Shapes::ShapeRef.new(shape: CodeCommitRepository, location_name: "CodeCommit"))
316
361
  Repository.add_member(:bitbucket, Shapes::ShapeRef.new(shape: ThirdPartySourceRepository, location_name: "Bitbucket"))
317
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"))
318
364
  Repository.struct_class = Types::Repository
319
365
 
320
- 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"))
321
368
  RepositoryAnalysis.struct_class = Types::RepositoryAnalysis
322
369
 
323
370
  RepositoryAssociation.add_member(:association_id, Shapes::ShapeRef.new(shape: AssociationId, location_name: "AssociationId"))
@@ -330,6 +377,8 @@ module Aws::CodeGuruReviewer
330
377
  RepositoryAssociation.add_member(:state_reason, Shapes::ShapeRef.new(shape: StateReason, location_name: "StateReason"))
331
378
  RepositoryAssociation.add_member(:last_updated_time_stamp, Shapes::ShapeRef.new(shape: TimeStamp, location_name: "LastUpdatedTimeStamp"))
332
379
  RepositoryAssociation.add_member(:created_time_stamp, Shapes::ShapeRef.new(shape: TimeStamp, location_name: "CreatedTimeStamp"))
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"))
333
382
  RepositoryAssociation.struct_class = Types::RepositoryAssociation
334
383
 
335
384
  RepositoryAssociationStates.member = Shapes::ShapeRef.new(shape: RepositoryAssociationState)
@@ -351,11 +400,32 @@ module Aws::CodeGuruReviewer
351
400
 
352
401
  RepositoryNames.member = Shapes::ShapeRef.new(shape: Name)
353
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
+
354
409
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
355
410
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
356
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
+
357
424
  SourceCodeType.add_member(:commit_diff, Shapes::ShapeRef.new(shape: CommitDiffSourceCodeType, location_name: "CommitDiff"))
358
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"))
359
429
  SourceCodeType.struct_class = Types::SourceCodeType
360
430
 
361
431
  TagKeyList.member = Shapes::ShapeRef.new(shape: TagKey)
@@ -41,11 +41,19 @@ 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: {
47
51
  # "TagKey" => "TagValue",
48
52
  # },
53
+ # kms_key_details: {
54
+ # kms_key_id: "KMSKeyId",
55
+ # encryption_option: "AWS_OWNED_CMK", # accepts AWS_OWNED_CMK, CUSTOMER_MANAGED_CMK
56
+ # },
49
57
  # }
50
58
  #
51
59
  # @!attribute [rw] repository
@@ -74,12 +82,24 @@ module Aws::CodeGuruReviewer
74
82
  # values are case sensitive.
75
83
  # @return [Hash<String,String>]
76
84
  #
85
+ # @!attribute [rw] kms_key_details
86
+ # A `KMSKeyDetails` object that contains:
87
+ #
88
+ # * The encryption option for this repository association. It is
89
+ # either owned by AWS Key Management Service (KMS) (`AWS_OWNED_CMK`)
90
+ # or customer managed (`CUSTOMER_MANAGED_CMK`).
91
+ #
92
+ # * The ID of the AWS KMS key that is associated with this respository
93
+ # association.
94
+ # @return [Types::KMSKeyDetails]
95
+ #
77
96
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/AssociateRepositoryRequest AWS API Documentation
78
97
  #
79
98
  class AssociateRepositoryRequest < Struct.new(
80
99
  :repository,
81
100
  :client_request_token,
82
- :tags)
101
+ :tags,
102
+ :kms_key_details)
83
103
  SENSITIVE = []
84
104
  include Aws::Structure
85
105
  end
@@ -110,6 +130,80 @@ module Aws::CodeGuruReviewer
110
130
  include Aws::Structure
111
131
  end
112
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
+
113
207
  # Information about an AWS CodeCommit repository. The CodeCommit
114
208
  # repository must be in the same AWS Region and AWS account where its
115
209
  # CodeGuru Reviewer code reviews are configured.
@@ -161,7 +255,8 @@ module Aws::CodeGuruReviewer
161
255
  # The owner of the repository. For an AWS CodeCommit repository, this
162
256
  # is the AWS account ID of the account that owns the repository. For a
163
257
  # GitHub, GitHub Enterprise Server, or Bitbucket repository, this is
164
- # 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.
165
260
  # @return [String]
166
261
  #
167
262
  # @!attribute [rw] provider_type
@@ -223,6 +318,12 @@ module Aws::CodeGuruReviewer
223
318
  # The statistics from the code review.
224
319
  # @return [Types::Metrics]
225
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
+ #
226
327
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/CodeReview AWS API Documentation
227
328
  #
228
329
  class CodeReview < Struct.new(
@@ -239,7 +340,8 @@ module Aws::CodeGuruReviewer
239
340
  :pull_request_id,
240
341
  :source_code_type,
241
342
  :association_arn,
242
- :metrics)
343
+ :metrics,
344
+ :analysis_types)
243
345
  SENSITIVE = []
244
346
  include Aws::Structure
245
347
  end
@@ -266,7 +368,8 @@ module Aws::CodeGuruReviewer
266
368
  # The owner of the repository. For an AWS CodeCommit repository, this
267
369
  # is the AWS account ID of the account that owns the repository. For a
268
370
  # GitHub, GitHub Enterprise Server, or Bitbucket repository, this is
269
- # 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.
270
373
  # @return [String]
271
374
  #
272
375
  # @!attribute [rw] provider_type
@@ -310,6 +413,10 @@ module Aws::CodeGuruReviewer
310
413
  # The statistics from the code review.
311
414
  # @return [Types::MetricsSummary]
312
415
  #
416
+ # @!attribute [rw] source_code_type
417
+ # Specifies the source code that is analyzed in a code review.
418
+ # @return [Types::SourceCodeType]
419
+ #
313
420
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/CodeReviewSummary AWS API Documentation
314
421
  #
315
422
  class CodeReviewSummary < Struct.new(
@@ -323,7 +430,8 @@ module Aws::CodeGuruReviewer
323
430
  :last_updated_time_stamp,
324
431
  :type,
325
432
  :pull_request_id,
326
- :metrics_summary)
433
+ :metrics_summary,
434
+ :source_code_type)
327
435
  SENSITIVE = []
328
436
  include Aws::Structure
329
437
  end
@@ -331,12 +439,10 @@ module Aws::CodeGuruReviewer
331
439
  # The type of a code review. There are two code review types:
332
440
  #
333
441
  # * `PullRequest` - A code review that is automatically triggered by a
334
- # pull request on an assocaited repository. Because this type of code
335
- # review is automatically generated, you cannot specify this code
336
- # review type using [ `CreateCodeReview` ][1].
442
+ # pull request on an associated repository.
337
443
  #
338
444
  # * `RepositoryAnalysis` - A code review that analyzes all code under a
339
- # specified branch in an associated respository. The assocated
445
+ # specified branch in an associated repository. The associated
340
446
  # repository is specified using its ARN in [ `CreateCodeReview` ][1].
341
447
  #
342
448
  #
@@ -348,15 +454,49 @@ module Aws::CodeGuruReviewer
348
454
  #
349
455
  # {
350
456
  # repository_analysis: { # required
351
- # repository_head: { # required
457
+ # repository_head: {
352
458
  # branch_name: "BranchName", # required
353
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
+ # },
354
493
  # },
494
+ # analysis_types: ["Security"], # accepts Security, CodeQuality
355
495
  # }
356
496
  #
357
497
  # @!attribute [rw] repository_analysis
358
498
  # A code review that analyzes all code under a specified branch in an
359
- # associated respository. The assocated repository is specified using
499
+ # associated repository. The associated repository is specified using
360
500
  # its ARN in [ `CreateCodeReview` ][1].
361
501
  #
362
502
  #
@@ -364,34 +504,59 @@ module Aws::CodeGuruReviewer
364
504
  # [1]: https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CreateCodeReview
365
505
  # @return [Types::RepositoryAnalysis]
366
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
+ #
367
513
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/CodeReviewType AWS API Documentation
368
514
  #
369
515
  class CodeReviewType < Struct.new(
370
- :repository_analysis)
516
+ :repository_analysis,
517
+ :analysis_types)
371
518
  SENSITIVE = []
372
519
  include Aws::Structure
373
520
  end
374
521
 
375
522
  # A type of [ `SourceCodeType` ][1] that specifies the commit diff for a
376
- # 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.
377
526
  #
378
527
  #
379
528
  #
380
529
  # [1]: https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType
381
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
+ #
382
540
  # @!attribute [rw] source_commit
383
- # 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.
384
543
  # @return [String]
385
544
  #
386
545
  # @!attribute [rw] destination_commit
387
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.
388
552
  # @return [String]
389
553
  #
390
554
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/CommitDiffSourceCodeType AWS API Documentation
391
555
  #
392
556
  class CommitDiffSourceCodeType < Struct.new(
393
557
  :source_commit,
394
- :destination_commit)
558
+ :destination_commit,
559
+ :merge_base_commit)
395
560
  SENSITIVE = []
396
561
  include Aws::Structure
397
562
  end
@@ -419,10 +584,44 @@ module Aws::CodeGuruReviewer
419
584
  # repository_association_arn: "AssociationArn", # required
420
585
  # type: { # required
421
586
  # repository_analysis: { # required
422
- # repository_head: { # required
587
+ # repository_head: {
423
588
  # branch_name: "BranchName", # required
424
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
+ # },
425
623
  # },
624
+ # analysis_types: ["Security"], # accepts Security, CodeQuality
426
625
  # },
427
626
  # client_request_token: "ClientRequestToken",
428
627
  # }
@@ -686,6 +885,36 @@ module Aws::CodeGuruReviewer
686
885
  include Aws::Structure
687
886
  end
688
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
+
689
918
  # The server encountered an internal error and is unable to complete the
690
919
  # request.
691
920
  #
@@ -700,11 +929,48 @@ module Aws::CodeGuruReviewer
700
929
  include Aws::Structure
701
930
  end
702
931
 
932
+ # An object that contains:
933
+ #
934
+ # * The encryption option for a repository association. It is either
935
+ # owned by AWS Key Management Service (KMS) (`AWS_OWNED_CMK`) or
936
+ # customer managed (`CUSTOMER_MANAGED_CMK`).
937
+ #
938
+ # * The ID of the AWS KMS key that is associated with a respository
939
+ # association.
940
+ #
941
+ # @note When making an API call, you may pass KMSKeyDetails
942
+ # data as a hash:
943
+ #
944
+ # {
945
+ # kms_key_id: "KMSKeyId",
946
+ # encryption_option: "AWS_OWNED_CMK", # accepts AWS_OWNED_CMK, CUSTOMER_MANAGED_CMK
947
+ # }
948
+ #
949
+ # @!attribute [rw] kms_key_id
950
+ # The ID of the AWS KMS key that is associated with a respository
951
+ # association.
952
+ # @return [String]
953
+ #
954
+ # @!attribute [rw] encryption_option
955
+ # The encryption option for a repository association. It is either
956
+ # owned by AWS Key Management Service (KMS) (`AWS_OWNED_CMK`) or
957
+ # customer managed (`CUSTOMER_MANAGED_CMK`).
958
+ # @return [String]
959
+ #
960
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/KMSKeyDetails AWS API Documentation
961
+ #
962
+ class KMSKeyDetails < Struct.new(
963
+ :kms_key_id,
964
+ :encryption_option)
965
+ SENSITIVE = []
966
+ include Aws::Structure
967
+ end
968
+
703
969
  # @note When making an API call, you may pass ListCodeReviewsRequest
704
970
  # data as a hash:
705
971
  #
706
972
  # {
707
- # provider_types: ["CodeCommit"], # accepts CodeCommit, GitHub, Bitbucket, GitHubEnterpriseServer
973
+ # provider_types: ["CodeCommit"], # accepts CodeCommit, GitHub, Bitbucket, GitHubEnterpriseServer, S3Bucket
708
974
  # states: ["Completed"], # accepts Completed, Pending, Failed, Deleting
709
975
  # repository_names: ["Name"],
710
976
  # type: "PullRequest", # required, accepts PullRequest, RepositoryAnalysis
@@ -927,7 +1193,7 @@ module Aws::CodeGuruReviewer
927
1193
  # data as a hash:
928
1194
  #
929
1195
  # {
930
- # provider_types: ["CodeCommit"], # accepts CodeCommit, GitHub, Bitbucket, GitHubEnterpriseServer
1196
+ # provider_types: ["CodeCommit"], # accepts CodeCommit, GitHub, Bitbucket, GitHubEnterpriseServer, S3Bucket
931
1197
  # states: ["Associated"], # accepts Associated, Associating, Failed, Disassociating, Disassociated
932
1198
  # names: ["Name"],
933
1199
  # owners: ["Owner"],
@@ -1330,6 +1596,10 @@ module Aws::CodeGuruReviewer
1330
1596
  # for the lines of code between the start line and the end line.
1331
1597
  # @return [String]
1332
1598
  #
1599
+ # @!attribute [rw] recommendation_category
1600
+ # The type of a recommendation.
1601
+ # @return [String]
1602
+ #
1333
1603
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/RecommendationSummary AWS API Documentation
1334
1604
  #
1335
1605
  class RecommendationSummary < Struct.new(
@@ -1337,7 +1607,8 @@ module Aws::CodeGuruReviewer
1337
1607
  :recommendation_id,
1338
1608
  :start_line,
1339
1609
  :end_line,
1340
- :description)
1610
+ :description,
1611
+ :recommendation_category)
1341
1612
  SENSITIVE = []
1342
1613
  include Aws::Structure
1343
1614
  end
@@ -1364,6 +1635,10 @@ module Aws::CodeGuruReviewer
1364
1635
  # connection_arn: "ConnectionArn", # required
1365
1636
  # owner: "Owner", # required
1366
1637
  # },
1638
+ # s3_bucket: {
1639
+ # name: "Name", # required
1640
+ # bucket_name: "S3BucketName", # required
1641
+ # },
1367
1642
  # }
1368
1643
  #
1369
1644
  # @!attribute [rw] code_commit
@@ -1378,18 +1653,23 @@ module Aws::CodeGuruReviewer
1378
1653
  # Information about a GitHub Enterprise Server repository.
1379
1654
  # @return [Types::ThirdPartySourceRepository]
1380
1655
  #
1656
+ # @!attribute [rw] s3_bucket
1657
+ # Information about a repository in an S3 bucket.
1658
+ # @return [Types::S3Repository]
1659
+ #
1381
1660
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/Repository AWS API Documentation
1382
1661
  #
1383
1662
  class Repository < Struct.new(
1384
1663
  :code_commit,
1385
1664
  :bitbucket,
1386
- :git_hub_enterprise_server)
1665
+ :git_hub_enterprise_server,
1666
+ :s3_bucket)
1387
1667
  SENSITIVE = []
1388
1668
  include Aws::Structure
1389
1669
  end
1390
1670
 
1391
1671
  # A code review type that analyzes all code under a specified branch in
1392
- # an associated respository. The assocated repository is specified using
1672
+ # an associated repository. The associated repository is specified using
1393
1673
  # its ARN when you call [ `CreateCodeReview` ][1].
1394
1674
  #
1395
1675
  #
@@ -1400,9 +1680,42 @@ module Aws::CodeGuruReviewer
1400
1680
  # data as a hash:
1401
1681
  #
1402
1682
  # {
1403
- # repository_head: { # required
1683
+ # repository_head: {
1404
1684
  # branch_name: "BranchName", # required
1405
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
+ # },
1406
1719
  # }
1407
1720
  #
1408
1721
  # @!attribute [rw] repository_head
@@ -1414,10 +1727,15 @@ module Aws::CodeGuruReviewer
1414
1727
  # [1]: https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType
1415
1728
  # @return [Types::RepositoryHeadSourceCodeType]
1416
1729
  #
1730
+ # @!attribute [rw] source_code_type
1731
+ # Specifies the source code that is analyzed in a code review.
1732
+ # @return [Types::SourceCodeType]
1733
+ #
1417
1734
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/RepositoryAnalysis AWS API Documentation
1418
1735
  #
1419
1736
  class RepositoryAnalysis < Struct.new(
1420
- :repository_head)
1737
+ :repository_head,
1738
+ :source_code_type)
1421
1739
  SENSITIVE = []
1422
1740
  include Aws::Structure
1423
1741
  end
@@ -1459,7 +1777,8 @@ module Aws::CodeGuruReviewer
1459
1777
  # The owner of the repository. For an AWS CodeCommit repository, this
1460
1778
  # is the AWS account ID of the account that owns the repository. For a
1461
1779
  # GitHub, GitHub Enterprise Server, or Bitbucket repository, this is
1462
- # 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.
1463
1782
  # @return [String]
1464
1783
  #
1465
1784
  # @!attribute [rw] provider_type
@@ -1522,6 +1841,23 @@ module Aws::CodeGuruReviewer
1522
1841
  # association was created.
1523
1842
  # @return [Time]
1524
1843
  #
1844
+ # @!attribute [rw] kms_key_details
1845
+ # A `KMSKeyDetails` object that contains:
1846
+ #
1847
+ # * The encryption option for this repository association. It is
1848
+ # either owned by AWS Key Management Service (KMS) (`AWS_OWNED_CMK`)
1849
+ # or customer managed (`CUSTOMER_MANAGED_CMK`).
1850
+ #
1851
+ # * The ID of the AWS KMS key that is associated with this respository
1852
+ # association.
1853
+ # @return [Types::KMSKeyDetails]
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
+ #
1525
1861
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/RepositoryAssociation AWS API Documentation
1526
1862
  #
1527
1863
  class RepositoryAssociation < Struct.new(
@@ -1534,7 +1870,9 @@ module Aws::CodeGuruReviewer
1534
1870
  :state,
1535
1871
  :state_reason,
1536
1872
  :last_updated_time_stamp,
1537
- :created_time_stamp)
1873
+ :created_time_stamp,
1874
+ :kms_key_details,
1875
+ :s3_repository_details)
1538
1876
  SENSITIVE = []
1539
1877
  include Aws::Structure
1540
1878
  end
@@ -1587,7 +1925,8 @@ module Aws::CodeGuruReviewer
1587
1925
  # The owner of the repository. For an AWS CodeCommit repository, this
1588
1926
  # is the AWS account ID of the account that owns the repository. For a
1589
1927
  # GitHub, GitHub Enterprise Server, or Bitbucket repository, this is
1590
- # 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.
1591
1930
  # @return [String]
1592
1931
  #
1593
1932
  # @!attribute [rw] provider_type
@@ -1677,6 +2016,62 @@ module Aws::CodeGuruReviewer
1677
2016
  include Aws::Structure
1678
2017
  end
1679
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
+
1680
2075
  # The resource specified in the request was not found.
1681
2076
  #
1682
2077
  # @!attribute [rw] message
@@ -1690,9 +2085,145 @@ module Aws::CodeGuruReviewer
1690
2085
  include Aws::Structure
1691
2086
  end
1692
2087
 
1693
- # Specifies the source code that is analyzed in a code review. A code
1694
- # review can analyze the source code that is specified using a pull
1695
- # 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
+ # }
1696
2227
  #
1697
2228
  # @!attribute [rw] commit_diff
1698
2229
  # A [ `SourceCodeType` ][1] that specifies a commit diff created by a
@@ -1712,11 +2243,44 @@ module Aws::CodeGuruReviewer
1712
2243
  # [1]: https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType
1713
2244
  # @return [Types::RepositoryHeadSourceCodeType]
1714
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
+ #
1715
2276
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/SourceCodeType AWS API Documentation
1716
2277
  #
1717
2278
  class SourceCodeType < Struct.new(
1718
2279
  :commit_diff,
1719
- :repository_head)
2280
+ :repository_head,
2281
+ :branch_diff,
2282
+ :s3_bucket_repository,
2283
+ :request_metadata)
1720
2284
  SENSITIVE = []
1721
2285
  include Aws::Structure
1722
2286
  end
@@ -1799,7 +2363,8 @@ module Aws::CodeGuruReviewer
1799
2363
  # @!attribute [rw] owner
1800
2364
  # The owner of the repository. For a GitHub, GitHub Enterprise, or
1801
2365
  # Bitbucket repository, this is the username for the account that owns
1802
- # the repository.
2366
+ # the repository. For an S3 repository, this can be the username or
2367
+ # AWS account ID.
1803
2368
  # @return [String]
1804
2369
  #
1805
2370
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguru-reviewer-2019-09-19/ThirdPartySourceRepository AWS API Documentation