aws-sdk-codebuild 1.73.0 → 1.77.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.
@@ -32,6 +32,7 @@ module Aws::CodeBuild
32
32
  BatchGetReportsOutput = Shapes::StructureShape.new(name: 'BatchGetReportsOutput')
33
33
  BatchRestrictions = Shapes::StructureShape.new(name: 'BatchRestrictions')
34
34
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
35
+ BucketOwnerAccess = Shapes::StringShape.new(name: 'BucketOwnerAccess')
35
36
  Build = Shapes::StructureShape.new(name: 'Build')
36
37
  BuildArtifacts = Shapes::StructureShape.new(name: 'BuildArtifacts')
37
38
  BuildArtifactsList = Shapes::ListShape.new(name: 'BuildArtifactsList')
@@ -175,6 +176,7 @@ module Aws::CodeBuild
175
176
  ProjectSource = Shapes::StructureShape.new(name: 'ProjectSource')
176
177
  ProjectSourceVersion = Shapes::StructureShape.new(name: 'ProjectSourceVersion')
177
178
  ProjectSources = Shapes::ListShape.new(name: 'ProjectSources')
179
+ ProjectVisibilityType = Shapes::StringShape.new(name: 'ProjectVisibilityType')
178
180
  Projects = Shapes::ListShape.new(name: 'Projects')
179
181
  PutResourcePolicyInput = Shapes::StructureShape.new(name: 'PutResourcePolicyInput')
180
182
  PutResourcePolicyOutput = Shapes::StructureShape.new(name: 'PutResourcePolicyOutput')
@@ -242,6 +244,8 @@ module Aws::CodeBuild
242
244
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
243
245
  UpdateProjectInput = Shapes::StructureShape.new(name: 'UpdateProjectInput')
244
246
  UpdateProjectOutput = Shapes::StructureShape.new(name: 'UpdateProjectOutput')
247
+ UpdateProjectVisibilityInput = Shapes::StructureShape.new(name: 'UpdateProjectVisibilityInput')
248
+ UpdateProjectVisibilityOutput = Shapes::StructureShape.new(name: 'UpdateProjectVisibilityOutput')
245
249
  UpdateReportGroupInput = Shapes::StructureShape.new(name: 'UpdateReportGroupInput')
246
250
  UpdateReportGroupOutput = Shapes::StructureShape.new(name: 'UpdateReportGroupOutput')
247
251
  UpdateWebhookInput = Shapes::StructureShape.new(name: 'UpdateWebhookInput')
@@ -344,6 +348,7 @@ module Aws::CodeBuild
344
348
  BuildArtifacts.add_member(:override_artifact_name, Shapes::ShapeRef.new(shape: WrapperBoolean, location_name: "overrideArtifactName"))
345
349
  BuildArtifacts.add_member(:encryption_disabled, Shapes::ShapeRef.new(shape: WrapperBoolean, location_name: "encryptionDisabled"))
346
350
  BuildArtifacts.add_member(:artifact_identifier, Shapes::ShapeRef.new(shape: String, location_name: "artifactIdentifier"))
351
+ BuildArtifacts.add_member(:bucket_owner_access, Shapes::ShapeRef.new(shape: BucketOwnerAccess, location_name: "bucketOwnerAccess"))
347
352
  BuildArtifacts.struct_class = Types::BuildArtifacts
348
353
 
349
354
  BuildArtifactsList.member = Shapes::ShapeRef.new(shape: BuildArtifacts)
@@ -815,6 +820,9 @@ module Aws::CodeBuild
815
820
  Project.add_member(:file_system_locations, Shapes::ShapeRef.new(shape: ProjectFileSystemLocations, location_name: "fileSystemLocations"))
816
821
  Project.add_member(:build_batch_config, Shapes::ShapeRef.new(shape: ProjectBuildBatchConfig, location_name: "buildBatchConfig"))
817
822
  Project.add_member(:concurrent_build_limit, Shapes::ShapeRef.new(shape: WrapperInt, location_name: "concurrentBuildLimit"))
823
+ Project.add_member(:project_visibility, Shapes::ShapeRef.new(shape: ProjectVisibilityType, location_name: "projectVisibility"))
824
+ Project.add_member(:public_project_alias, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "publicProjectAlias"))
825
+ Project.add_member(:resource_access_role, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "resourceAccessRole"))
818
826
  Project.struct_class = Types::Project
819
827
 
820
828
  ProjectArns.member = Shapes::ShapeRef.new(shape: NonEmptyString)
@@ -828,6 +836,7 @@ module Aws::CodeBuild
828
836
  ProjectArtifacts.add_member(:override_artifact_name, Shapes::ShapeRef.new(shape: WrapperBoolean, location_name: "overrideArtifactName"))
829
837
  ProjectArtifacts.add_member(:encryption_disabled, Shapes::ShapeRef.new(shape: WrapperBoolean, location_name: "encryptionDisabled"))
830
838
  ProjectArtifacts.add_member(:artifact_identifier, Shapes::ShapeRef.new(shape: String, location_name: "artifactIdentifier"))
839
+ ProjectArtifacts.add_member(:bucket_owner_access, Shapes::ShapeRef.new(shape: BucketOwnerAccess, location_name: "bucketOwnerAccess"))
831
840
  ProjectArtifacts.struct_class = Types::ProjectArtifacts
832
841
 
833
842
  ProjectArtifactsList.member = Shapes::ShapeRef.new(shape: ProjectArtifacts)
@@ -985,6 +994,7 @@ module Aws::CodeBuild
985
994
  S3LogsConfig.add_member(:status, Shapes::ShapeRef.new(shape: LogsConfigStatusType, required: true, location_name: "status"))
986
995
  S3LogsConfig.add_member(:location, Shapes::ShapeRef.new(shape: String, location_name: "location"))
987
996
  S3LogsConfig.add_member(:encryption_disabled, Shapes::ShapeRef.new(shape: WrapperBoolean, location_name: "encryptionDisabled"))
997
+ S3LogsConfig.add_member(:bucket_owner_access, Shapes::ShapeRef.new(shape: BucketOwnerAccess, location_name: "bucketOwnerAccess"))
988
998
  S3LogsConfig.struct_class = Types::S3LogsConfig
989
999
 
990
1000
  S3ReportExportConfig.add_member(:bucket, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "bucket"))
@@ -1147,6 +1157,16 @@ module Aws::CodeBuild
1147
1157
  UpdateProjectOutput.add_member(:project, Shapes::ShapeRef.new(shape: Project, location_name: "project"))
1148
1158
  UpdateProjectOutput.struct_class = Types::UpdateProjectOutput
1149
1159
 
1160
+ UpdateProjectVisibilityInput.add_member(:project_arn, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "projectArn"))
1161
+ UpdateProjectVisibilityInput.add_member(:project_visibility, Shapes::ShapeRef.new(shape: ProjectVisibilityType, required: true, location_name: "projectVisibility"))
1162
+ UpdateProjectVisibilityInput.add_member(:resource_access_role, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "resourceAccessRole"))
1163
+ UpdateProjectVisibilityInput.struct_class = Types::UpdateProjectVisibilityInput
1164
+
1165
+ UpdateProjectVisibilityOutput.add_member(:project_arn, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "projectArn"))
1166
+ UpdateProjectVisibilityOutput.add_member(:public_project_alias, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "publicProjectAlias"))
1167
+ UpdateProjectVisibilityOutput.add_member(:project_visibility, Shapes::ShapeRef.new(shape: ProjectVisibilityType, location_name: "projectVisibility"))
1168
+ UpdateProjectVisibilityOutput.struct_class = Types::UpdateProjectVisibilityOutput
1169
+
1150
1170
  UpdateReportGroupInput.add_member(:arn, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "arn"))
1151
1171
  UpdateReportGroupInput.add_member(:export_config, Shapes::ShapeRef.new(shape: ReportExportConfig, location_name: "exportConfig"))
1152
1172
  UpdateReportGroupInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
@@ -1677,6 +1697,16 @@ module Aws::CodeBuild
1677
1697
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1678
1698
  end)
1679
1699
 
1700
+ api.add_operation(:update_project_visibility, Seahorse::Model::Operation.new.tap do |o|
1701
+ o.name = "UpdateProjectVisibility"
1702
+ o.http_method = "POST"
1703
+ o.http_request_uri = "/"
1704
+ o.input = Shapes::ShapeRef.new(shape: UpdateProjectVisibilityInput)
1705
+ o.output = Shapes::ShapeRef.new(shape: UpdateProjectVisibilityOutput)
1706
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
1707
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1708
+ end)
1709
+
1680
1710
  api.add_operation(:update_report_group, Seahorse::Model::Operation.new.tap do |o|
1681
1711
  o.name = "UpdateReportGroup"
1682
1712
  o.http_method = "POST"
@@ -427,8 +427,8 @@ module Aws::CodeBuild
427
427
  # * If CodePipeline started the build, the pipeline's name (for
428
428
  # example, `codepipeline/my-demo-pipeline`).
429
429
  #
430
- # * If an Identity and Access Management user started the build, the
431
- # user's name (for example, `MyUserName`).
430
+ # * If an IAM user started the build, the user's name (for example,
431
+ # `MyUserName`).
432
432
  #
433
433
  # * If the Jenkins plugin for CodeBuild started the build, the string
434
434
  # `CodeBuild-Jenkins-Plugin`.
@@ -579,6 +579,53 @@ module Aws::CodeBuild
579
579
  # An identifier for this artifact definition.
580
580
  # @return [String]
581
581
  #
582
+ # @!attribute [rw] bucket_owner_access
583
+ # Specifies the bucket owner's access for objects that another
584
+ # account uploads to their Amazon S3 bucket. By default, only the
585
+ # account that uploads the objects to the bucket has access to these
586
+ # objects. This property allows you to give the bucket owner access to
587
+ # these objects.
588
+ #
589
+ # <note markdown="1"> To use this property, your CodeBuild service role must have the
590
+ # `s3:PutBucketAcl` permission. This permission allows CodeBuild to
591
+ # modify the access control list for the bucket.
592
+ #
593
+ # </note>
594
+ #
595
+ # This property can be one of the following values:
596
+ #
597
+ # NONE
598
+ #
599
+ # : The bucket owner does not have access to the objects. This is the
600
+ # default.
601
+ #
602
+ # READ\_ONLY
603
+ #
604
+ # : The bucket owner has read-only access to the objects. The
605
+ # uploading account retains ownership of the objects.
606
+ #
607
+ # FULL
608
+ #
609
+ # : The bucket owner has full access to the objects. Object ownership
610
+ # is determined by the following criteria:
611
+ #
612
+ # * If the bucket is configured with the **Bucket owner preferred**
613
+ # setting, the bucket owner owns the objects. The uploading
614
+ # account will have object access as specified by the bucket's
615
+ # policy.
616
+ #
617
+ # * Otherwise, the uploading account retains ownership of the
618
+ # objects.
619
+ #
620
+ # For more information about Amazon S3 object ownership, see
621
+ # [Controlling ownership of uploaded objects using S3 Object
622
+ # Ownership][1] in the *Amazon Simple Storage Service User Guide*.
623
+ #
624
+ #
625
+ #
626
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
627
+ # @return [String]
628
+ #
582
629
  # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BuildArtifacts AWS API Documentation
583
630
  #
584
631
  class BuildArtifacts < Struct.new(
@@ -587,7 +634,8 @@ module Aws::CodeBuild
587
634
  :md5sum,
588
635
  :override_artifact_name,
589
636
  :encryption_disabled,
590
- :artifact_identifier)
637
+ :artifact_identifier,
638
+ :bucket_owner_access)
591
639
  SENSITIVE = []
592
640
  include Aws::Structure
593
641
  end
@@ -722,8 +770,7 @@ module Aws::CodeBuild
722
770
  # * If CodePipeline started the build, the pipeline's name (for
723
771
  # example, `codepipeline/my-demo-pipeline`).
724
772
  #
725
- # * If an Identity and Access Management user started the build, the
726
- # user's name.
773
+ # * If an IAM user started the build, the user's name.
727
774
  #
728
775
  # * If the Jenkins plugin for CodeBuild started the build, the string
729
776
  # `CodeBuild-Jenkins-Plugin`.
@@ -1453,6 +1500,7 @@ module Aws::CodeBuild
1453
1500
  # override_artifact_name: false,
1454
1501
  # encryption_disabled: false,
1455
1502
  # artifact_identifier: "String",
1503
+ # bucket_owner_access: "NONE", # accepts NONE, READ_ONLY, FULL
1456
1504
  # },
1457
1505
  # secondary_artifacts: [
1458
1506
  # {
@@ -1465,6 +1513,7 @@ module Aws::CodeBuild
1465
1513
  # override_artifact_name: false,
1466
1514
  # encryption_disabled: false,
1467
1515
  # artifact_identifier: "String",
1516
+ # bucket_owner_access: "NONE", # accepts NONE, READ_ONLY, FULL
1468
1517
  # },
1469
1518
  # ],
1470
1519
  # cache: {
@@ -1517,6 +1566,7 @@ module Aws::CodeBuild
1517
1566
  # status: "ENABLED", # required, accepts ENABLED, DISABLED
1518
1567
  # location: "String",
1519
1568
  # encryption_disabled: false,
1569
+ # bucket_owner_access: "NONE", # accepts NONE, READ_ONLY, FULL
1520
1570
  # },
1521
1571
  # },
1522
1572
  # file_system_locations: [
@@ -1616,9 +1666,9 @@ module Aws::CodeBuild
1616
1666
  # @return [Types::ProjectEnvironment]
1617
1667
  #
1618
1668
  # @!attribute [rw] service_role
1619
- # The ARN of the Identity and Access Management role that enables
1620
- # CodeBuild to interact with dependent Amazon Web Services services on
1621
- # behalf of the Amazon Web Services account.
1669
+ # The ARN of the IAM role that enables CodeBuild to interact with
1670
+ # dependent Amazon Web Services services on behalf of the Amazon Web
1671
+ # Services account.
1622
1672
  # @return [String]
1623
1673
  #
1624
1674
  # @!attribute [rw] timeout_in_minutes
@@ -2347,10 +2397,9 @@ module Aws::CodeBuild
2347
2397
  # We strongly discourage the use of `PLAINTEXT` environment variables
2348
2398
  # to store sensitive values, especially Amazon Web Services secret key
2349
2399
  # IDs and secret access keys. `PLAINTEXT` environment variables can be
2350
- # displayed in plain text using the CodeBuild console and the AWS
2351
- # Command Line Interface (AWS CLI). For sensitive values, we recommend
2352
- # you use an environment variable of type `PARAMETER_STORE` or
2353
- # `SECRETS_MANAGER`.
2400
+ # displayed in plain text using the CodeBuild console and the CLI. For
2401
+ # sensitive values, we recommend you use an environment variable of
2402
+ # type `PARAMETER_STORE` or `SECRETS_MANAGER`.
2354
2403
  # @return [String]
2355
2404
  #
2356
2405
  # @!attribute [rw] type
@@ -3458,6 +3507,7 @@ module Aws::CodeBuild
3458
3507
  # status: "ENABLED", # required, accepts ENABLED, DISABLED
3459
3508
  # location: "String",
3460
3509
  # encryption_disabled: false,
3510
+ # bucket_owner_access: "NONE", # accepts NONE, READ_ONLY, FULL
3461
3511
  # },
3462
3512
  # }
3463
3513
  #
@@ -3668,9 +3718,9 @@ module Aws::CodeBuild
3668
3718
  # @return [Types::ProjectEnvironment]
3669
3719
  #
3670
3720
  # @!attribute [rw] service_role
3671
- # The ARN of the Identity and Access Management role that enables
3672
- # CodeBuild to interact with dependent Amazon Web Services services on
3673
- # behalf of the Amazon Web Services account.
3721
+ # The ARN of the IAM role that enables CodeBuild to interact with
3722
+ # dependent Amazon Web Services services on behalf of the Amazon Web
3723
+ # Services account.
3674
3724
  # @return [String]
3675
3725
  #
3676
3726
  # @!attribute [rw] timeout_in_minutes
@@ -3755,6 +3805,28 @@ module Aws::CodeBuild
3755
3805
  # limit, new builds are throttled and are not run.
3756
3806
  # @return [Integer]
3757
3807
  #
3808
+ # @!attribute [rw] project_visibility
3809
+ # Specifies the visibility of the project's builds. Possible values
3810
+ # are:
3811
+ #
3812
+ # PUBLIC\_READ
3813
+ #
3814
+ # : The project builds are visible to the public.
3815
+ #
3816
+ # PRIVATE
3817
+ #
3818
+ # : The project builds are not visible to the public.
3819
+ # @return [String]
3820
+ #
3821
+ # @!attribute [rw] public_project_alias
3822
+ # Contains the project identifier used with the public build APIs.
3823
+ # @return [String]
3824
+ #
3825
+ # @!attribute [rw] resource_access_role
3826
+ # The ARN of the IAM role that enables CodeBuild to access the
3827
+ # CloudWatch Logs and Amazon S3 artifacts for the project's builds.
3828
+ # @return [String]
3829
+ #
3758
3830
  # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/Project AWS API Documentation
3759
3831
  #
3760
3832
  class Project < Struct.new(
@@ -3782,7 +3854,10 @@ module Aws::CodeBuild
3782
3854
  :logs_config,
3783
3855
  :file_system_locations,
3784
3856
  :build_batch_config,
3785
- :concurrent_build_limit)
3857
+ :concurrent_build_limit,
3858
+ :project_visibility,
3859
+ :public_project_alias,
3860
+ :resource_access_role)
3786
3861
  SENSITIVE = []
3787
3862
  include Aws::Structure
3788
3863
  end
@@ -3802,6 +3877,7 @@ module Aws::CodeBuild
3802
3877
  # override_artifact_name: false,
3803
3878
  # encryption_disabled: false,
3804
3879
  # artifact_identifier: "String",
3880
+ # bucket_owner_access: "NONE", # accepts NONE, READ_ONLY, FULL
3805
3881
  # }
3806
3882
  #
3807
3883
  # @!attribute [rw] type
@@ -3945,6 +4021,53 @@ module Aws::CodeBuild
3945
4021
  # An identifier for this artifact definition.
3946
4022
  # @return [String]
3947
4023
  #
4024
+ # @!attribute [rw] bucket_owner_access
4025
+ # Specifies the bucket owner's access for objects that another
4026
+ # account uploads to their Amazon S3 bucket. By default, only the
4027
+ # account that uploads the objects to the bucket has access to these
4028
+ # objects. This property allows you to give the bucket owner access to
4029
+ # these objects.
4030
+ #
4031
+ # <note markdown="1"> To use this property, your CodeBuild service role must have the
4032
+ # `s3:PutBucketAcl` permission. This permission allows CodeBuild to
4033
+ # modify the access control list for the bucket.
4034
+ #
4035
+ # </note>
4036
+ #
4037
+ # This property can be one of the following values:
4038
+ #
4039
+ # NONE
4040
+ #
4041
+ # : The bucket owner does not have access to the objects. This is the
4042
+ # default.
4043
+ #
4044
+ # READ\_ONLY
4045
+ #
4046
+ # : The bucket owner has read-only access to the objects. The
4047
+ # uploading account retains ownership of the objects.
4048
+ #
4049
+ # FULL
4050
+ #
4051
+ # : The bucket owner has full access to the objects. Object ownership
4052
+ # is determined by the following criteria:
4053
+ #
4054
+ # * If the bucket is configured with the **Bucket owner preferred**
4055
+ # setting, the bucket owner owns the objects. The uploading
4056
+ # account will have object access as specified by the bucket's
4057
+ # policy.
4058
+ #
4059
+ # * Otherwise, the uploading account retains ownership of the
4060
+ # objects.
4061
+ #
4062
+ # For more information about Amazon S3 object ownership, see
4063
+ # [Controlling ownership of uploaded objects using S3 Object
4064
+ # Ownership][1] in the *Amazon Simple Storage Service User Guide*.
4065
+ #
4066
+ #
4067
+ #
4068
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
4069
+ # @return [String]
4070
+ #
3948
4071
  # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ProjectArtifacts AWS API Documentation
3949
4072
  #
3950
4073
  class ProjectArtifacts < Struct.new(
@@ -3956,7 +4079,8 @@ module Aws::CodeBuild
3956
4079
  :packaging,
3957
4080
  :override_artifact_name,
3958
4081
  :encryption_disabled,
3959
- :artifact_identifier)
4082
+ :artifact_identifier,
4083
+ :bucket_owner_access)
3960
4084
  SENSITIVE = []
3961
4085
  include Aws::Structure
3962
4086
  end
@@ -4464,17 +4588,17 @@ module Aws::CodeBuild
4464
4588
  #
4465
4589
  # * For source code in a GitHub repository, the HTTPS clone URL to the
4466
4590
  # repository that contains the source and the buildspec file. You
4467
- # must connect your account to your GitHub account. Use the
4468
- # CodeBuild console to start creating a build project. When you use
4469
- # the console to connect (or reconnect) with GitHub, on the GitHub
4470
- # **Authorize application** page, for **Organization access**,
4471
- # choose **Request access** next to each repository you want to
4472
- # allow CodeBuild to have access to, and then choose **Authorize
4473
- # application**. (After you have connected to your GitHub account,
4474
- # you do not need to finish creating the build project. You can
4475
- # leave the CodeBuild console.) To instruct CodeBuild to use this
4476
- # connection, in the `source` object, set the `auth` object's
4477
- # `type` value to `OAUTH`.
4591
+ # must connect your Amazon Web Services account to your GitHub
4592
+ # account. Use the CodeBuild console to start creating a build
4593
+ # project. When you use the console to connect (or reconnect) with
4594
+ # GitHub, on the GitHub **Authorize application** page, for
4595
+ # **Organization access**, choose **Request access** next to each
4596
+ # repository you want to allow CodeBuild to have access to, and then
4597
+ # choose **Authorize application**. (After you have connected to
4598
+ # your GitHub account, you do not need to finish creating the build
4599
+ # project. You can leave the CodeBuild console.) To instruct
4600
+ # CodeBuild to use this connection, in the `source` object, set the
4601
+ # `auth` object's `type` value to `OAUTH`.
4478
4602
  #
4479
4603
  # * For source code in a Bitbucket repository, the HTTPS clone URL to
4480
4604
  # the repository that contains the source and the buildspec file.
@@ -4509,11 +4633,12 @@ module Aws::CodeBuild
4509
4633
  # If this value is set, it can be either an inline buildspec
4510
4634
  # definition, the path to an alternate buildspec file relative to the
4511
4635
  # value of the built-in `CODEBUILD_SRC_DIR` environment variable, or
4512
- # the path to an S3 bucket. The bucket must be in the same Region as
4513
- # the build project. Specify the buildspec file using its ARN (for
4514
- # example, `arn:aws:s3:::my-codebuild-sample2/buildspec.yml`). If this
4515
- # value is not provided or is set to an empty string, the source code
4516
- # must contain a buildspec file in its root directory. For more
4636
+ # the path to an S3 bucket. The bucket must be in the same Amazon Web
4637
+ # Services Region as the build project. Specify the buildspec file
4638
+ # using its ARN (for example,
4639
+ # `arn:aws:s3:::my-codebuild-sample2/buildspec.yml`). If this value is
4640
+ # not provided or is set to an empty string, the source code must
4641
+ # contain a buildspec file in its root directory. For more
4517
4642
  # information, see [Buildspec File Name and Storage Location][1].
4518
4643
  #
4519
4644
  #
@@ -4715,7 +4840,7 @@ module Aws::CodeBuild
4715
4840
  # Secrets Manager.
4716
4841
  #
4717
4842
  # <note markdown="1"> The `credential` can use the name of the credentials only if they
4718
- # exist in your current Region.
4843
+ # exist in your current Amazon Web Services Region.
4719
4844
  #
4720
4845
  # </note>
4721
4846
  # @return [String]
@@ -5005,7 +5130,7 @@ module Aws::CodeBuild
5005
5130
  include Aws::Structure
5006
5131
  end
5007
5132
 
5008
- # Represents a resolved build artifact. A resolve artifact is an
5133
+ # Represents a resolved build artifact. A resolved artifact is an
5009
5134
  # artifact that is built and deployed to the destination, such as Amazon
5010
5135
  # S3.
5011
5136
  #
@@ -5141,6 +5266,7 @@ module Aws::CodeBuild
5141
5266
  # status: "ENABLED", # required, accepts ENABLED, DISABLED
5142
5267
  # location: "String",
5143
5268
  # encryption_disabled: false,
5269
+ # bucket_owner_access: "NONE", # accepts NONE, READ_ONLY, FULL
5144
5270
  # }
5145
5271
  #
5146
5272
  # @!attribute [rw] status
@@ -5163,12 +5289,60 @@ module Aws::CodeBuild
5163
5289
  # By default S3 build logs are encrypted.
5164
5290
  # @return [Boolean]
5165
5291
  #
5292
+ # @!attribute [rw] bucket_owner_access
5293
+ # Specifies the bucket owner's access for objects that another
5294
+ # account uploads to their Amazon S3 bucket. By default, only the
5295
+ # account that uploads the objects to the bucket has access to these
5296
+ # objects. This property allows you to give the bucket owner access to
5297
+ # these objects.
5298
+ #
5299
+ # <note markdown="1"> To use this property, your CodeBuild service role must have the
5300
+ # `s3:PutBucketAcl` permission. This permission allows CodeBuild to
5301
+ # modify the access control list for the bucket.
5302
+ #
5303
+ # </note>
5304
+ #
5305
+ # This property can be one of the following values:
5306
+ #
5307
+ # NONE
5308
+ #
5309
+ # : The bucket owner does not have access to the objects. This is the
5310
+ # default.
5311
+ #
5312
+ # READ\_ONLY
5313
+ #
5314
+ # : The bucket owner has read-only access to the objects. The
5315
+ # uploading account retains ownership of the objects.
5316
+ #
5317
+ # FULL
5318
+ #
5319
+ # : The bucket owner has full access to the objects. Object ownership
5320
+ # is determined by the following criteria:
5321
+ #
5322
+ # * If the bucket is configured with the **Bucket owner preferred**
5323
+ # setting, the bucket owner owns the objects. The uploading
5324
+ # account will have object access as specified by the bucket's
5325
+ # policy.
5326
+ #
5327
+ # * Otherwise, the uploading account retains ownership of the
5328
+ # objects.
5329
+ #
5330
+ # For more information about Amazon S3 object ownership, see
5331
+ # [Controlling ownership of uploaded objects using S3 Object
5332
+ # Ownership][1] in the *Amazon Simple Storage Service User Guide*.
5333
+ #
5334
+ #
5335
+ #
5336
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
5337
+ # @return [String]
5338
+ #
5166
5339
  # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/S3LogsConfig AWS API Documentation
5167
5340
  #
5168
5341
  class S3LogsConfig < Struct.new(
5169
5342
  :status,
5170
5343
  :location,
5171
- :encryption_disabled)
5344
+ :encryption_disabled,
5345
+ :bucket_owner_access)
5172
5346
  SENSITIVE = []
5173
5347
  include Aws::Structure
5174
5348
  end
@@ -5343,6 +5517,7 @@ module Aws::CodeBuild
5343
5517
  # override_artifact_name: false,
5344
5518
  # encryption_disabled: false,
5345
5519
  # artifact_identifier: "String",
5520
+ # bucket_owner_access: "NONE", # accepts NONE, READ_ONLY, FULL
5346
5521
  # },
5347
5522
  # secondary_artifacts_override: [
5348
5523
  # {
@@ -5355,6 +5530,7 @@ module Aws::CodeBuild
5355
5530
  # override_artifact_name: false,
5356
5531
  # encryption_disabled: false,
5357
5532
  # artifact_identifier: "String",
5533
+ # bucket_owner_access: "NONE", # accepts NONE, READ_ONLY, FULL
5358
5534
  # },
5359
5535
  # ],
5360
5536
  # environment_variables_override: [
@@ -5402,6 +5578,7 @@ module Aws::CodeBuild
5402
5578
  # status: "ENABLED", # required, accepts ENABLED, DISABLED
5403
5579
  # location: "String",
5404
5580
  # encryption_disabled: false,
5581
+ # bucket_owner_access: "NONE", # accepts NONE, READ_ONLY, FULL
5405
5582
  # },
5406
5583
  # },
5407
5584
  # registry_credential_override: {
@@ -5525,11 +5702,12 @@ module Aws::CodeBuild
5525
5702
  # If this value is set, it can be either an inline buildspec
5526
5703
  # definition, the path to an alternate buildspec file relative to the
5527
5704
  # value of the built-in `CODEBUILD_SRC_DIR` environment variable, or
5528
- # the path to an S3 bucket. The bucket must be in the same Region as
5529
- # the build project. Specify the buildspec file using its ARN (for
5530
- # example, `arn:aws:s3:::my-codebuild-sample2/buildspec.yml`). If this
5531
- # value is not provided or is set to an empty string, the source code
5532
- # must contain a buildspec file in its root directory. For more
5705
+ # the path to an S3 bucket. The bucket must be in the same Amazon Web
5706
+ # Services Region as the build project. Specify the buildspec file
5707
+ # using its ARN (for example,
5708
+ # `arn:aws:s3:::my-codebuild-sample2/buildspec.yml`). If this value is
5709
+ # not provided or is set to an empty string, the source code must
5710
+ # contain a buildspec file in its root directory. For more
5533
5711
  # information, see [Buildspec File Name and Storage Location][1].
5534
5712
  #
5535
5713
  #
@@ -5763,6 +5941,7 @@ module Aws::CodeBuild
5763
5941
  # override_artifact_name: false,
5764
5942
  # encryption_disabled: false,
5765
5943
  # artifact_identifier: "String",
5944
+ # bucket_owner_access: "NONE", # accepts NONE, READ_ONLY, FULL
5766
5945
  # },
5767
5946
  # secondary_artifacts_override: [
5768
5947
  # {
@@ -5775,6 +5954,7 @@ module Aws::CodeBuild
5775
5954
  # override_artifact_name: false,
5776
5955
  # encryption_disabled: false,
5777
5956
  # artifact_identifier: "String",
5957
+ # bucket_owner_access: "NONE", # accepts NONE, READ_ONLY, FULL
5778
5958
  # },
5779
5959
  # ],
5780
5960
  # environment_variables_override: [
@@ -5826,6 +6006,7 @@ module Aws::CodeBuild
5826
6006
  # status: "ENABLED", # required, accepts ENABLED, DISABLED
5827
6007
  # location: "String",
5828
6008
  # encryption_disabled: false,
6009
+ # bucket_owner_access: "NONE", # accepts NONE, READ_ONLY, FULL
5829
6010
  # },
5830
6011
  # },
5831
6012
  # registry_credential_override: {
@@ -5939,11 +6120,12 @@ module Aws::CodeBuild
5939
6120
  # If this value is set, it can be either an inline buildspec
5940
6121
  # definition, the path to an alternate buildspec file relative to the
5941
6122
  # value of the built-in `CODEBUILD_SRC_DIR` environment variable, or
5942
- # the path to an S3 bucket. The bucket must be in the same Region as
5943
- # the build project. Specify the buildspec file using its ARN (for
5944
- # example, `arn:aws:s3:::my-codebuild-sample2/buildspec.yml`). If this
5945
- # value is not provided or is set to an empty string, the source code
5946
- # must contain a buildspec file in its root directory. For more
6123
+ # the path to an S3 bucket. The bucket must be in the same Amazon Web
6124
+ # Services Region as the build project. Specify the buildspec file
6125
+ # using its ARN (for example,
6126
+ # `arn:aws:s3:::my-codebuild-sample2/buildspec.yml`). If this value is
6127
+ # not provided or is set to an empty string, the source code must
6128
+ # contain a buildspec file in its root directory. For more
5947
6129
  # information, see [Buildspec File Name and Storage Location][1].
5948
6130
  #
5949
6131
  #
@@ -6425,6 +6607,7 @@ module Aws::CodeBuild
6425
6607
  # override_artifact_name: false,
6426
6608
  # encryption_disabled: false,
6427
6609
  # artifact_identifier: "String",
6610
+ # bucket_owner_access: "NONE", # accepts NONE, READ_ONLY, FULL
6428
6611
  # },
6429
6612
  # secondary_artifacts: [
6430
6613
  # {
@@ -6437,6 +6620,7 @@ module Aws::CodeBuild
6437
6620
  # override_artifact_name: false,
6438
6621
  # encryption_disabled: false,
6439
6622
  # artifact_identifier: "String",
6623
+ # bucket_owner_access: "NONE", # accepts NONE, READ_ONLY, FULL
6440
6624
  # },
6441
6625
  # ],
6442
6626
  # cache: {
@@ -6489,6 +6673,7 @@ module Aws::CodeBuild
6489
6673
  # status: "ENABLED", # required, accepts ENABLED, DISABLED
6490
6674
  # location: "String",
6491
6675
  # encryption_disabled: false,
6676
+ # bucket_owner_access: "NONE", # accepts NONE, READ_ONLY, FULL
6492
6677
  # },
6493
6678
  # },
6494
6679
  # file_system_locations: [
@@ -6594,9 +6779,9 @@ module Aws::CodeBuild
6594
6779
  # @return [Types::ProjectEnvironment]
6595
6780
  #
6596
6781
  # @!attribute [rw] service_role
6597
- # The replacement ARN of the Identity and Access Management role that
6598
- # enables CodeBuild to interact with dependent Amazon Web Services
6599
- # services on behalf of the Amazon Web Services account.
6782
+ # The replacement ARN of the IAM role that enables CodeBuild to
6783
+ # interact with dependent Amazon Web Services services on behalf of
6784
+ # the Amazon Web Services account.
6600
6785
  # @return [String]
6601
6786
  #
6602
6787
  # @!attribute [rw] timeout_in_minutes
@@ -6708,6 +6893,78 @@ module Aws::CodeBuild
6708
6893
  include Aws::Structure
6709
6894
  end
6710
6895
 
6896
+ # @note When making an API call, you may pass UpdateProjectVisibilityInput
6897
+ # data as a hash:
6898
+ #
6899
+ # {
6900
+ # project_arn: "NonEmptyString", # required
6901
+ # project_visibility: "PUBLIC_READ", # required, accepts PUBLIC_READ, PRIVATE
6902
+ # resource_access_role: "NonEmptyString",
6903
+ # }
6904
+ #
6905
+ # @!attribute [rw] project_arn
6906
+ # The Amazon Resource Name (ARN) of the build project.
6907
+ # @return [String]
6908
+ #
6909
+ # @!attribute [rw] project_visibility
6910
+ # Specifies the visibility of the project's builds. Possible values
6911
+ # are:
6912
+ #
6913
+ # PUBLIC\_READ
6914
+ #
6915
+ # : The project builds are visible to the public.
6916
+ #
6917
+ # PRIVATE
6918
+ #
6919
+ # : The project builds are not visible to the public.
6920
+ # @return [String]
6921
+ #
6922
+ # @!attribute [rw] resource_access_role
6923
+ # The ARN of the IAM role that enables CodeBuild to access the
6924
+ # CloudWatch Logs and Amazon S3 artifacts for the project's builds.
6925
+ # @return [String]
6926
+ #
6927
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/UpdateProjectVisibilityInput AWS API Documentation
6928
+ #
6929
+ class UpdateProjectVisibilityInput < Struct.new(
6930
+ :project_arn,
6931
+ :project_visibility,
6932
+ :resource_access_role)
6933
+ SENSITIVE = []
6934
+ include Aws::Structure
6935
+ end
6936
+
6937
+ # @!attribute [rw] project_arn
6938
+ # The Amazon Resource Name (ARN) of the build project.
6939
+ # @return [String]
6940
+ #
6941
+ # @!attribute [rw] public_project_alias
6942
+ # Contains the project identifier used with the public build APIs.
6943
+ # @return [String]
6944
+ #
6945
+ # @!attribute [rw] project_visibility
6946
+ # Specifies the visibility of the project's builds. Possible values
6947
+ # are:
6948
+ #
6949
+ # PUBLIC\_READ
6950
+ #
6951
+ # : The project builds are visible to the public.
6952
+ #
6953
+ # PRIVATE
6954
+ #
6955
+ # : The project builds are not visible to the public.
6956
+ # @return [String]
6957
+ #
6958
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/UpdateProjectVisibilityOutput AWS API Documentation
6959
+ #
6960
+ class UpdateProjectVisibilityOutput < Struct.new(
6961
+ :project_arn,
6962
+ :public_project_alias,
6963
+ :project_visibility)
6964
+ SENSITIVE = []
6965
+ include Aws::Structure
6966
+ end
6967
+
6711
6968
  # @note When making an API call, you may pass UpdateReportGroupInput
6712
6969
  # data as a hash:
6713
6970
  #