# frozen_string_literal: true # WARNING ABOUT GENERATED CODE # # This file is generated. See the contributing guide for more information: # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md # # WARNING ABOUT GENERATED CODE module Aws::CodeBuild module Types # An AWS service limit was exceeded for the calling AWS account. # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/AccountLimitExceededException AWS API Documentation # class AccountLimitExceededException < Aws::EmptyStructure; end # @note When making an API call, you may pass BatchDeleteBuildsInput # data as a hash: # # { # ids: ["NonEmptyString"], # required # } # # @!attribute [rw] ids # The IDs of the builds to delete. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BatchDeleteBuildsInput AWS API Documentation # class BatchDeleteBuildsInput < Struct.new( :ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] builds_deleted # The IDs of the builds that were successfully deleted. # @return [Array<String>] # # @!attribute [rw] builds_not_deleted # Information about any builds that could not be successfully deleted. # @return [Array<Types::BuildNotDeleted>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BatchDeleteBuildsOutput AWS API Documentation # class BatchDeleteBuildsOutput < Struct.new( :builds_deleted, :builds_not_deleted) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass BatchGetBuildBatchesInput # data as a hash: # # { # ids: ["NonEmptyString"], # required # } # # @!attribute [rw] ids # An array that contains the batch build identifiers to retrieve. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BatchGetBuildBatchesInput AWS API Documentation # class BatchGetBuildBatchesInput < Struct.new( :ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] build_batches # An array of `BuildBatch` objects that represent the retrieved batch # builds. # @return [Array<Types::BuildBatch>] # # @!attribute [rw] build_batches_not_found # An array that contains the identifiers of any batch builds that are # not found. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BatchGetBuildBatchesOutput AWS API Documentation # class BatchGetBuildBatchesOutput < Struct.new( :build_batches, :build_batches_not_found) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass BatchGetBuildsInput # data as a hash: # # { # ids: ["NonEmptyString"], # required # } # # @!attribute [rw] ids # The IDs of the builds. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BatchGetBuildsInput AWS API Documentation # class BatchGetBuildsInput < Struct.new( :ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] builds # Information about the requested builds. # @return [Array<Types::Build>] # # @!attribute [rw] builds_not_found # The IDs of builds for which information could not be found. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BatchGetBuildsOutput AWS API Documentation # class BatchGetBuildsOutput < Struct.new( :builds, :builds_not_found) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass BatchGetProjectsInput # data as a hash: # # { # names: ["NonEmptyString"], # required # } # # @!attribute [rw] names # The names or ARNs of the build projects. To get information about a # project shared with your AWS account, its ARN must be specified. You # cannot specify a shared project using its name. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BatchGetProjectsInput AWS API Documentation # class BatchGetProjectsInput < Struct.new( :names) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] projects # Information about the requested build projects. # @return [Array<Types::Project>] # # @!attribute [rw] projects_not_found # The names of build projects for which information could not be # found. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BatchGetProjectsOutput AWS API Documentation # class BatchGetProjectsOutput < Struct.new( :projects, :projects_not_found) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass BatchGetReportGroupsInput # data as a hash: # # { # report_group_arns: ["NonEmptyString"], # required # } # # @!attribute [rw] report_group_arns # An array of report group ARNs that identify the report groups to # return. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BatchGetReportGroupsInput AWS API Documentation # class BatchGetReportGroupsInput < Struct.new( :report_group_arns) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] report_groups # The array of report groups returned by `BatchGetReportGroups`. # @return [Array<Types::ReportGroup>] # # @!attribute [rw] report_groups_not_found # An array of ARNs passed to `BatchGetReportGroups` that are not # associated with a `ReportGroup`. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BatchGetReportGroupsOutput AWS API Documentation # class BatchGetReportGroupsOutput < Struct.new( :report_groups, :report_groups_not_found) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass BatchGetReportsInput # data as a hash: # # { # report_arns: ["NonEmptyString"], # required # } # # @!attribute [rw] report_arns # An array of ARNs that identify the `Report` objects to return. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BatchGetReportsInput AWS API Documentation # class BatchGetReportsInput < Struct.new( :report_arns) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] reports # The array of `Report` objects returned by `BatchGetReports`. # @return [Array<Types::Report>] # # @!attribute [rw] reports_not_found # An array of ARNs passed to `BatchGetReportGroups` that are not # associated with a `Report`. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BatchGetReportsOutput AWS API Documentation # class BatchGetReportsOutput < Struct.new( :reports, :reports_not_found) SENSITIVE = [] include Aws::Structure end # Specifies restrictions for the batch build. # # @note When making an API call, you may pass BatchRestrictions # data as a hash: # # { # maximum_builds_allowed: 1, # compute_types_allowed: ["NonEmptyString"], # } # # @!attribute [rw] maximum_builds_allowed # Specifies the maximum number of builds allowed. # @return [Integer] # # @!attribute [rw] compute_types_allowed # An array of strings that specify the compute types that are allowed # for the batch build. See [Build environment compute types][1] in the # *AWS CodeBuild User Guide* for these values. # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BatchRestrictions AWS API Documentation # class BatchRestrictions < Struct.new( :maximum_builds_allowed, :compute_types_allowed) SENSITIVE = [] include Aws::Structure end # Information about a build. # # @!attribute [rw] id # The unique ID for the build. # @return [String] # # @!attribute [rw] arn # The Amazon Resource Name (ARN) of the build. # @return [String] # # @!attribute [rw] build_number # The number of the build. For each project, the `buildNumber` of its # first build is `1`. The `buildNumber` of each subsequent build is # incremented by `1`. If a build is deleted, the `buildNumber` of # other builds does not change. # @return [Integer] # # @!attribute [rw] start_time # When the build process started, expressed in Unix time format. # @return [Time] # # @!attribute [rw] end_time # When the build process ended, expressed in Unix time format. # @return [Time] # # @!attribute [rw] current_phase # The current build phase. # @return [String] # # @!attribute [rw] build_status # The current status of the build. Valid values include: # # * `FAILED`\: The build failed. # # * `FAULT`\: The build faulted. # # * `IN_PROGRESS`\: The build is still in progress. # # * `STOPPED`\: The build stopped. # # * `SUCCEEDED`\: The build succeeded. # # * `TIMED_OUT`\: The build timed out. # @return [String] # # @!attribute [rw] source_version # Any version identifier for the version of the source code to be # built. If `sourceVersion` is specified at the project level, then # this `sourceVersion` (at the build level) takes precedence. # # For more information, see [Source Version Sample with CodeBuild][1] # in the *AWS CodeBuild User Guide*. # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html # @return [String] # # @!attribute [rw] resolved_source_version # An identifier for the version of this build's source code. # # * For AWS CodeCommit, GitHub, GitHub Enterprise, and BitBucket, the # commit ID. # # * For AWS CodePipeline, the source revision provided by AWS # CodePipeline. # # * For Amazon Simple Storage Service (Amazon S3), this does not # apply. # @return [String] # # @!attribute [rw] project_name # The name of the AWS CodeBuild project. # @return [String] # # @!attribute [rw] phases # Information about all previous build phases that are complete and # information about any current build phase that is not yet complete. # @return [Array<Types::BuildPhase>] # # @!attribute [rw] source # Information about the source code to be built. # @return [Types::ProjectSource] # # @!attribute [rw] secondary_sources # An array of `ProjectSource` objects. # @return [Array<Types::ProjectSource>] # # @!attribute [rw] secondary_source_versions # An array of `ProjectSourceVersion` objects. Each # `ProjectSourceVersion` must be one of: # # * For AWS CodeCommit: the commit ID, branch, or Git tag to use. # # * For GitHub: the commit ID, pull request ID, branch name, or tag # name that corresponds to the version of the source code you want # to build. If a pull request ID is specified, it must use the # format `pr/pull-request-ID` (for example, `pr/25`). If a branch # name is specified, the branch's HEAD commit ID is used. If not # specified, the default branch's HEAD commit ID is used. # # * For Bitbucket: the commit ID, branch name, or tag name that # corresponds to the version of the source code you want to build. # If a branch name is specified, the branch's HEAD commit ID is # used. If not specified, the default branch's HEAD commit ID is # used. # # * For Amazon Simple Storage Service (Amazon S3): the version ID of # the object that represents the build input ZIP file to use. # @return [Array<Types::ProjectSourceVersion>] # # @!attribute [rw] artifacts # Information about the output artifacts for the build. # @return [Types::BuildArtifacts] # # @!attribute [rw] secondary_artifacts # An array of `ProjectArtifacts` objects. # @return [Array<Types::BuildArtifacts>] # # @!attribute [rw] cache # Information about the cache for the build. # @return [Types::ProjectCache] # # @!attribute [rw] environment # Information about the build environment for this build. # @return [Types::ProjectEnvironment] # # @!attribute [rw] service_role # The name of a service role used for this build. # @return [String] # # @!attribute [rw] logs # Information about the build's logs in Amazon CloudWatch Logs. # @return [Types::LogsLocation] # # @!attribute [rw] timeout_in_minutes # How long, in minutes, for AWS CodeBuild to wait before timing out # this build if it does not get marked as completed. # @return [Integer] # # @!attribute [rw] queued_timeout_in_minutes # The number of minutes a build is allowed to be queued before it # times out. # @return [Integer] # # @!attribute [rw] build_complete # Whether the build is complete. True if complete; otherwise, false. # @return [Boolean] # # @!attribute [rw] initiator # The entity that started the build. Valid values include: # # * If AWS CodePipeline started the build, the pipeline's name (for # example, `codepipeline/my-demo-pipeline`). # # * If an AWS Identity and Access Management (IAM) user started the # build, the user's name (for example, `MyUserName`). # # * If the Jenkins plugin for AWS CodeBuild started the build, the # string `CodeBuild-Jenkins-Plugin`. # @return [String] # # @!attribute [rw] vpc_config # If your AWS CodeBuild project accesses resources in an Amazon VPC, # you provide this parameter that identifies the VPC ID and the list # of security group IDs and subnet IDs. The security groups and # subnets must belong to the same VPC. You must provide at least one # security group and one subnet ID. # @return [Types::VpcConfig] # # @!attribute [rw] network_interface # Describes a network interface. # @return [Types::NetworkInterface] # # @!attribute [rw] encryption_key # The AWS Key Management Service (AWS KMS) customer master key (CMK) # to be used for encrypting the build output artifacts. # # <note markdown="1"> You can use a cross-account KMS key to encrypt the build output # artifacts if your service role has permission to that key. # # </note> # # You can specify either the Amazon Resource Name (ARN) of the CMK or, # if available, the CMK's alias (using the format # `alias/<alias-name>`). # @return [String] # # @!attribute [rw] exported_environment_variables # A list of exported environment variables for this build. # @return [Array<Types::ExportedEnvironmentVariable>] # # @!attribute [rw] report_arns # An array of the ARNs associated with this build's reports. # @return [Array<String>] # # @!attribute [rw] file_system_locations # An array of `ProjectFileSystemLocation` objects for a CodeBuild # build project. A `ProjectFileSystemLocation` object specifies the # `identifier`, `location`, `mountOptions`, `mountPoint`, and `type` # of a file system created using Amazon Elastic File System. # @return [Array<Types::ProjectFileSystemLocation>] # # @!attribute [rw] debug_session # Contains information about the debug session for this build. # @return [Types::DebugSession] # # @!attribute [rw] build_batch_arn # The ARN of the batch build that this build is a member of, if # applicable. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/Build AWS API Documentation # class Build < Struct.new( :id, :arn, :build_number, :start_time, :end_time, :current_phase, :build_status, :source_version, :resolved_source_version, :project_name, :phases, :source, :secondary_sources, :secondary_source_versions, :artifacts, :secondary_artifacts, :cache, :environment, :service_role, :logs, :timeout_in_minutes, :queued_timeout_in_minutes, :build_complete, :initiator, :vpc_config, :network_interface, :encryption_key, :exported_environment_variables, :report_arns, :file_system_locations, :debug_session, :build_batch_arn) SENSITIVE = [] include Aws::Structure end # Information about build output artifacts. # # @!attribute [rw] location # Information about the location of the build artifacts. # @return [String] # # @!attribute [rw] sha256sum # The SHA-256 hash of the build artifact. # # You can use this hash along with a checksum tool to confirm file # integrity and authenticity. # # <note markdown="1"> This value is available only if the build project's `packaging` # value is set to `ZIP`. # # </note> # @return [String] # # @!attribute [rw] md5sum # The MD5 hash of the build artifact. # # You can use this hash along with a checksum tool to confirm file # integrity and authenticity. # # <note markdown="1"> This value is available only if the build project's `packaging` # value is set to `ZIP`. # # </note> # @return [String] # # @!attribute [rw] override_artifact_name # If this flag is set, a name specified in the buildspec file # overrides the artifact name. The name specified in a buildspec file # is calculated at build time and uses the Shell Command Language. For # example, you can append a date and time to your artifact name so # that it is always unique. # @return [Boolean] # # @!attribute [rw] encryption_disabled # Information that tells you if encryption for build artifacts is # disabled. # @return [Boolean] # # @!attribute [rw] artifact_identifier # An identifier for this artifact definition. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BuildArtifacts AWS API Documentation # class BuildArtifacts < Struct.new( :location, :sha256sum, :md5sum, :override_artifact_name, :encryption_disabled, :artifact_identifier) SENSITIVE = [] include Aws::Structure end # Contains information about a batch build. # # @!attribute [rw] id # The identifier of the batch build. # @return [String] # # @!attribute [rw] arn # The ARN of the batch build. # @return [String] # # @!attribute [rw] start_time # The date and time that the batch build started. # @return [Time] # # @!attribute [rw] end_time # The date and time that the batch build ended. # @return [Time] # # @!attribute [rw] current_phase # The current phase of the batch build. # @return [String] # # @!attribute [rw] build_batch_status # The status of the batch build. # @return [String] # # @!attribute [rw] source_version # The identifier of the version of the source code to be built. # @return [String] # # @!attribute [rw] resolved_source_version # The identifier of the resolved version of this batch build's source # code. # # * For AWS CodeCommit, GitHub, GitHub Enterprise, and BitBucket, the # commit ID. # # * For AWS CodePipeline, the source revision provided by AWS # CodePipeline. # # * For Amazon Simple Storage Service (Amazon S3), this does not # apply. # @return [String] # # @!attribute [rw] project_name # The name of the batch build project. # @return [String] # # @!attribute [rw] phases # An array of `BuildBatchPhase` objects the specify the phases of the # batch build. # @return [Array<Types::BuildBatchPhase>] # # @!attribute [rw] source # Information about the build input source code for the build project. # @return [Types::ProjectSource] # # @!attribute [rw] secondary_sources # An array of `ProjectSource` objects that define the sources for the # batch build. # @return [Array<Types::ProjectSource>] # # @!attribute [rw] secondary_source_versions # An array of `ProjectSourceVersion` objects. Each # `ProjectSourceVersion` must be one of: # # * For AWS CodeCommit: the commit ID, branch, or Git tag to use. # # * For GitHub: the commit ID, pull request ID, branch name, or tag # name that corresponds to the version of the source code you want # to build. If a pull request ID is specified, it must use the # format `pr/pull-request-ID` (for example, `pr/25`). If a branch # name is specified, the branch's HEAD commit ID is used. If not # specified, the default branch's HEAD commit ID is used. # # * For Bitbucket: the commit ID, branch name, or tag name that # corresponds to the version of the source code you want to build. # If a branch name is specified, the branch's HEAD commit ID is # used. If not specified, the default branch's HEAD commit ID is # used. # # * For Amazon Simple Storage Service (Amazon S3): the version ID of # the object that represents the build input ZIP file to use. # @return [Array<Types::ProjectSourceVersion>] # # @!attribute [rw] artifacts # A `BuildArtifacts` object the defines the build artifacts for this # batch build. # @return [Types::BuildArtifacts] # # @!attribute [rw] secondary_artifacts # An array of `BuildArtifacts` objects the define the build artifacts # for this batch build. # @return [Array<Types::BuildArtifacts>] # # @!attribute [rw] cache # Information about the cache for the build project. # @return [Types::ProjectCache] # # @!attribute [rw] environment # Information about the build environment of the build project. # @return [Types::ProjectEnvironment] # # @!attribute [rw] service_role # The name of a service role used for builds in the batch. # @return [String] # # @!attribute [rw] log_config # Information about logs for a build project. These can be logs in # Amazon CloudWatch Logs, built in a specified S3 bucket, or both. # @return [Types::LogsConfig] # # @!attribute [rw] build_timeout_in_minutes # Specifies the maximum amount of time, in minutes, that the build in # a batch must be completed in. # @return [Integer] # # @!attribute [rw] queued_timeout_in_minutes # Specifies the amount of time, in minutes, that the batch build is # allowed to be queued before it times out. # @return [Integer] # # @!attribute [rw] complete # Indicates if the batch build is complete. # @return [Boolean] # # @!attribute [rw] initiator # The entity that started the batch build. Valid values include: # # * If AWS CodePipeline started the build, the pipeline's name (for # example, `codepipeline/my-demo-pipeline`). # # * If an AWS Identity and Access Management (IAM) user started the # build, the user's name. # # * If the Jenkins plugin for AWS CodeBuild started the build, the # string `CodeBuild-Jenkins-Plugin`. # @return [String] # # @!attribute [rw] vpc_config # Information about the VPC configuration that AWS CodeBuild accesses. # @return [Types::VpcConfig] # # @!attribute [rw] encryption_key # The AWS Key Management Service (AWS KMS) customer master key (CMK) # to be used for encrypting the batch build output artifacts. # # <note markdown="1"> You can use a cross-account KMS key to encrypt the build output # artifacts if your service role has permission to that key. # # </note> # # You can specify either the Amazon Resource Name (ARN) of the CMK or, # if available, the CMK's alias (using the format # `alias/<alias-name>`). # @return [String] # # @!attribute [rw] build_batch_number # The number of the batch build. For each project, the # `buildBatchNumber` of its first batch build is `1`. The # `buildBatchNumber` of each subsequent batch build is incremented by # `1`. If a batch build is deleted, the `buildBatchNumber` of other # batch builds does not change. # @return [Integer] # # @!attribute [rw] file_system_locations # An array of `ProjectFileSystemLocation` objects for the batch build # project. A `ProjectFileSystemLocation` object specifies the # `identifier`, `location`, `mountOptions`, `mountPoint`, and `type` # of a file system created using Amazon Elastic File System. # @return [Array<Types::ProjectFileSystemLocation>] # # @!attribute [rw] build_batch_config # Contains configuration information about a batch build project. # @return [Types::ProjectBuildBatchConfig] # # @!attribute [rw] build_groups # An array of `BuildGroup` objects that define the build groups for # the batch build. # @return [Array<Types::BuildGroup>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BuildBatch AWS API Documentation # class BuildBatch < Struct.new( :id, :arn, :start_time, :end_time, :current_phase, :build_batch_status, :source_version, :resolved_source_version, :project_name, :phases, :source, :secondary_sources, :secondary_source_versions, :artifacts, :secondary_artifacts, :cache, :environment, :service_role, :log_config, :build_timeout_in_minutes, :queued_timeout_in_minutes, :complete, :initiator, :vpc_config, :encryption_key, :build_batch_number, :file_system_locations, :build_batch_config, :build_groups) SENSITIVE = [] include Aws::Structure end # Specifies filters when retrieving batch builds. # # @note When making an API call, you may pass BuildBatchFilter # data as a hash: # # { # status: "SUCCEEDED", # accepts SUCCEEDED, FAILED, FAULT, TIMED_OUT, IN_PROGRESS, STOPPED # } # # @!attribute [rw] status # The status of the batch builds to retrieve. Only batch builds that # have this status will be retrieved. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BuildBatchFilter AWS API Documentation # class BuildBatchFilter < Struct.new( :status) SENSITIVE = [] include Aws::Structure end # Contains information about a stage for a batch build. # # @!attribute [rw] phase_type # The name of the batch build phase. Valid values include: # # COMBINE\_ARTIFACTS # # : Build output artifacts are being combined and uploaded to the # output location. # # DOWNLOAD\_BATCHSPEC # # : The batch build specification is being downloaded. # # FAILED # # : One or more of the builds failed. # # IN\_PROGRESS # # : The batch build is in progress. # # STOPPED # # : The batch build was stopped. # # SUBMITTED # # : The btach build has been submitted. # # SUCCEEDED # # : The batch build succeeded. # @return [String] # # @!attribute [rw] phase_status # The current status of the batch build phase. Valid values include: # # FAILED # # : The build phase failed. # # FAULT # # : The build phase faulted. # # IN\_PROGRESS # # : The build phase is still in progress. # # QUEUED # # : The build has been submitted and is queued behind other submitted # builds. # # STOPPED # # : The build phase stopped. # # SUCCEEDED # # : The build phase succeeded. # # TIMED\_OUT # # : The build phase timed out. # @return [String] # # @!attribute [rw] start_time # When the batch build phase started, expressed in Unix time format. # @return [Time] # # @!attribute [rw] end_time # When the batch build phase ended, expressed in Unix time format. # @return [Time] # # @!attribute [rw] duration_in_seconds # How long, in seconds, between the starting and ending times of the # batch build's phase. # @return [Integer] # # @!attribute [rw] contexts # Additional information about the batch build phase. Especially to # help troubleshoot a failed btach build. # @return [Array<Types::PhaseContext>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BuildBatchPhase AWS API Documentation # class BuildBatchPhase < Struct.new( :phase_type, :phase_status, :start_time, :end_time, :duration_in_seconds, :contexts) SENSITIVE = [] include Aws::Structure end # Contains information about a batch build build group. Build groups are # used to combine builds that can run in parallel, while still being # able to set dependencies on other build groups. # # @!attribute [rw] identifier # Contains the identifier of the build group. # @return [String] # # @!attribute [rw] depends_on # An array of strings that contain the identifiers of the build groups # that this build group depends on. # @return [Array<String>] # # @!attribute [rw] ignore_failure # Specifies if failures in this build group can be ignored. # @return [Boolean] # # @!attribute [rw] current_build_summary # A `BuildSummary` object that contains a summary of the current build # group. # @return [Types::BuildSummary] # # @!attribute [rw] prior_build_summary_list # An array of `BuildSummary` objects that contain summaries of # previous build groups. # @return [Array<Types::BuildSummary>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BuildGroup AWS API Documentation # class BuildGroup < Struct.new( :identifier, :depends_on, :ignore_failure, :current_build_summary, :prior_build_summary_list) SENSITIVE = [] include Aws::Structure end # Information about a build that could not be successfully deleted. # # @!attribute [rw] id # The ID of the build that could not be successfully deleted. # @return [String] # # @!attribute [rw] status_code # Additional information about the build that could not be # successfully deleted. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BuildNotDeleted AWS API Documentation # class BuildNotDeleted < Struct.new( :id, :status_code) SENSITIVE = [] include Aws::Structure end # Information about a stage for a build. # # @!attribute [rw] phase_type # The name of the build phase. Valid values include: # # * `BUILD`\: Core build activities typically occur in this build # phase. # # * `COMPLETED`\: The build has been completed. # # * `DOWNLOAD_SOURCE`\: Source code is being downloaded in this build # phase. # # * `FINALIZING`\: The build process is completing in this build # phase. # # * `INSTALL`\: Installation activities typically occur in this build # phase. # # * `POST_BUILD`\: Post-build activities typically occur in this build # phase. # # * `PRE_BUILD`\: Pre-build activities typically occur in this build # phase. # # * `PROVISIONING`\: The build environment is being set up. # # * `QUEUED`\: The build has been submitted and is queued behind other # submitted builds. # # * `SUBMITTED`\: The build has been submitted. # # * `UPLOAD_ARTIFACTS`\: Build output artifacts are being uploaded to # the output location. # @return [String] # # @!attribute [rw] phase_status # The current status of the build phase. Valid values include: # # FAILED # # : The build phase failed. # # FAULT # # : The build phase faulted. # # IN\_PROGRESS # # : The build phase is still in progress. # # QUEUED # # : The build has been submitted and is queued behind other submitted # builds. # # STOPPED # # : The build phase stopped. # # SUCCEEDED # # : The build phase succeeded. # # TIMED\_OUT # # : The build phase timed out. # @return [String] # # @!attribute [rw] start_time # When the build phase started, expressed in Unix time format. # @return [Time] # # @!attribute [rw] end_time # When the build phase ended, expressed in Unix time format. # @return [Time] # # @!attribute [rw] duration_in_seconds # How long, in seconds, between the starting and ending times of the # build's phase. # @return [Integer] # # @!attribute [rw] contexts # Additional information about a build phase, especially to help # troubleshoot a failed build. # @return [Array<Types::PhaseContext>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BuildPhase AWS API Documentation # class BuildPhase < Struct.new( :phase_type, :phase_status, :start_time, :end_time, :duration_in_seconds, :contexts) SENSITIVE = [] include Aws::Structure end # Contains information that defines how the AWS CodeBuild build project # reports the build status to the source provider. # # @note When making an API call, you may pass BuildStatusConfig # data as a hash: # # { # context: "String", # target_url: "String", # } # # @!attribute [rw] context # Specifies the context of the build status CodeBuild sends to the # source provider. The usage of this parameter depends on the source # provider. # # Bitbucket # # : This parameter is used for the `name` parameter in the Bitbucket # commit status. For more information, see [build][1] in the # Bitbucket API documentation. # # GitHub/GitHub Enterprise Server # # : This parameter is used for the `context` parameter in the GitHub # commit status. For more information, see [Create a commit # status][2] in the GitHub developer guide. # # # # [1]: https://developer.atlassian.com/bitbucket/api/2/reference/resource/repositories/%7Bworkspace%7D/%7Brepo_slug%7D/commit/%7Bnode%7D/statuses/build # [2]: https://developer.github.com/v3/repos/statuses/#create-a-commit-status # @return [String] # # @!attribute [rw] target_url # Specifies the target url of the build status CodeBuild sends to the # source provider. The usage of this parameter depends on the source # provider. # # Bitbucket # # : This parameter is used for the `url` parameter in the Bitbucket # commit status. For more information, see [build][1] in the # Bitbucket API documentation. # # GitHub/GitHub Enterprise Server # # : This parameter is used for the `target_url` parameter in the # GitHub commit status. For more information, see [Create a commit # status][2] in the GitHub developer guide. # # # # [1]: https://developer.atlassian.com/bitbucket/api/2/reference/resource/repositories/%7Bworkspace%7D/%7Brepo_slug%7D/commit/%7Bnode%7D/statuses/build # [2]: https://developer.github.com/v3/repos/statuses/#create-a-commit-status # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BuildStatusConfig AWS API Documentation # class BuildStatusConfig < Struct.new( :context, :target_url) SENSITIVE = [] include Aws::Structure end # Contains summary information about a batch build group. # # @!attribute [rw] arn # The batch build ARN. # @return [String] # # @!attribute [rw] requested_on # When the build was started, expressed in Unix time format. # @return [Time] # # @!attribute [rw] build_status # The status of the build group. # # FAILED # # : The build group failed. # # FAULT # # : The build group faulted. # # IN\_PROGRESS # # : The build group is still in progress. # # STOPPED # # : The build group stopped. # # SUCCEEDED # # : The build group succeeded. # # TIMED\_OUT # # : The build group timed out. # @return [String] # # @!attribute [rw] primary_artifact # A `ResolvedArtifact` object that represents the primary build # artifacts for the build group. # @return [Types::ResolvedArtifact] # # @!attribute [rw] secondary_artifacts # An array of `ResolvedArtifact` objects that represents the secondary # build artifacts for the build group. # @return [Array<Types::ResolvedArtifact>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/BuildSummary AWS API Documentation # class BuildSummary < Struct.new( :arn, :requested_on, :build_status, :primary_artifact, :secondary_artifacts) SENSITIVE = [] include Aws::Structure end # Information about Amazon CloudWatch Logs for a build project. # # @note When making an API call, you may pass CloudWatchLogsConfig # data as a hash: # # { # status: "ENABLED", # required, accepts ENABLED, DISABLED # group_name: "String", # stream_name: "String", # } # # @!attribute [rw] status # The current status of the logs in Amazon CloudWatch Logs for a build # project. Valid values are: # # * `ENABLED`\: Amazon CloudWatch Logs are enabled for this build # project. # # * `DISABLED`\: Amazon CloudWatch Logs are not enabled for this build # project. # @return [String] # # @!attribute [rw] group_name # The group name of the logs in Amazon CloudWatch Logs. For more # information, see [Working with Log Groups and Log Streams][1]. # # # # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html # @return [String] # # @!attribute [rw] stream_name # The prefix of the stream name of the Amazon CloudWatch Logs. For # more information, see [Working with Log Groups and Log Streams][1]. # # # # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/CloudWatchLogsConfig AWS API Documentation # class CloudWatchLogsConfig < Struct.new( :status, :group_name, :stream_name) SENSITIVE = [] include Aws::Structure end # Contains code coverage report information. # # Line coverage measures how many statements your tests cover. A # statement is a single instruction, not including comments, # conditionals, etc. # # Branch coverage determines if your tests cover every possible branch # of a control structure, such as an `if` or `case` statement. # # @!attribute [rw] id # The identifier of the code coverage report. # @return [String] # # @!attribute [rw] report_arn # The ARN of the report. # @return [String] # # @!attribute [rw] file_path # The path of the test report file. # @return [String] # # @!attribute [rw] line_coverage_percentage # The percentage of lines that are covered by your tests. # @return [Float] # # @!attribute [rw] lines_covered # The number of lines that are covered by your tests. # @return [Integer] # # @!attribute [rw] lines_missed # The number of lines that are not covered by your tests. # @return [Integer] # # @!attribute [rw] branch_coverage_percentage # The percentage of branches that are covered by your tests. # @return [Float] # # @!attribute [rw] branches_covered # The number of conditional branches that are covered by your tests. # @return [Integer] # # @!attribute [rw] branches_missed # The number of conditional branches that are not covered by your # tests. # @return [Integer] # # @!attribute [rw] expired # The date and time that the tests were run. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/CodeCoverage AWS API Documentation # class CodeCoverage < Struct.new( :id, :report_arn, :file_path, :line_coverage_percentage, :lines_covered, :lines_missed, :branch_coverage_percentage, :branches_covered, :branches_missed, :expired) SENSITIVE = [] include Aws::Structure end # Contains a summary of a code coverage report. # # Line coverage measures how many statements your tests cover. A # statement is a single instruction, not including comments, # conditionals, etc. # # Branch coverage determines if your tests cover every possible branch # of a control structure, such as an `if` or `case` statement. # # @!attribute [rw] line_coverage_percentage # The percentage of lines that are covered by your tests. # @return [Float] # # @!attribute [rw] lines_covered # The number of lines that are covered by your tests. # @return [Integer] # # @!attribute [rw] lines_missed # The number of lines that are not covered by your tests. # @return [Integer] # # @!attribute [rw] branch_coverage_percentage # The percentage of branches that are covered by your tests. # @return [Float] # # @!attribute [rw] branches_covered # The number of conditional branches that are covered by your tests. # @return [Integer] # # @!attribute [rw] branches_missed # The number of conditional branches that are not covered by your # tests. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/CodeCoverageReportSummary AWS API Documentation # class CodeCoverageReportSummary < Struct.new( :line_coverage_percentage, :lines_covered, :lines_missed, :branch_coverage_percentage, :branches_covered, :branches_missed) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass CreateProjectInput # data as a hash: # # { # name: "ProjectName", # required # description: "ProjectDescription", # source: { # required # type: "CODECOMMIT", # required, accepts CODECOMMIT, CODEPIPELINE, GITHUB, S3, BITBUCKET, GITHUB_ENTERPRISE, NO_SOURCE # location: "String", # git_clone_depth: 1, # git_submodules_config: { # fetch_submodules: false, # required # }, # buildspec: "String", # auth: { # type: "OAUTH", # required, accepts OAUTH # resource: "String", # }, # report_build_status: false, # build_status_config: { # context: "String", # target_url: "String", # }, # insecure_ssl: false, # source_identifier: "String", # }, # secondary_sources: [ # { # type: "CODECOMMIT", # required, accepts CODECOMMIT, CODEPIPELINE, GITHUB, S3, BITBUCKET, GITHUB_ENTERPRISE, NO_SOURCE # location: "String", # git_clone_depth: 1, # git_submodules_config: { # fetch_submodules: false, # required # }, # buildspec: "String", # auth: { # type: "OAUTH", # required, accepts OAUTH # resource: "String", # }, # report_build_status: false, # build_status_config: { # context: "String", # target_url: "String", # }, # insecure_ssl: false, # source_identifier: "String", # }, # ], # source_version: "String", # secondary_source_versions: [ # { # source_identifier: "String", # required # source_version: "String", # required # }, # ], # artifacts: { # required # type: "CODEPIPELINE", # required, accepts CODEPIPELINE, S3, NO_ARTIFACTS # location: "String", # path: "String", # namespace_type: "NONE", # accepts NONE, BUILD_ID # name: "String", # packaging: "NONE", # accepts NONE, ZIP # override_artifact_name: false, # encryption_disabled: false, # artifact_identifier: "String", # }, # secondary_artifacts: [ # { # type: "CODEPIPELINE", # required, accepts CODEPIPELINE, S3, NO_ARTIFACTS # location: "String", # path: "String", # namespace_type: "NONE", # accepts NONE, BUILD_ID # name: "String", # packaging: "NONE", # accepts NONE, ZIP # override_artifact_name: false, # encryption_disabled: false, # artifact_identifier: "String", # }, # ], # cache: { # type: "NO_CACHE", # required, accepts NO_CACHE, S3, LOCAL # location: "String", # modes: ["LOCAL_DOCKER_LAYER_CACHE"], # accepts LOCAL_DOCKER_LAYER_CACHE, LOCAL_SOURCE_CACHE, LOCAL_CUSTOM_CACHE # }, # environment: { # required # type: "WINDOWS_CONTAINER", # required, accepts WINDOWS_CONTAINER, LINUX_CONTAINER, LINUX_GPU_CONTAINER, ARM_CONTAINER, WINDOWS_SERVER_2019_CONTAINER # image: "NonEmptyString", # required # compute_type: "BUILD_GENERAL1_SMALL", # required, accepts BUILD_GENERAL1_SMALL, BUILD_GENERAL1_MEDIUM, BUILD_GENERAL1_LARGE, BUILD_GENERAL1_2XLARGE # environment_variables: [ # { # name: "NonEmptyString", # required # value: "String", # required # type: "PLAINTEXT", # accepts PLAINTEXT, PARAMETER_STORE, SECRETS_MANAGER # }, # ], # privileged_mode: false, # certificate: "String", # registry_credential: { # credential: "NonEmptyString", # required # credential_provider: "SECRETS_MANAGER", # required, accepts SECRETS_MANAGER # }, # image_pull_credentials_type: "CODEBUILD", # accepts CODEBUILD, SERVICE_ROLE # }, # service_role: "NonEmptyString", # required # timeout_in_minutes: 1, # queued_timeout_in_minutes: 1, # encryption_key: "NonEmptyString", # tags: [ # { # key: "KeyInput", # value: "ValueInput", # }, # ], # vpc_config: { # vpc_id: "NonEmptyString", # subnets: ["NonEmptyString"], # security_group_ids: ["NonEmptyString"], # }, # badge_enabled: false, # logs_config: { # cloud_watch_logs: { # status: "ENABLED", # required, accepts ENABLED, DISABLED # group_name: "String", # stream_name: "String", # }, # s3_logs: { # status: "ENABLED", # required, accepts ENABLED, DISABLED # location: "String", # encryption_disabled: false, # }, # }, # file_system_locations: [ # { # type: "EFS", # accepts EFS # location: "String", # mount_point: "String", # identifier: "String", # mount_options: "String", # }, # ], # build_batch_config: { # service_role: "NonEmptyString", # combine_artifacts: false, # restrictions: { # maximum_builds_allowed: 1, # compute_types_allowed: ["NonEmptyString"], # }, # timeout_in_mins: 1, # }, # } # # @!attribute [rw] name # The name of the build project. # @return [String] # # @!attribute [rw] description # A description that makes the build project easy to identify. # @return [String] # # @!attribute [rw] source # Information about the build input source code for the build project. # @return [Types::ProjectSource] # # @!attribute [rw] secondary_sources # An array of `ProjectSource` objects. # @return [Array<Types::ProjectSource>] # # @!attribute [rw] source_version # A version of the build input to be built for this project. If not # specified, the latest version is used. If specified, it must be one # of: # # * For AWS CodeCommit: the commit ID, branch, or Git tag to use. # # * For GitHub: the commit ID, pull request ID, branch name, or tag # name that corresponds to the version of the source code you want # to build. If a pull request ID is specified, it must use the # format `pr/pull-request-ID` (for example `pr/25`). If a branch # name is specified, the branch's HEAD commit ID is used. If not # specified, the default branch's HEAD commit ID is used. # # * For Bitbucket: the commit ID, branch name, or tag name that # corresponds to the version of the source code you want to build. # If a branch name is specified, the branch's HEAD commit ID is # used. If not specified, the default branch's HEAD commit ID is # used. # # * For Amazon Simple Storage Service (Amazon S3): the version ID of # the object that represents the build input ZIP file to use. # # If `sourceVersion` is specified at the build level, then that # version takes precedence over this `sourceVersion` (at the project # level). # # For more information, see [Source Version Sample with CodeBuild][1] # in the *AWS CodeBuild User Guide*. # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html # @return [String] # # @!attribute [rw] secondary_source_versions # An array of `ProjectSourceVersion` objects. If # `secondarySourceVersions` is specified at the build level, then they # take precedence over these `secondarySourceVersions` (at the project # level). # @return [Array<Types::ProjectSourceVersion>] # # @!attribute [rw] artifacts # Information about the build output artifacts for the build project. # @return [Types::ProjectArtifacts] # # @!attribute [rw] secondary_artifacts # An array of `ProjectArtifacts` objects. # @return [Array<Types::ProjectArtifacts>] # # @!attribute [rw] cache # Stores recently used information so that it can be quickly accessed # at a later time. # @return [Types::ProjectCache] # # @!attribute [rw] environment # Information about the build environment for the build project. # @return [Types::ProjectEnvironment] # # @!attribute [rw] service_role # The ARN of the AWS Identity and Access Management (IAM) role that # enables AWS CodeBuild to interact with dependent AWS services on # behalf of the AWS account. # @return [String] # # @!attribute [rw] timeout_in_minutes # How long, in minutes, from 5 to 480 (8 hours), for AWS CodeBuild to # wait before it times out any build that has not been marked as # completed. The default is 60 minutes. # @return [Integer] # # @!attribute [rw] queued_timeout_in_minutes # The number of minutes a build is allowed to be queued before it # times out. # @return [Integer] # # @!attribute [rw] encryption_key # The AWS Key Management Service (AWS KMS) customer master key (CMK) # to be used for encrypting the build output artifacts. # # <note markdown="1"> You can use a cross-account KMS key to encrypt the build output # artifacts if your service role has permission to that key. # # </note> # # You can specify either the Amazon Resource Name (ARN) of the CMK or, # if available, the CMK's alias (using the format # `alias/<alias-name>`). # @return [String] # # @!attribute [rw] tags # A list of tag key and value pairs associated with this build # project. # # These tags are available for use by AWS services that support AWS # CodeBuild build project tags. # @return [Array<Types::Tag>] # # @!attribute [rw] vpc_config # VpcConfig enables AWS CodeBuild to access resources in an Amazon # VPC. # @return [Types::VpcConfig] # # @!attribute [rw] badge_enabled # Set this to true to generate a publicly accessible URL for your # project's build badge. # @return [Boolean] # # @!attribute [rw] logs_config # Information about logs for the build project. These can be logs in # Amazon CloudWatch Logs, logs uploaded to a specified S3 bucket, or # both. # @return [Types::LogsConfig] # # @!attribute [rw] file_system_locations # An array of `ProjectFileSystemLocation` objects for a CodeBuild # build project. A `ProjectFileSystemLocation` object specifies the # `identifier`, `location`, `mountOptions`, `mountPoint`, and `type` # of a file system created using Amazon Elastic File System. # @return [Array<Types::ProjectFileSystemLocation>] # # @!attribute [rw] build_batch_config # A ProjectBuildBatchConfig object that defines the batch build # options for the project. # @return [Types::ProjectBuildBatchConfig] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/CreateProjectInput AWS API Documentation # class CreateProjectInput < Struct.new( :name, :description, :source, :secondary_sources, :source_version, :secondary_source_versions, :artifacts, :secondary_artifacts, :cache, :environment, :service_role, :timeout_in_minutes, :queued_timeout_in_minutes, :encryption_key, :tags, :vpc_config, :badge_enabled, :logs_config, :file_system_locations, :build_batch_config) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] project # Information about the build project that was created. # @return [Types::Project] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/CreateProjectOutput AWS API Documentation # class CreateProjectOutput < Struct.new( :project) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass CreateReportGroupInput # data as a hash: # # { # name: "ReportGroupName", # required # type: "TEST", # required, accepts TEST, CODE_COVERAGE # export_config: { # required # export_config_type: "S3", # accepts S3, NO_EXPORT # s3_destination: { # bucket: "NonEmptyString", # path: "String", # packaging: "ZIP", # accepts ZIP, NONE # encryption_key: "NonEmptyString", # encryption_disabled: false, # }, # }, # tags: [ # { # key: "KeyInput", # value: "ValueInput", # }, # ], # } # # @!attribute [rw] name # The name of the report group. # @return [String] # # @!attribute [rw] type # The type of report group. # @return [String] # # @!attribute [rw] export_config # A `ReportExportConfig` object that contains information about where # the report group test results are exported. # @return [Types::ReportExportConfig] # # @!attribute [rw] tags # A list of tag key and value pairs associated with this report group. # # These tags are available for use by AWS services that support AWS # CodeBuild report group tags. # @return [Array<Types::Tag>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/CreateReportGroupInput AWS API Documentation # class CreateReportGroupInput < Struct.new( :name, :type, :export_config, :tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] report_group # Information about the report group that was created. # @return [Types::ReportGroup] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/CreateReportGroupOutput AWS API Documentation # class CreateReportGroupOutput < Struct.new( :report_group) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass CreateWebhookInput # data as a hash: # # { # project_name: "ProjectName", # required # branch_filter: "String", # filter_groups: [ # [ # { # type: "EVENT", # required, accepts EVENT, BASE_REF, HEAD_REF, ACTOR_ACCOUNT_ID, FILE_PATH, COMMIT_MESSAGE # pattern: "String", # required # exclude_matched_pattern: false, # }, # ], # ], # build_type: "BUILD", # accepts BUILD, BUILD_BATCH # } # # @!attribute [rw] project_name # The name of the AWS CodeBuild project. # @return [String] # # @!attribute [rw] branch_filter # A regular expression used to determine which repository branches are # built when a webhook is triggered. If the name of a branch matches # the regular expression, then it is built. If `branchFilter` is # empty, then all branches are built. # # <note markdown="1"> It is recommended that you use `filterGroups` instead of # `branchFilter`. # # </note> # @return [String] # # @!attribute [rw] filter_groups # An array of arrays of `WebhookFilter` objects used to determine # which webhooks are triggered. At least one `WebhookFilter` in the # array must specify `EVENT` as its `type`. # # For a build to be triggered, at least one filter group in the # `filterGroups` array must pass. For a filter group to pass, each of # its filters must pass. # @return [Array<Array<Types::WebhookFilter>>] # # @!attribute [rw] build_type # Specifies the type of build this webhook will trigger. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/CreateWebhookInput AWS API Documentation # class CreateWebhookInput < Struct.new( :project_name, :branch_filter, :filter_groups, :build_type) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] webhook # Information about a webhook that connects repository events to a # build project in AWS CodeBuild. # @return [Types::Webhook] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/CreateWebhookOutput AWS API Documentation # class CreateWebhookOutput < Struct.new( :webhook) SENSITIVE = [] include Aws::Structure end # Contains information about the debug session for a build. For more # information, see [Viewing a running build in Session Manager][1]. # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/session-manager.html # # @!attribute [rw] session_enabled # Specifies if session debugging is enabled for this build. # @return [Boolean] # # @!attribute [rw] session_target # Contains the identifier of the Session Manager session used for the # build. To work with the paused build, you open this session to # examine, control, and resume the build. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DebugSession AWS API Documentation # class DebugSession < Struct.new( :session_enabled, :session_target) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass DeleteBuildBatchInput # data as a hash: # # { # id: "NonEmptyString", # required # } # # @!attribute [rw] id # The identifier of the batch build to delete. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DeleteBuildBatchInput AWS API Documentation # class DeleteBuildBatchInput < Struct.new( :id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] status_code # The status code. # @return [String] # # @!attribute [rw] builds_deleted # An array of strings that contain the identifiers of the builds that # were deleted. # @return [Array<String>] # # @!attribute [rw] builds_not_deleted # An array of `BuildNotDeleted` objects that specify the builds that # could not be deleted. # @return [Array<Types::BuildNotDeleted>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DeleteBuildBatchOutput AWS API Documentation # class DeleteBuildBatchOutput < Struct.new( :status_code, :builds_deleted, :builds_not_deleted) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass DeleteProjectInput # data as a hash: # # { # name: "NonEmptyString", # required # } # # @!attribute [rw] name # The name of the build project. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DeleteProjectInput AWS API Documentation # class DeleteProjectInput < Struct.new( :name) SENSITIVE = [] include Aws::Structure end # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DeleteProjectOutput AWS API Documentation # class DeleteProjectOutput < Aws::EmptyStructure; end # @note When making an API call, you may pass DeleteReportGroupInput # data as a hash: # # { # arn: "NonEmptyString", # required # delete_reports: false, # } # # @!attribute [rw] arn # The ARN of the report group to delete. # @return [String] # # @!attribute [rw] delete_reports # If `true`, deletes any reports that belong to a report group before # deleting the report group. # # If `false`, you must delete any reports in the report group. Use # [ListReportsForReportGroup][1] to get the reports in a report group. # Use [DeleteReport][2] to delete the reports. If you call # `DeleteReportGroup` for a report group that contains one or more # reports, an exception is thrown. # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/APIReference/API_ListReportsForReportGroup.html # [2]: https://docs.aws.amazon.com/codebuild/latest/APIReference/API_DeleteReport.html # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DeleteReportGroupInput AWS API Documentation # class DeleteReportGroupInput < Struct.new( :arn, :delete_reports) SENSITIVE = [] include Aws::Structure end # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DeleteReportGroupOutput AWS API Documentation # class DeleteReportGroupOutput < Aws::EmptyStructure; end # @note When making an API call, you may pass DeleteReportInput # data as a hash: # # { # arn: "NonEmptyString", # required # } # # @!attribute [rw] arn # The ARN of the report to delete. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DeleteReportInput AWS API Documentation # class DeleteReportInput < Struct.new( :arn) SENSITIVE = [] include Aws::Structure end # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DeleteReportOutput AWS API Documentation # class DeleteReportOutput < Aws::EmptyStructure; end # @note When making an API call, you may pass DeleteResourcePolicyInput # data as a hash: # # { # resource_arn: "NonEmptyString", # required # } # # @!attribute [rw] resource_arn # The ARN of the resource that is associated with the resource policy. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DeleteResourcePolicyInput AWS API Documentation # class DeleteResourcePolicyInput < Struct.new( :resource_arn) SENSITIVE = [] include Aws::Structure end # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DeleteResourcePolicyOutput AWS API Documentation # class DeleteResourcePolicyOutput < Aws::EmptyStructure; end # @note When making an API call, you may pass DeleteSourceCredentialsInput # data as a hash: # # { # arn: "NonEmptyString", # required # } # # @!attribute [rw] arn # The Amazon Resource Name (ARN) of the token. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DeleteSourceCredentialsInput AWS API Documentation # class DeleteSourceCredentialsInput < Struct.new( :arn) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] arn # The Amazon Resource Name (ARN) of the token. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DeleteSourceCredentialsOutput AWS API Documentation # class DeleteSourceCredentialsOutput < Struct.new( :arn) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass DeleteWebhookInput # data as a hash: # # { # project_name: "ProjectName", # required # } # # @!attribute [rw] project_name # The name of the AWS CodeBuild project. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DeleteWebhookInput AWS API Documentation # class DeleteWebhookInput < Struct.new( :project_name) SENSITIVE = [] include Aws::Structure end # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DeleteWebhookOutput AWS API Documentation # class DeleteWebhookOutput < Aws::EmptyStructure; end # @note When making an API call, you may pass DescribeCodeCoveragesInput # data as a hash: # # { # report_arn: "NonEmptyString", # required # next_token: "String", # max_results: 1, # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING # sort_by: "LINE_COVERAGE_PERCENTAGE", # accepts LINE_COVERAGE_PERCENTAGE, FILE_PATH # min_line_coverage_percentage: 1.0, # max_line_coverage_percentage: 1.0, # } # # @!attribute [rw] report_arn # The ARN of the report for which test cases are returned. # @return [String] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous call to # `DescribeCodeCoverages`. This specifies the next item to return. To # return the beginning of the list, exclude this parameter. # @return [String] # # @!attribute [rw] max_results # The maximum number of results to return. # @return [Integer] # # @!attribute [rw] sort_order # Specifies if the results are sorted in ascending or descending # order. # @return [String] # # @!attribute [rw] sort_by # Specifies how the results are sorted. Possible values are: # # FILE\_PATH # # : The results are sorted by file path. # # LINE\_COVERAGE\_PERCENTAGE # # : The results are sorted by the percentage of lines that are # covered. # @return [String] # # @!attribute [rw] min_line_coverage_percentage # The minimum line coverage percentage to report. # @return [Float] # # @!attribute [rw] max_line_coverage_percentage # The maximum line coverage percentage to report. # @return [Float] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DescribeCodeCoveragesInput AWS API Documentation # class DescribeCodeCoveragesInput < Struct.new( :report_arn, :next_token, :max_results, :sort_order, :sort_by, :min_line_coverage_percentage, :max_line_coverage_percentage) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # If there are more items to return, this contains a token that is # passed to a subsequent call to `DescribeCodeCoverages` to retrieve # the next set of items. # @return [String] # # @!attribute [rw] code_coverages # An array of `CodeCoverage` objects that contain the results. # @return [Array<Types::CodeCoverage>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DescribeCodeCoveragesOutput AWS API Documentation # class DescribeCodeCoveragesOutput < Struct.new( :next_token, :code_coverages) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass DescribeTestCasesInput # data as a hash: # # { # report_arn: "String", # required # next_token: "String", # max_results: 1, # filter: { # status: "String", # keyword: "String", # }, # } # # @!attribute [rw] report_arn # The ARN of the report for which test cases are returned. # @return [String] # # @!attribute [rw] next_token # During a previous call, the maximum number of items that can be # returned is the value specified in `maxResults`. If there more items # in the list, then a unique string called a *nextToken* is returned. # To get the next batch of items in the list, call this operation # again, adding the next token to the call. To get all of the items in # the list, keep calling this operation with each subsequent next # token that is returned, until no more next tokens are returned. # @return [String] # # @!attribute [rw] max_results # The maximum number of paginated test cases returned per response. # Use `nextToken` to iterate pages in the list of returned `TestCase` # objects. The default value is 100. # @return [Integer] # # @!attribute [rw] filter # A `TestCaseFilter` object used to filter the returned reports. # @return [Types::TestCaseFilter] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DescribeTestCasesInput AWS API Documentation # class DescribeTestCasesInput < Struct.new( :report_arn, :next_token, :max_results, :filter) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # During a previous call, the maximum number of items that can be # returned is the value specified in `maxResults`. If there more items # in the list, then a unique string called a *nextToken* is returned. # To get the next batch of items in the list, call this operation # again, adding the next token to the call. To get all of the items in # the list, keep calling this operation with each subsequent next # token that is returned, until no more next tokens are returned. # @return [String] # # @!attribute [rw] test_cases # The returned list of test cases. # @return [Array<Types::TestCase>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/DescribeTestCasesOutput AWS API Documentation # class DescribeTestCasesOutput < Struct.new( :next_token, :test_cases) SENSITIVE = [] include Aws::Structure end # Information about a Docker image that is managed by AWS CodeBuild. # # @!attribute [rw] name # The name of the Docker image. # @return [String] # # @!attribute [rw] description # The description of the Docker image. # @return [String] # # @!attribute [rw] versions # A list of environment image versions. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/EnvironmentImage AWS API Documentation # class EnvironmentImage < Struct.new( :name, :description, :versions) SENSITIVE = [] include Aws::Structure end # A set of Docker images that are related by programming language and # are managed by AWS CodeBuild. # # @!attribute [rw] language # The programming language for the Docker images. # @return [String] # # @!attribute [rw] images # The list of Docker images that are related by the specified # programming language. # @return [Array<Types::EnvironmentImage>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/EnvironmentLanguage AWS API Documentation # class EnvironmentLanguage < Struct.new( :language, :images) SENSITIVE = [] include Aws::Structure end # A set of Docker images that are related by platform and are managed by # AWS CodeBuild. # # @!attribute [rw] platform # The platform's name. # @return [String] # # @!attribute [rw] languages # The list of programming languages that are available for the # specified platform. # @return [Array<Types::EnvironmentLanguage>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/EnvironmentPlatform AWS API Documentation # class EnvironmentPlatform < Struct.new( :platform, :languages) SENSITIVE = [] include Aws::Structure end # Information about an environment variable for a build project or a # build. # # @note When making an API call, you may pass EnvironmentVariable # data as a hash: # # { # name: "NonEmptyString", # required # value: "String", # required # type: "PLAINTEXT", # accepts PLAINTEXT, PARAMETER_STORE, SECRETS_MANAGER # } # # @!attribute [rw] name # The name or key of the environment variable. # @return [String] # # @!attribute [rw] value # The value of the environment variable. # # We strongly discourage the use of `PLAINTEXT` environment variables # to store sensitive values, especially AWS secret key IDs and secret # access keys. `PLAINTEXT` environment variables can be displayed in # plain text using the AWS CodeBuild console and the AWS Command Line # Interface (AWS CLI). For sensitive values, we recommend you use an # environment variable of type `PARAMETER_STORE` or `SECRETS_MANAGER`. # @return [String] # # @!attribute [rw] type # The type of environment variable. Valid values include: # # * `PARAMETER_STORE`\: An environment variable stored in Amazon EC2 # Systems Manager Parameter Store. To learn how to specify a # parameter store environment variable, see [env/parameter-store][1] # in the *AWS CodeBuild User Guide*. # # * `PLAINTEXT`\: An environment variable in plain text format. This # is the default value. # # * `SECRETS_MANAGER`\: An environment variable stored in AWS Secrets # Manager. To learn how to specify a secrets manager environment # variable, see [env/secrets-manager][2] in the *AWS CodeBuild User # Guide*. # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec.env.parameter-store # [2]: https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec.env.secrets-manager # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/EnvironmentVariable AWS API Documentation # class EnvironmentVariable < Struct.new( :name, :value, :type) SENSITIVE = [] include Aws::Structure end # Information about an exported environment variable. # # @!attribute [rw] name # The name of this exported environment variable. # @return [String] # # @!attribute [rw] value # The value assigned to this exported environment variable. # # <note markdown="1"> During a build, the value of a variable is available starting with # the `install` phase. It can be updated between the start of the # `install` phase and the end of the `post_build` phase. After the # `post_build` phase ends, the value of exported variables cannot # change. # # </note> # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ExportedEnvironmentVariable AWS API Documentation # class ExportedEnvironmentVariable < Struct.new( :name, :value) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass GetResourcePolicyInput # data as a hash: # # { # resource_arn: "NonEmptyString", # required # } # # @!attribute [rw] resource_arn # The ARN of the resource that is associated with the resource policy. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/GetResourcePolicyInput AWS API Documentation # class GetResourcePolicyInput < Struct.new( :resource_arn) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] policy # The resource policy for the resource identified by the input ARN # parameter. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/GetResourcePolicyOutput AWS API Documentation # class GetResourcePolicyOutput < Struct.new( :policy) SENSITIVE = [] include Aws::Structure end # Information about the Git submodules configuration for an AWS # CodeBuild build project. # # @note When making an API call, you may pass GitSubmodulesConfig # data as a hash: # # { # fetch_submodules: false, # required # } # # @!attribute [rw] fetch_submodules # Set to true to fetch Git submodules for your AWS CodeBuild build # project. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/GitSubmodulesConfig AWS API Documentation # class GitSubmodulesConfig < Struct.new( :fetch_submodules) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass ImportSourceCredentialsInput # data as a hash: # # { # username: "NonEmptyString", # token: "SensitiveNonEmptyString", # required # server_type: "GITHUB", # required, accepts GITHUB, BITBUCKET, GITHUB_ENTERPRISE # auth_type: "OAUTH", # required, accepts OAUTH, BASIC_AUTH, PERSONAL_ACCESS_TOKEN # should_overwrite: false, # } # # @!attribute [rw] username # The Bitbucket username when the `authType` is BASIC\_AUTH. This # parameter is not valid for other types of source providers or # connections. # @return [String] # # @!attribute [rw] token # For GitHub or GitHub Enterprise, this is the personal access token. # For Bitbucket, this is the app password. # @return [String] # # @!attribute [rw] server_type # The source provider used for this project. # @return [String] # # @!attribute [rw] auth_type # The type of authentication used to connect to a GitHub, GitHub # Enterprise, or Bitbucket repository. An OAUTH connection is not # supported by the API and must be created using the AWS CodeBuild # console. # @return [String] # # @!attribute [rw] should_overwrite # Set to `false` to prevent overwriting the repository source # credentials. Set to `true` to overwrite the repository source # credentials. The default value is `true`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ImportSourceCredentialsInput AWS API Documentation # class ImportSourceCredentialsInput < Struct.new( :username, :token, :server_type, :auth_type, :should_overwrite) SENSITIVE = [:token] include Aws::Structure end # @!attribute [rw] arn # The Amazon Resource Name (ARN) of the token. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ImportSourceCredentialsOutput AWS API Documentation # class ImportSourceCredentialsOutput < Struct.new( :arn) SENSITIVE = [] include Aws::Structure end # The input value that was provided is not valid. # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/InvalidInputException AWS API Documentation # class InvalidInputException < Aws::EmptyStructure; end # @note When making an API call, you may pass InvalidateProjectCacheInput # data as a hash: # # { # project_name: "NonEmptyString", # required # } # # @!attribute [rw] project_name # The name of the AWS CodeBuild build project that the cache is reset # for. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/InvalidateProjectCacheInput AWS API Documentation # class InvalidateProjectCacheInput < Struct.new( :project_name) SENSITIVE = [] include Aws::Structure end # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/InvalidateProjectCacheOutput AWS API Documentation # class InvalidateProjectCacheOutput < Aws::EmptyStructure; end # @note When making an API call, you may pass ListBuildBatchesForProjectInput # data as a hash: # # { # project_name: "NonEmptyString", # filter: { # status: "SUCCEEDED", # accepts SUCCEEDED, FAILED, FAULT, TIMED_OUT, IN_PROGRESS, STOPPED # }, # max_results: 1, # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING # next_token: "String", # } # # @!attribute [rw] project_name # The name of the project. # @return [String] # # @!attribute [rw] filter # A `BuildBatchFilter` object that specifies the filters for the # search. # @return [Types::BuildBatchFilter] # # @!attribute [rw] max_results # The maximum number of results to return. # @return [Integer] # # @!attribute [rw] sort_order # Specifies the sort order of the returned items. Valid values # include: # # * `ASCENDING`\: List the batch build identifiers in ascending order # by identifier. # # * `DESCENDING`\: List the batch build identifiers in descending # order by identifier. # @return [String] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous call to # `ListBuildBatchesForProject`. This specifies the next item to # return. To return the beginning of the list, exclude this parameter. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListBuildBatchesForProjectInput AWS API Documentation # class ListBuildBatchesForProjectInput < Struct.new( :project_name, :filter, :max_results, :sort_order, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ids # An array of strings that contains the batch build identifiers. # @return [Array<String>] # # @!attribute [rw] next_token # If there are more items to return, this contains a token that is # passed to a subsequent call to `ListBuildBatchesForProject` to # retrieve the next set of items. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListBuildBatchesForProjectOutput AWS API Documentation # class ListBuildBatchesForProjectOutput < Struct.new( :ids, :next_token) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass ListBuildBatchesInput # data as a hash: # # { # filter: { # status: "SUCCEEDED", # accepts SUCCEEDED, FAILED, FAULT, TIMED_OUT, IN_PROGRESS, STOPPED # }, # max_results: 1, # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING # next_token: "String", # } # # @!attribute [rw] filter # A `BuildBatchFilter` object that specifies the filters for the # search. # @return [Types::BuildBatchFilter] # # @!attribute [rw] max_results # The maximum number of results to return. # @return [Integer] # # @!attribute [rw] sort_order # Specifies the sort order of the returned items. Valid values # include: # # * `ASCENDING`\: List the batch build identifiers in ascending order # by identifier. # # * `DESCENDING`\: List the batch build identifiers in descending # order by identifier. # @return [String] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous call to # `ListBuildBatches`. This specifies the next item to return. To # return the beginning of the list, exclude this parameter. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListBuildBatchesInput AWS API Documentation # class ListBuildBatchesInput < Struct.new( :filter, :max_results, :sort_order, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ids # An array of strings that contains the batch build identifiers. # @return [Array<String>] # # @!attribute [rw] next_token # If there are more items to return, this contains a token that is # passed to a subsequent call to `ListBuildBatches` to retrieve the # next set of items. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListBuildBatchesOutput AWS API Documentation # class ListBuildBatchesOutput < Struct.new( :ids, :next_token) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass ListBuildsForProjectInput # data as a hash: # # { # project_name: "NonEmptyString", # required # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING # next_token: "String", # } # # @!attribute [rw] project_name # The name of the AWS CodeBuild project. # @return [String] # # @!attribute [rw] sort_order # The order to list build IDs. Valid values include: # # * `ASCENDING`\: List the build IDs in ascending order by build ID. # # * `DESCENDING`\: List the build IDs in descending order by build ID. # @return [String] # # @!attribute [rw] next_token # During a previous call, if there are more than 100 items in the # list, only the first 100 items are returned, along with a unique # string called a *nextToken*. To get the next batch of items in the # list, call this operation again, adding the next token to the call. # To get all of the items in the list, keep calling this operation # with each subsequent next token that is returned, until no more next # tokens are returned. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListBuildsForProjectInput AWS API Documentation # class ListBuildsForProjectInput < Struct.new( :project_name, :sort_order, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ids # A list of build IDs for the specified build project, with each build # ID representing a single build. # @return [Array<String>] # # @!attribute [rw] next_token # If there are more than 100 items in the list, only the first 100 # items are returned, along with a unique string called a *nextToken*. # To get the next batch of items in the list, call this operation # again, adding the next token to the call. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListBuildsForProjectOutput AWS API Documentation # class ListBuildsForProjectOutput < Struct.new( :ids, :next_token) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass ListBuildsInput # data as a hash: # # { # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING # next_token: "String", # } # # @!attribute [rw] sort_order # The order to list build IDs. Valid values include: # # * `ASCENDING`\: List the build IDs in ascending order by build ID. # # * `DESCENDING`\: List the build IDs in descending order by build ID. # @return [String] # # @!attribute [rw] next_token # During a previous call, if there are more than 100 items in the # list, only the first 100 items are returned, along with a unique # string called a *nextToken*. To get the next batch of items in the # list, call this operation again, adding the next token to the call. # To get all of the items in the list, keep calling this operation # with each subsequent next token that is returned, until no more next # tokens are returned. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListBuildsInput AWS API Documentation # class ListBuildsInput < Struct.new( :sort_order, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ids # A list of build IDs, with each build ID representing a single build. # @return [Array<String>] # # @!attribute [rw] next_token # If there are more than 100 items in the list, only the first 100 # items are returned, along with a unique string called a *nextToken*. # To get the next batch of items in the list, call this operation # again, adding the next token to the call. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListBuildsOutput AWS API Documentation # class ListBuildsOutput < Struct.new( :ids, :next_token) SENSITIVE = [] include Aws::Structure end # @api private # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListCuratedEnvironmentImagesInput AWS API Documentation # class ListCuratedEnvironmentImagesInput < Aws::EmptyStructure; end # @!attribute [rw] platforms # Information about supported platforms for Docker images that are # managed by AWS CodeBuild. # @return [Array<Types::EnvironmentPlatform>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListCuratedEnvironmentImagesOutput AWS API Documentation # class ListCuratedEnvironmentImagesOutput < Struct.new( :platforms) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass ListProjectsInput # data as a hash: # # { # sort_by: "NAME", # accepts NAME, CREATED_TIME, LAST_MODIFIED_TIME # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING # next_token: "NonEmptyString", # } # # @!attribute [rw] sort_by # The criterion to be used to list build project names. Valid values # include: # # * `CREATED_TIME`\: List based on when each build project was # created. # # * `LAST_MODIFIED_TIME`\: List based on when information about each # build project was last changed. # # * `NAME`\: List based on each build project's name. # # Use `sortOrder` to specify in what order to list the build project # names based on the preceding criteria. # @return [String] # # @!attribute [rw] sort_order # The order in which to list build projects. Valid values include: # # * `ASCENDING`\: List in ascending order. # # * `DESCENDING`\: List in descending order. # # Use `sortBy` to specify the criterion to be used to list build # project names. # @return [String] # # @!attribute [rw] next_token # During a previous call, if there are more than 100 items in the # list, only the first 100 items are returned, along with a unique # string called a *nextToken*. To get the next batch of items in the # list, call this operation again, adding the next token to the call. # To get all of the items in the list, keep calling this operation # with each subsequent next token that is returned, until no more next # tokens are returned. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListProjectsInput AWS API Documentation # class ListProjectsInput < Struct.new( :sort_by, :sort_order, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # If there are more than 100 items in the list, only the first 100 # items are returned, along with a unique string called a *nextToken*. # To get the next batch of items in the list, call this operation # again, adding the next token to the call. # @return [String] # # @!attribute [rw] projects # The list of build project names, with each build project name # representing a single build project. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListProjectsOutput AWS API Documentation # class ListProjectsOutput < Struct.new( :next_token, :projects) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass ListReportGroupsInput # data as a hash: # # { # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING # sort_by: "NAME", # accepts NAME, CREATED_TIME, LAST_MODIFIED_TIME # next_token: "String", # max_results: 1, # } # # @!attribute [rw] sort_order # Used to specify the order to sort the list of returned report # groups. Valid values are `ASCENDING` and `DESCENDING`. # @return [String] # # @!attribute [rw] sort_by # The criterion to be used to list build report groups. Valid values # include: # # * `CREATED_TIME`\: List based on when each report group was created. # # * `LAST_MODIFIED_TIME`\: List based on when each report group was # last changed. # # * `NAME`\: List based on each report group's name. # @return [String] # # @!attribute [rw] next_token # During a previous call, the maximum number of items that can be # returned is the value specified in `maxResults`. If there more items # in the list, then a unique string called a *nextToken* is returned. # To get the next batch of items in the list, call this operation # again, adding the next token to the call. To get all of the items in # the list, keep calling this operation with each subsequent next # token that is returned, until no more next tokens are returned. # @return [String] # # @!attribute [rw] max_results # The maximum number of paginated report groups returned per response. # Use `nextToken` to iterate pages in the list of returned # `ReportGroup` objects. The default value is 100. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListReportGroupsInput AWS API Documentation # class ListReportGroupsInput < Struct.new( :sort_order, :sort_by, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # During a previous call, the maximum number of items that can be # returned is the value specified in `maxResults`. If there more items # in the list, then a unique string called a *nextToken* is returned. # To get the next batch of items in the list, call this operation # again, adding the next token to the call. To get all of the items in # the list, keep calling this operation with each subsequent next # token that is returned, until no more next tokens are returned. # @return [String] # # @!attribute [rw] report_groups # The list of ARNs for the report groups in the current AWS account. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListReportGroupsOutput AWS API Documentation # class ListReportGroupsOutput < Struct.new( :next_token, :report_groups) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass ListReportsForReportGroupInput # data as a hash: # # { # report_group_arn: "String", # required # next_token: "String", # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING # max_results: 1, # filter: { # status: "GENERATING", # accepts GENERATING, SUCCEEDED, FAILED, INCOMPLETE, DELETING # }, # } # # @!attribute [rw] report_group_arn # The ARN of the report group for which you want to return report # ARNs. # @return [String] # # @!attribute [rw] next_token # During a previous call, the maximum number of items that can be # returned is the value specified in `maxResults`. If there more items # in the list, then a unique string called a *nextToken* is returned. # To get the next batch of items in the list, call this operation # again, adding the next token to the call. To get all of the items in # the list, keep calling this operation with each subsequent next # token that is returned, until no more next tokens are returned. # @return [String] # # @!attribute [rw] sort_order # Use to specify whether the results are returned in ascending or # descending order. # @return [String] # # @!attribute [rw] max_results # The maximum number of paginated reports in this report group # returned per response. Use `nextToken` to iterate pages in the list # of returned `Report` objects. The default value is 100. # @return [Integer] # # @!attribute [rw] filter # A `ReportFilter` object used to filter the returned reports. # @return [Types::ReportFilter] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListReportsForReportGroupInput AWS API Documentation # class ListReportsForReportGroupInput < Struct.new( :report_group_arn, :next_token, :sort_order, :max_results, :filter) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # During a previous call, the maximum number of items that can be # returned is the value specified in `maxResults`. If there more items # in the list, then a unique string called a *nextToken* is returned. # To get the next batch of items in the list, call this operation # again, adding the next token to the call. To get all of the items in # the list, keep calling this operation with each subsequent next # token that is returned, until no more next tokens are returned. # @return [String] # # @!attribute [rw] reports # The list of report ARNs. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListReportsForReportGroupOutput AWS API Documentation # class ListReportsForReportGroupOutput < Struct.new( :next_token, :reports) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass ListReportsInput # data as a hash: # # { # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING # next_token: "String", # max_results: 1, # filter: { # status: "GENERATING", # accepts GENERATING, SUCCEEDED, FAILED, INCOMPLETE, DELETING # }, # } # # @!attribute [rw] sort_order # Specifies the sort order for the list of returned reports. Valid # values are: # # * `ASCENDING`\: return reports in chronological order based on their # creation date. # # * `DESCENDING`\: return reports in the reverse chronological order # based on their creation date. # @return [String] # # @!attribute [rw] next_token # During a previous call, the maximum number of items that can be # returned is the value specified in `maxResults`. If there more items # in the list, then a unique string called a *nextToken* is returned. # To get the next batch of items in the list, call this operation # again, adding the next token to the call. To get all of the items in # the list, keep calling this operation with each subsequent next # token that is returned, until no more next tokens are returned. # @return [String] # # @!attribute [rw] max_results # The maximum number of paginated reports returned per response. Use # `nextToken` to iterate pages in the list of returned `Report` # objects. The default value is 100. # @return [Integer] # # @!attribute [rw] filter # A `ReportFilter` object used to filter the returned reports. # @return [Types::ReportFilter] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListReportsInput AWS API Documentation # class ListReportsInput < Struct.new( :sort_order, :next_token, :max_results, :filter) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # During a previous call, the maximum number of items that can be # returned is the value specified in `maxResults`. If there more items # in the list, then a unique string called a *nextToken* is returned. # To get the next batch of items in the list, call this operation # again, adding the next token to the call. To get all of the items in # the list, keep calling this operation with each subsequent next # token that is returned, until no more next tokens are returned. # @return [String] # # @!attribute [rw] reports # The list of returned ARNs for the reports in the current AWS # account. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListReportsOutput AWS API Documentation # class ListReportsOutput < Struct.new( :next_token, :reports) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass ListSharedProjectsInput # data as a hash: # # { # sort_by: "ARN", # accepts ARN, MODIFIED_TIME # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING # max_results: 1, # next_token: "NonEmptyString", # } # # @!attribute [rw] sort_by # The criterion to be used to list build projects shared with the # current AWS account or user. Valid values include: # # * `ARN`\: List based on the ARN. # # * `MODIFIED_TIME`\: List based on when information about the shared # project was last changed. # @return [String] # # @!attribute [rw] sort_order # The order in which to list shared build projects. Valid values # include: # # * `ASCENDING`\: List in ascending order. # # * `DESCENDING`\: List in descending order. # @return [String] # # @!attribute [rw] max_results # The maximum number of paginated shared build projects returned per # response. Use `nextToken` to iterate pages in the list of returned # `Project` objects. The default value is 100. # @return [Integer] # # @!attribute [rw] next_token # During a previous call, the maximum number of items that can be # returned is the value specified in `maxResults`. If there more items # in the list, then a unique string called a *nextToken* is returned. # To get the next batch of items in the list, call this operation # again, adding the next token to the call. To get all of the items in # the list, keep calling this operation with each subsequent next # token that is returned, until no more next tokens are returned. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListSharedProjectsInput AWS API Documentation # class ListSharedProjectsInput < Struct.new( :sort_by, :sort_order, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # During a previous call, the maximum number of items that can be # returned is the value specified in `maxResults`. If there more items # in the list, then a unique string called a *nextToken* is returned. # To get the next batch of items in the list, call this operation # again, adding the next token to the call. To get all of the items in # the list, keep calling this operation with each subsequent next # token that is returned, until no more next tokens are returned. # @return [String] # # @!attribute [rw] projects # The list of ARNs for the build projects shared with the current AWS # account or user. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListSharedProjectsOutput AWS API Documentation # class ListSharedProjectsOutput < Struct.new( :next_token, :projects) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass ListSharedReportGroupsInput # data as a hash: # # { # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING # sort_by: "ARN", # accepts ARN, MODIFIED_TIME # next_token: "String", # max_results: 1, # } # # @!attribute [rw] sort_order # The order in which to list shared report groups. Valid values # include: # # * `ASCENDING`\: List in ascending order. # # * `DESCENDING`\: List in descending order. # @return [String] # # @!attribute [rw] sort_by # The criterion to be used to list report groups shared with the # current AWS account or user. Valid values include: # # * `ARN`\: List based on the ARN. # # * `MODIFIED_TIME`\: List based on when information about the shared # report group was last changed. # @return [String] # # @!attribute [rw] next_token # During a previous call, the maximum number of items that can be # returned is the value specified in `maxResults`. If there more items # in the list, then a unique string called a *nextToken* is returned. # To get the next batch of items in the list, call this operation # again, adding the next token to the call. To get all of the items in # the list, keep calling this operation with each subsequent next # token that is returned, until no more next tokens are returned. # @return [String] # # @!attribute [rw] max_results # The maximum number of paginated shared report groups per response. # Use `nextToken` to iterate pages in the list of returned # `ReportGroup` objects. The default value is 100. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListSharedReportGroupsInput AWS API Documentation # class ListSharedReportGroupsInput < Struct.new( :sort_order, :sort_by, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # During a previous call, the maximum number of items that can be # returned is the value specified in `maxResults`. If there more items # in the list, then a unique string called a *nextToken* is returned. # To get the next batch of items in the list, call this operation # again, adding the next token to the call. To get all of the items in # the list, keep calling this operation with each subsequent next # token that is returned, until no more next tokens are returned. # @return [String] # # @!attribute [rw] report_groups # The list of ARNs for the report groups shared with the current AWS # account or user. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListSharedReportGroupsOutput AWS API Documentation # class ListSharedReportGroupsOutput < Struct.new( :next_token, :report_groups) SENSITIVE = [] include Aws::Structure end # @api private # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListSourceCredentialsInput AWS API Documentation # class ListSourceCredentialsInput < Aws::EmptyStructure; end # @!attribute [rw] source_credentials_infos # A list of `SourceCredentialsInfo` objects. Each # `SourceCredentialsInfo` object includes the authentication type, # token ARN, and type of source provider for one set of credentials. # @return [Array<Types::SourceCredentialsInfo>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ListSourceCredentialsOutput AWS API Documentation # class ListSourceCredentialsOutput < Struct.new( :source_credentials_infos) SENSITIVE = [] include Aws::Structure end # Information about logs for a build project. These can be logs in # Amazon CloudWatch Logs, built in a specified S3 bucket, or both. # # @note When making an API call, you may pass LogsConfig # data as a hash: # # { # cloud_watch_logs: { # status: "ENABLED", # required, accepts ENABLED, DISABLED # group_name: "String", # stream_name: "String", # }, # s3_logs: { # status: "ENABLED", # required, accepts ENABLED, DISABLED # location: "String", # encryption_disabled: false, # }, # } # # @!attribute [rw] cloud_watch_logs # Information about Amazon CloudWatch Logs for a build project. Amazon # CloudWatch Logs are enabled by default. # @return [Types::CloudWatchLogsConfig] # # @!attribute [rw] s3_logs # Information about logs built to an S3 bucket for a build project. S3 # logs are not enabled by default. # @return [Types::S3LogsConfig] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/LogsConfig AWS API Documentation # class LogsConfig < Struct.new( :cloud_watch_logs, :s3_logs) SENSITIVE = [] include Aws::Structure end # Information about build logs in Amazon CloudWatch Logs. # # @!attribute [rw] group_name # The name of the Amazon CloudWatch Logs group for the build logs. # @return [String] # # @!attribute [rw] stream_name # The name of the Amazon CloudWatch Logs stream for the build logs. # @return [String] # # @!attribute [rw] deep_link # The URL to an individual build log in Amazon CloudWatch Logs. # @return [String] # # @!attribute [rw] s3_deep_link # The URL to a build log in an S3 bucket. # @return [String] # # @!attribute [rw] cloud_watch_logs_arn # The ARN of Amazon CloudWatch Logs for a build project. Its format is # `arn:$\{Partition\}:logs:$\{Region\}:$\{Account\}:log-group:$\{LogGroupName\}:log-stream:$\{LogStreamName\}`. # For more information, see [Resources Defined by Amazon CloudWatch # Logs][1]. # # # # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazoncloudwatchlogs.html#amazoncloudwatchlogs-resources-for-iam-policies # @return [String] # # @!attribute [rw] s3_logs_arn # The ARN of S3 logs for a build project. Its format is # `arn:$\{Partition\}:s3:::$\{BucketName\}/$\{ObjectName\}`. For more # information, see [Resources Defined by Amazon S3][1]. # # # # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html#amazons3-resources-for-iam-policies # @return [String] # # @!attribute [rw] cloud_watch_logs # Information about Amazon CloudWatch Logs for a build project. # @return [Types::CloudWatchLogsConfig] # # @!attribute [rw] s3_logs # Information about S3 logs for a build project. # @return [Types::S3LogsConfig] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/LogsLocation AWS API Documentation # class LogsLocation < Struct.new( :group_name, :stream_name, :deep_link, :s3_deep_link, :cloud_watch_logs_arn, :s3_logs_arn, :cloud_watch_logs, :s3_logs) SENSITIVE = [] include Aws::Structure end # Describes a network interface. # # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/NetworkInterface AWS API Documentation # class NetworkInterface < Struct.new( :subnet_id, :network_interface_id) SENSITIVE = [] include Aws::Structure end # There was a problem with the underlying OAuth provider. # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/OAuthProviderException AWS API Documentation # class OAuthProviderException < Aws::EmptyStructure; end # Additional information about a build phase that has an error. You can # use this information for troubleshooting. # # @!attribute [rw] status_code # The status code for the context of the build phase. # @return [String] # # @!attribute [rw] message # An explanation of the build phase's context. This might include a # command ID and an exit code. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/PhaseContext AWS API Documentation # class PhaseContext < Struct.new( :status_code, :message) SENSITIVE = [] include Aws::Structure end # Information about a build project. # # @!attribute [rw] name # The name of the build project. # @return [String] # # @!attribute [rw] arn # The Amazon Resource Name (ARN) of the build project. # @return [String] # # @!attribute [rw] description # A description that makes the build project easy to identify. # @return [String] # # @!attribute [rw] source # Information about the build input source code for this build # project. # @return [Types::ProjectSource] # # @!attribute [rw] secondary_sources # An array of `ProjectSource` objects. # @return [Array<Types::ProjectSource>] # # @!attribute [rw] source_version # A version of the build input to be built for this project. If not # specified, the latest version is used. If specified, it must be one # of: # # * For AWS CodeCommit: the commit ID, branch, or Git tag to use. # # * For GitHub: the commit ID, pull request ID, branch name, or tag # name that corresponds to the version of the source code you want # to build. If a pull request ID is specified, it must use the # format `pr/pull-request-ID` (for example `pr/25`). If a branch # name is specified, the branch's HEAD commit ID is used. If not # specified, the default branch's HEAD commit ID is used. # # * For Bitbucket: the commit ID, branch name, or tag name that # corresponds to the version of the source code you want to build. # If a branch name is specified, the branch's HEAD commit ID is # used. If not specified, the default branch's HEAD commit ID is # used. # # * For Amazon Simple Storage Service (Amazon S3): the version ID of # the object that represents the build input ZIP file to use. # # If `sourceVersion` is specified at the build level, then that # version takes precedence over this `sourceVersion` (at the project # level). # # For more information, see [Source Version Sample with CodeBuild][1] # in the *AWS CodeBuild User Guide*. # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html # @return [String] # # @!attribute [rw] secondary_source_versions # An array of `ProjectSourceVersion` objects. If # `secondarySourceVersions` is specified at the build level, then they # take over these `secondarySourceVersions` (at the project level). # @return [Array<Types::ProjectSourceVersion>] # # @!attribute [rw] artifacts # Information about the build output artifacts for the build project. # @return [Types::ProjectArtifacts] # # @!attribute [rw] secondary_artifacts # An array of `ProjectArtifacts` objects. # @return [Array<Types::ProjectArtifacts>] # # @!attribute [rw] cache # Information about the cache for the build project. # @return [Types::ProjectCache] # # @!attribute [rw] environment # Information about the build environment for this build project. # @return [Types::ProjectEnvironment] # # @!attribute [rw] service_role # The ARN of the AWS Identity and Access Management (IAM) role that # enables AWS CodeBuild to interact with dependent AWS services on # behalf of the AWS account. # @return [String] # # @!attribute [rw] timeout_in_minutes # How long, in minutes, from 5 to 480 (8 hours), for AWS CodeBuild to # wait before timing out any related build that did not get marked as # completed. The default is 60 minutes. # @return [Integer] # # @!attribute [rw] queued_timeout_in_minutes # The number of minutes a build is allowed to be queued before it # times out. # @return [Integer] # # @!attribute [rw] encryption_key # The AWS Key Management Service (AWS KMS) customer master key (CMK) # to be used for encrypting the build output artifacts. # # <note markdown="1"> You can use a cross-account KMS key to encrypt the build output # artifacts if your service role has permission to that key. # # </note> # # You can specify either the Amazon Resource Name (ARN) of the CMK or, # if available, the CMK's alias (using the format # `alias/<alias-name>`). # @return [String] # # @!attribute [rw] tags # A list of tag key and value pairs associated with this build # project. # # These tags are available for use by AWS services that support AWS # CodeBuild build project tags. # @return [Array<Types::Tag>] # # @!attribute [rw] created # When the build project was created, expressed in Unix time format. # @return [Time] # # @!attribute [rw] last_modified # When the build project's settings were last modified, expressed in # Unix time format. # @return [Time] # # @!attribute [rw] webhook # Information about a webhook that connects repository events to a # build project in AWS CodeBuild. # @return [Types::Webhook] # # @!attribute [rw] vpc_config # Information about the VPC configuration that AWS CodeBuild accesses. # @return [Types::VpcConfig] # # @!attribute [rw] badge # Information about the build badge for the build project. # @return [Types::ProjectBadge] # # @!attribute [rw] logs_config # Information about logs for the build project. A project can create # logs in Amazon CloudWatch Logs, an S3 bucket, or both. # @return [Types::LogsConfig] # # @!attribute [rw] file_system_locations # An array of `ProjectFileSystemLocation` objects for a CodeBuild # build project. A `ProjectFileSystemLocation` object specifies the # `identifier`, `location`, `mountOptions`, `mountPoint`, and `type` # of a file system created using Amazon Elastic File System. # @return [Array<Types::ProjectFileSystemLocation>] # # @!attribute [rw] build_batch_config # A ProjectBuildBatchConfig object that defines the batch build # options for the project. # @return [Types::ProjectBuildBatchConfig] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/Project AWS API Documentation # class Project < Struct.new( :name, :arn, :description, :source, :secondary_sources, :source_version, :secondary_source_versions, :artifacts, :secondary_artifacts, :cache, :environment, :service_role, :timeout_in_minutes, :queued_timeout_in_minutes, :encryption_key, :tags, :created, :last_modified, :webhook, :vpc_config, :badge, :logs_config, :file_system_locations, :build_batch_config) SENSITIVE = [] include Aws::Structure end # Information about the build output artifacts for the build project. # # @note When making an API call, you may pass ProjectArtifacts # data as a hash: # # { # type: "CODEPIPELINE", # required, accepts CODEPIPELINE, S3, NO_ARTIFACTS # location: "String", # path: "String", # namespace_type: "NONE", # accepts NONE, BUILD_ID # name: "String", # packaging: "NONE", # accepts NONE, ZIP # override_artifact_name: false, # encryption_disabled: false, # artifact_identifier: "String", # } # # @!attribute [rw] type # The type of build output artifact. Valid values include: # # * `CODEPIPELINE`\: The build project has build output generated # through AWS CodePipeline. # # <note markdown="1"> The `CODEPIPELINE` type is not supported for `secondaryArtifacts`. # # </note> # # * `NO_ARTIFACTS`\: The build project does not produce any build # output. # # * `S3`\: The build project stores build output in Amazon Simple # Storage Service (Amazon S3). # @return [String] # # @!attribute [rw] location # Information about the build output artifact location: # # * If `type` is set to `CODEPIPELINE`, AWS CodePipeline ignores this # value if specified. This is because AWS CodePipeline manages its # build output locations instead of AWS CodeBuild. # # * If `type` is set to `NO_ARTIFACTS`, this value is ignored if # specified, because no build output is produced. # # * If `type` is set to `S3`, this is the name of the output bucket. # @return [String] # # @!attribute [rw] path # Along with `namespaceType` and `name`, the pattern that AWS # CodeBuild uses to name and store the output artifact: # # * If `type` is set to `CODEPIPELINE`, AWS CodePipeline ignores this # value if specified. This is because AWS CodePipeline manages its # build output names instead of AWS CodeBuild. # # * If `type` is set to `NO_ARTIFACTS`, this value is ignored if # specified, because no build output is produced. # # * If `type` is set to `S3`, this is the path to the output artifact. # If `path` is not specified, `path` is not used. # # For example, if `path` is set to `MyArtifacts`, `namespaceType` is # set to `NONE`, and `name` is set to `MyArtifact.zip`, the output # artifact is stored in the output bucket at # `MyArtifacts/MyArtifact.zip`. # @return [String] # # @!attribute [rw] namespace_type # Along with `path` and `name`, the pattern that AWS CodeBuild uses to # determine the name and location to store the output artifact: # # * If `type` is set to `CODEPIPELINE`, AWS CodePipeline ignores this # value if specified. This is because AWS CodePipeline manages its # build output names instead of AWS CodeBuild. # # * If `type` is set to `NO_ARTIFACTS`, this value is ignored if # specified, because no build output is produced. # # * If `type` is set to `S3`, valid values include: # # * `BUILD_ID`\: Include the build ID in the location of the build # output artifact. # # * `NONE`\: Do not include the build ID. This is the default if # `namespaceType` is not specified. # # For example, if `path` is set to `MyArtifacts`, `namespaceType` is # set to `BUILD_ID`, and `name` is set to `MyArtifact.zip`, the output # artifact is stored in `MyArtifacts/<build-ID>/MyArtifact.zip`. # @return [String] # # @!attribute [rw] name # Along with `path` and `namespaceType`, the pattern that AWS # CodeBuild uses to name and store the output artifact: # # * If `type` is set to `CODEPIPELINE`, AWS CodePipeline ignores this # value if specified. This is because AWS CodePipeline manages its # build output names instead of AWS CodeBuild. # # * If `type` is set to `NO_ARTIFACTS`, this value is ignored if # specified, because no build output is produced. # # * If `type` is set to `S3`, this is the name of the output artifact # object. If you set the name to be a forward slash ("/"), the # artifact is stored in the root of the output bucket. # # For example: # # * If `path` is set to `MyArtifacts`, `namespaceType` is set to # `BUILD_ID`, and `name` is set to `MyArtifact.zip`, then the output # artifact is stored in `MyArtifacts/<build-ID>/MyArtifact.zip`. # # * If `path` is empty, `namespaceType` is set to `NONE`, and `name` # is set to "`/`", the output artifact is stored in the root of # the output bucket. # # * If `path` is set to `MyArtifacts`, `namespaceType` is set to # `BUILD_ID`, and `name` is set to "`/`", the output artifact is # stored in `MyArtifacts/<build-ID>`. # @return [String] # # @!attribute [rw] packaging # The type of build output artifact to create: # # * If `type` is set to `CODEPIPELINE`, AWS CodePipeline ignores this # value if specified. This is because AWS CodePipeline manages its # build output artifacts instead of AWS CodeBuild. # # * If `type` is set to `NO_ARTIFACTS`, this value is ignored if # specified, because no build output is produced. # # * If `type` is set to `S3`, valid values include: # # * `NONE`\: AWS CodeBuild creates in the output bucket a folder # that contains the build output. This is the default if # `packaging` is not specified. # # * `ZIP`\: AWS CodeBuild creates in the output bucket a ZIP file # that contains the build output. # @return [String] # # @!attribute [rw] override_artifact_name # If this flag is set, a name specified in the buildspec file # overrides the artifact name. The name specified in a buildspec file # is calculated at build time and uses the Shell Command Language. For # example, you can append a date and time to your artifact name so # that it is always unique. # @return [Boolean] # # @!attribute [rw] encryption_disabled # Set to true if you do not want your output artifacts encrypted. This # option is valid only if your artifacts type is Amazon Simple Storage # Service (Amazon S3). If this is set with another artifacts type, an # invalidInputException is thrown. # @return [Boolean] # # @!attribute [rw] artifact_identifier # An identifier for this artifact definition. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ProjectArtifacts AWS API Documentation # class ProjectArtifacts < Struct.new( :type, :location, :path, :namespace_type, :name, :packaging, :override_artifact_name, :encryption_disabled, :artifact_identifier) SENSITIVE = [] include Aws::Structure end # Information about the build badge for the build project. # # @!attribute [rw] badge_enabled # Set this to true to generate a publicly accessible URL for your # project's build badge. # @return [Boolean] # # @!attribute [rw] badge_request_url # The publicly-accessible URL through which you can access the build # badge for your project. # # The publicly accessible URL through which you can access the build # badge for your project. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ProjectBadge AWS API Documentation # class ProjectBadge < Struct.new( :badge_enabled, :badge_request_url) SENSITIVE = [] include Aws::Structure end # Contains configuration information about a batch build project. # # @note When making an API call, you may pass ProjectBuildBatchConfig # data as a hash: # # { # service_role: "NonEmptyString", # combine_artifacts: false, # restrictions: { # maximum_builds_allowed: 1, # compute_types_allowed: ["NonEmptyString"], # }, # timeout_in_mins: 1, # } # # @!attribute [rw] service_role # Specifies the service role ARN for the batch build project. # @return [String] # # @!attribute [rw] combine_artifacts # Specifies if the build artifacts for the batch build should be # combined into a single artifact location. # @return [Boolean] # # @!attribute [rw] restrictions # A `BatchRestrictions` object that specifies the restrictions for the # batch build. # @return [Types::BatchRestrictions] # # @!attribute [rw] timeout_in_mins # Specifies the maximum amount of time, in minutes, that the batch # build must be completed in. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ProjectBuildBatchConfig AWS API Documentation # class ProjectBuildBatchConfig < Struct.new( :service_role, :combine_artifacts, :restrictions, :timeout_in_mins) SENSITIVE = [] include Aws::Structure end # Information about the cache for the build project. # # @note When making an API call, you may pass ProjectCache # data as a hash: # # { # type: "NO_CACHE", # required, accepts NO_CACHE, S3, LOCAL # location: "String", # modes: ["LOCAL_DOCKER_LAYER_CACHE"], # accepts LOCAL_DOCKER_LAYER_CACHE, LOCAL_SOURCE_CACHE, LOCAL_CUSTOM_CACHE # } # # @!attribute [rw] type # The type of cache used by the build project. Valid values include: # # * `NO_CACHE`\: The build project does not use any cache. # # * `S3`\: The build project reads and writes from and to S3. # # * `LOCAL`\: The build project stores a cache locally on a build host # that is only available to that build host. # @return [String] # # @!attribute [rw] location # Information about the cache location: # # * `NO_CACHE` or `LOCAL`\: This value is ignored. # # * `S3`\: This is the S3 bucket name/prefix. # @return [String] # # @!attribute [rw] modes # If you use a `LOCAL` cache, the local cache mode. You can use one or # more local cache modes at the same time. # # * `LOCAL_SOURCE_CACHE` mode caches Git metadata for primary and # secondary sources. After the cache is created, subsequent builds # pull only the change between commits. This mode is a good choice # for projects with a clean working directory and a source that is a # large Git repository. If you choose this option and your project # does not use a Git repository (GitHub, GitHub Enterprise, or # Bitbucket), the option is ignored. # # * `LOCAL_DOCKER_LAYER_CACHE` mode caches existing Docker layers. # This mode is a good choice for projects that build or pull large # Docker images. It can prevent the performance issues caused by # pulling large Docker images down from the network. # # <note markdown="1"> * You can use a Docker layer cache in the Linux environment only. # # * The `privileged` flag must be set so that your project has the # required Docker permissions. # # * You should consider the security implications before you use a # Docker layer cache. # # </note> # ^ # # * `LOCAL_CUSTOM_CACHE` mode caches directories you specify in the # buildspec file. This mode is a good choice if your build scenario # is not suited to one of the other three local cache modes. If you # use a custom cache: # # * Only directories can be specified for caching. You cannot # specify individual files. # # * Symlinks are used to reference cached directories. # # * Cached directories are linked to your build before it downloads # its project sources. Cached items are overridden if a source # item has the same name. Directories are specified using cache # paths in the buildspec file. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ProjectCache AWS API Documentation # class ProjectCache < Struct.new( :type, :location, :modes) SENSITIVE = [] include Aws::Structure end # Information about the build environment of the build project. # # @note When making an API call, you may pass ProjectEnvironment # data as a hash: # # { # type: "WINDOWS_CONTAINER", # required, accepts WINDOWS_CONTAINER, LINUX_CONTAINER, LINUX_GPU_CONTAINER, ARM_CONTAINER, WINDOWS_SERVER_2019_CONTAINER # image: "NonEmptyString", # required # compute_type: "BUILD_GENERAL1_SMALL", # required, accepts BUILD_GENERAL1_SMALL, BUILD_GENERAL1_MEDIUM, BUILD_GENERAL1_LARGE, BUILD_GENERAL1_2XLARGE # environment_variables: [ # { # name: "NonEmptyString", # required # value: "String", # required # type: "PLAINTEXT", # accepts PLAINTEXT, PARAMETER_STORE, SECRETS_MANAGER # }, # ], # privileged_mode: false, # certificate: "String", # registry_credential: { # credential: "NonEmptyString", # required # credential_provider: "SECRETS_MANAGER", # required, accepts SECRETS_MANAGER # }, # image_pull_credentials_type: "CODEBUILD", # accepts CODEBUILD, SERVICE_ROLE # } # # @!attribute [rw] type # The type of build environment to use for related builds. # # * The environment type `ARM_CONTAINER` is available only in regions # US East (N. Virginia), US East (Ohio), US West (Oregon), EU # (Ireland), Asia Pacific (Mumbai), Asia Pacific (Tokyo), Asia # Pacific (Sydney), and EU (Frankfurt). # # * The environment type `LINUX_CONTAINER` with compute type # `build.general1.2xlarge` is available only in regions US East (N. # Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU # (Ireland), EU (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia # Pacific (Seoul), Asia Pacific (Singapore), Asia Pacific (Sydney), # China (Beijing), and China (Ningxia). # # * The environment type `LINUX_GPU_CONTAINER` is available only in # regions US East (N. Virginia), US East (Ohio), US West (Oregon), # Canada (Central), EU (Ireland), EU (London), EU (Frankfurt), Asia # Pacific (Tokyo), Asia Pacific (Seoul), Asia Pacific (Singapore), # Asia Pacific (Sydney) , China (Beijing), and China (Ningxia). # @return [String] # # @!attribute [rw] image # The image tag or image digest that identifies the Docker image to # use for this build project. Use the following formats: # # * For an image tag: `<registry>/<repository>:<tag>`. For example, in # the Docker repository that CodeBuild uses to manage its Docker # images, this would be `aws/codebuild/standard:4.0`. To specify the # latest version of this image, this would be # `aws/codebuild/standard:latest`. # # * For an image digest: `<registry>/<repository>@<digest>`. For # example, to specify an image with the digest # "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf," # use # `<registry>/<repository>@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf`. # @return [String] # # @!attribute [rw] compute_type # Information about the compute resources the build project uses. # Available values include: # # * `BUILD_GENERAL1_SMALL`\: Use up to 3 GB memory and 2 vCPUs for # builds. # # * `BUILD_GENERAL1_MEDIUM`\: Use up to 7 GB memory and 4 vCPUs for # builds. # # * `BUILD_GENERAL1_LARGE`\: Use up to 16 GB memory and 8 vCPUs for # builds, depending on your environment type. # # * `BUILD_GENERAL1_2XLARGE`\: Use up to 145 GB memory, 72 vCPUs, and # 824 GB of SSD storage for builds. This compute type supports # Docker images up to 100 GB uncompressed. # # If you use `BUILD_GENERAL1_LARGE`\: # # * For environment type `LINUX_CONTAINER`, you can use up to 15 GB # memory and 8 vCPUs for builds. # # * For environment type `LINUX_GPU_CONTAINER`, you can use up to 255 # GB memory, 32 vCPUs, and 4 NVIDIA Tesla V100 GPUs for builds. # # * For environment type `ARM_CONTAINER`, you can use up to 16 GB # memory and 8 vCPUs on ARM-based processors for builds. # # For more information, see [Build Environment Compute Types][1] in # the *AWS CodeBuild User Guide.* # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html # @return [String] # # @!attribute [rw] environment_variables # A set of environment variables to make available to builds for this # build project. # @return [Array<Types::EnvironmentVariable>] # # @!attribute [rw] privileged_mode # Enables running the Docker daemon inside a Docker container. Set to # true only if the build project is used to build Docker images. # Otherwise, a build that attempts to interact with the Docker daemon # fails. The default setting is `false`. # # You can initialize the Docker daemon during the install phase of # your build by adding one of the following sets of commands to the # install phase of your buildspec file: # # If the operating system's base image is Ubuntu Linux: # # `- nohup /usr/local/bin/dockerd --host=unix:///var/run/docker.sock # --host=tcp://0.0.0.0:2375 --storage-driver=overlay&` # # `- timeout 15 sh -c "until docker info; do echo .; sleep 1; done"` # # If the operating system's base image is Alpine Linux and the # previous command does not work, add the `-t` argument to `timeout`\: # # `- nohup /usr/local/bin/dockerd --host=unix:///var/run/docker.sock # --host=tcp://0.0.0.0:2375 --storage-driver=overlay&` # # `- timeout -t 15 sh -c "until docker info; do echo .; sleep 1; # done"` # @return [Boolean] # # @!attribute [rw] certificate # The certificate to use with this build project. # @return [String] # # @!attribute [rw] registry_credential # The credentials for access to a private registry. # @return [Types::RegistryCredential] # # @!attribute [rw] image_pull_credentials_type # The type of credentials AWS CodeBuild uses to pull images in your # build. There are two valid values: # # * `CODEBUILD` specifies that AWS CodeBuild uses its own credentials. # This requires that you modify your ECR repository policy to trust # AWS CodeBuild's service principal. # # * `SERVICE_ROLE` specifies that AWS CodeBuild uses your build # project's service role. # # When you use a cross-account or private registry image, you must use # SERVICE\_ROLE credentials. When you use an AWS CodeBuild curated # image, you must use CODEBUILD credentials. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ProjectEnvironment AWS API Documentation # class ProjectEnvironment < Struct.new( :type, :image, :compute_type, :environment_variables, :privileged_mode, :certificate, :registry_credential, :image_pull_credentials_type) SENSITIVE = [] include Aws::Structure end # Information about a file system created by Amazon Elastic File System # (EFS). For more information, see [What Is Amazon Elastic File # System?][1] # # # # [1]: https://docs.aws.amazon.com/efs/latest/ug/whatisefs.html # # @note When making an API call, you may pass ProjectFileSystemLocation # data as a hash: # # { # type: "EFS", # accepts EFS # location: "String", # mount_point: "String", # identifier: "String", # mount_options: "String", # } # # @!attribute [rw] type # The type of the file system. The one supported type is `EFS`. # @return [String] # # @!attribute [rw] location # A string that specifies the location of the file system created by # Amazon EFS. Its format is `efs-dns-name:/directory-path`. You can # find the DNS name of file system when you view it in the AWS EFS # console. The directory path is a path to a directory in the file # system that CodeBuild mounts. For example, if the DNS name of a file # system is `fs-abcd1234.efs.us-west-2.amazonaws.com`, and its mount # directory is `my-efs-mount-directory`, then the `location` is # `fs-abcd1234.efs.us-west-2.amazonaws.com:/my-efs-mount-directory`. # # The directory path in the format `efs-dns-name:/directory-path` is # optional. If you do not specify a directory path, the location is # only the DNS name and CodeBuild mounts the entire file system. # @return [String] # # @!attribute [rw] mount_point # The location in the container where you mount the file system. # @return [String] # # @!attribute [rw] identifier # The name used to access a file system created by Amazon EFS. # CodeBuild creates an environment variable by appending the # `identifier` in all capital letters to `CODEBUILD_`. For example, if # you specify `my-efs` for `identifier`, a new environment variable is # create named `CODEBUILD_MY-EFS`. # # The `identifier` is used to mount your file system. # @return [String] # # @!attribute [rw] mount_options # The mount options for a file system created by AWS EFS. The default # mount options used by CodeBuild are # `nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2`. # For more information, see [Recommended NFS Mount Options][1]. # # # # [1]: https://docs.aws.amazon.com/efs/latest/ug/mounting-fs-nfs-mount-settings.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ProjectFileSystemLocation AWS API Documentation # class ProjectFileSystemLocation < Struct.new( :type, :location, :mount_point, :identifier, :mount_options) SENSITIVE = [] include Aws::Structure end # Information about the build input source code for the build project. # # @note When making an API call, you may pass ProjectSource # data as a hash: # # { # type: "CODECOMMIT", # required, accepts CODECOMMIT, CODEPIPELINE, GITHUB, S3, BITBUCKET, GITHUB_ENTERPRISE, NO_SOURCE # location: "String", # git_clone_depth: 1, # git_submodules_config: { # fetch_submodules: false, # required # }, # buildspec: "String", # auth: { # type: "OAUTH", # required, accepts OAUTH # resource: "String", # }, # report_build_status: false, # build_status_config: { # context: "String", # target_url: "String", # }, # insecure_ssl: false, # source_identifier: "String", # } # # @!attribute [rw] type # The type of repository that contains the source code to be built. # Valid values include: # # * `BITBUCKET`\: The source code is in a Bitbucket repository. # # * `CODECOMMIT`\: The source code is in an AWS CodeCommit repository. # # * `CODEPIPELINE`\: The source code settings are specified in the # source action of a pipeline in AWS CodePipeline. # # * `GITHUB`\: The source code is in a GitHub or GitHub Enterprise # Cloud repository. # # * `GITHUB_ENTERPRISE`\: The source code is in a GitHub Enterprise # Server repository. # # * `NO_SOURCE`\: The project does not have input source code. # # * `S3`\: The source code is in an Amazon Simple Storage Service # (Amazon S3) input bucket. # @return [String] # # @!attribute [rw] location # Information about the location of the source code to be built. Valid # values include: # # * For source code settings that are specified in the source action # of a pipeline in AWS CodePipeline, `location` should not be # specified. If it is specified, AWS CodePipeline ignores it. This # is because AWS CodePipeline uses the settings in a pipeline's # source action instead of this value. # # * For source code in an AWS CodeCommit repository, the HTTPS clone # URL to the repository that contains the source code and the # buildspec file (for example, # `https://git-codecommit.<region-ID>.amazonaws.com/v1/repos/<repo-name>`). # # * For source code in an Amazon Simple Storage Service (Amazon S3) # input bucket, one of the following. # # * The path to the ZIP file that contains the source code (for # example, `<bucket-name>/<path>/<object-name>.zip`). # # * The path to the folder that contains the source code (for # example, `<bucket-name>/<path-to-source-code>/<folder>/`). # # * For source code in a GitHub repository, the HTTPS clone URL to the # repository that contains the source and the buildspec file. You # must connect your AWS account to your GitHub account. Use the AWS # CodeBuild console to start creating a build project. When you use # the console to connect (or reconnect) with GitHub, on the GitHub # **Authorize application** page, for **Organization access**, # choose **Request access** next to each repository you want to # allow AWS CodeBuild to have access to, and then choose **Authorize # application**. (After you have connected to your GitHub account, # you do not need to finish creating the build project. You can # leave the AWS CodeBuild console.) To instruct AWS CodeBuild to use # this connection, in the `source` object, set the `auth` object's # `type` value to `OAUTH`. # # * For source code in a Bitbucket repository, the HTTPS clone URL to # the repository that contains the source and the buildspec file. # You must connect your AWS account to your Bitbucket account. Use # the AWS CodeBuild console to start creating a build project. When # you use the console to connect (or reconnect) with Bitbucket, on # the Bitbucket **Confirm access to your account** page, choose # **Grant access**. (After you have connected to your Bitbucket # account, you do not need to finish creating the build project. You # can leave the AWS CodeBuild console.) To instruct AWS CodeBuild to # use this connection, in the `source` object, set the `auth` # object's `type` value to `OAUTH`. # @return [String] # # @!attribute [rw] git_clone_depth # Information about the Git clone depth for the build project. # @return [Integer] # # @!attribute [rw] git_submodules_config # Information about the Git submodules configuration for the build # project. # @return [Types::GitSubmodulesConfig] # # @!attribute [rw] buildspec # The buildspec file declaration to use for the builds in this build # project. # # If this value is set, it can be either an inline buildspec # definition, the path to an alternate buildspec file relative to the # value of the built-in `CODEBUILD_SRC_DIR` environment variable, or # the path to an S3 bucket. The bucket must be in the same AWS Region # as the build project. Specify the buildspec file using its ARN (for # example, `arn:aws:s3:::my-codebuild-sample2/buildspec.yml`). If this # value is not provided or is set to an empty string, the source code # must contain a buildspec file in its root directory. For more # information, see [Buildspec File Name and Storage Location][1]. # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-name-storage # @return [String] # # @!attribute [rw] auth # Information about the authorization settings for AWS CodeBuild to # access the source code to be built. # # This information is for the AWS CodeBuild console's use only. Your # code should not get or set this information directly. # @return [Types::SourceAuth] # # @!attribute [rw] report_build_status # Set to true to report the status of a build's start and finish to # your source provider. This option is valid only when your source # provider is GitHub, GitHub Enterprise, or Bitbucket. If this is set # and you use a different source provider, an invalidInputException is # thrown. # # <note markdown="1"> The status of a build triggered by a webhook is always reported to # your source provider. # # </note> # @return [Boolean] # # @!attribute [rw] build_status_config # Contains information that defines how the build project reports the # build status to the source provider. This option is only used when # the source provider is `GITHUB`, `GITHUB_ENTERPRISE`, or # `BITBUCKET`. # @return [Types::BuildStatusConfig] # # @!attribute [rw] insecure_ssl # Enable this flag to ignore SSL warnings while connecting to the # project source code. # @return [Boolean] # # @!attribute [rw] source_identifier # An identifier for this project source. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ProjectSource AWS API Documentation # class ProjectSource < Struct.new( :type, :location, :git_clone_depth, :git_submodules_config, :buildspec, :auth, :report_build_status, :build_status_config, :insecure_ssl, :source_identifier) SENSITIVE = [] include Aws::Structure end # A source identifier and its corresponding version. # # @note When making an API call, you may pass ProjectSourceVersion # data as a hash: # # { # source_identifier: "String", # required # source_version: "String", # required # } # # @!attribute [rw] source_identifier # An identifier for a source in the build project. # @return [String] # # @!attribute [rw] source_version # The source version for the corresponding source identifier. If # specified, must be one of: # # * For AWS CodeCommit: the commit ID, branch, or Git tag to use. # # * For GitHub: the commit ID, pull request ID, branch name, or tag # name that corresponds to the version of the source code you want # to build. If a pull request ID is specified, it must use the # format `pr/pull-request-ID` (for example, `pr/25`). If a branch # name is specified, the branch's HEAD commit ID is used. If not # specified, the default branch's HEAD commit ID is used. # # * For Bitbucket: the commit ID, branch name, or tag name that # corresponds to the version of the source code you want to build. # If a branch name is specified, the branch's HEAD commit ID is # used. If not specified, the default branch's HEAD commit ID is # used. # # * For Amazon Simple Storage Service (Amazon S3): the version ID of # the object that represents the build input ZIP file to use. # # For more information, see [Source Version Sample with CodeBuild][1] # in the *AWS CodeBuild User Guide*. # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ProjectSourceVersion AWS API Documentation # class ProjectSourceVersion < Struct.new( :source_identifier, :source_version) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass PutResourcePolicyInput # data as a hash: # # { # policy: "NonEmptyString", # required # resource_arn: "NonEmptyString", # required # } # # @!attribute [rw] policy # A JSON-formatted resource policy. For more information, see [Sharing # a Project][1] and [Sharing a Report Group][2] in the *AWS CodeBuild # User Guide*. # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/project-sharing.html#project-sharing-share # [2]: https://docs.aws.amazon.com/codebuild/latest/userguide/report-groups-sharing.html#report-groups-sharing-share # @return [String] # # @!attribute [rw] resource_arn # The ARN of the `Project` or `ReportGroup` resource you want to # associate with a resource policy. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/PutResourcePolicyInput AWS API Documentation # class PutResourcePolicyInput < Struct.new( :policy, :resource_arn) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] resource_arn # The ARN of the `Project` or `ReportGroup` resource that is # associated with a resource policy. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/PutResourcePolicyOutput AWS API Documentation # class PutResourcePolicyOutput < Struct.new( :resource_arn) SENSITIVE = [] include Aws::Structure end # Information about credentials that provide access to a private Docker # registry. When this is set: # # * `imagePullCredentialsType` must be set to `SERVICE_ROLE`. # # * images cannot be curated or an Amazon ECR image. # # For more information, see [Private Registry with AWS Secrets Manager # Sample for AWS CodeBuild][1]. # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-private-registry.html # # @note When making an API call, you may pass RegistryCredential # data as a hash: # # { # credential: "NonEmptyString", # required # credential_provider: "SECRETS_MANAGER", # required, accepts SECRETS_MANAGER # } # # @!attribute [rw] credential # The Amazon Resource Name (ARN) or name of credentials created using # AWS Secrets Manager. # # <note markdown="1"> The `credential` can use the name of the credentials only if they # exist in your current AWS Region. # # </note> # @return [String] # # @!attribute [rw] credential_provider # The service that created the credentials to access a private Docker # registry. The valid value, SECRETS\_MANAGER, is for AWS Secrets # Manager. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/RegistryCredential AWS API Documentation # class RegistryCredential < Struct.new( :credential, :credential_provider) SENSITIVE = [] include Aws::Structure end # Information about the results from running a series of test cases # during the run of a build project. The test cases are specified in the # buildspec for the build project using one or more paths to the test # case files. You can specify any type of tests you want, such as unit # tests, integration tests, and functional tests. # # @!attribute [rw] arn # The ARN of the report run. # @return [String] # # @!attribute [rw] type # The type of the report that was run. # # CODE\_COVERAGE # # : A code coverage report. # # TEST # # : A test report. # @return [String] # # @!attribute [rw] name # The name of the report that was run. # @return [String] # # @!attribute [rw] report_group_arn # The ARN of the report group associated with this report. # @return [String] # # @!attribute [rw] execution_id # The ARN of the build run that generated this report. # @return [String] # # @!attribute [rw] status # The status of this report. # @return [String] # # @!attribute [rw] created # The date and time this report run occurred. # @return [Time] # # @!attribute [rw] expired # The date and time a report expires. A report expires 30 days after # it is created. An expired report is not available to view in # CodeBuild. # @return [Time] # # @!attribute [rw] export_config # Information about where the raw data used to generate this report # was exported. # @return [Types::ReportExportConfig] # # @!attribute [rw] truncated # A boolean that specifies if this report run is truncated. The list # of test cases is truncated after the maximum number of test cases is # reached. # @return [Boolean] # # @!attribute [rw] test_summary # A `TestReportSummary` object that contains information about this # test report. # @return [Types::TestReportSummary] # # @!attribute [rw] code_coverage_summary # A `CodeCoverageReportSummary` object that contains a code coverage # summary for this report. # @return [Types::CodeCoverageReportSummary] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/Report AWS API Documentation # class Report < Struct.new( :arn, :type, :name, :report_group_arn, :execution_id, :status, :created, :expired, :export_config, :truncated, :test_summary, :code_coverage_summary) SENSITIVE = [] include Aws::Structure end # Information about the location where the run of a report is exported. # # @note When making an API call, you may pass ReportExportConfig # data as a hash: # # { # export_config_type: "S3", # accepts S3, NO_EXPORT # s3_destination: { # bucket: "NonEmptyString", # path: "String", # packaging: "ZIP", # accepts ZIP, NONE # encryption_key: "NonEmptyString", # encryption_disabled: false, # }, # } # # @!attribute [rw] export_config_type # The export configuration type. Valid values are: # # * `S3`\: The report results are exported to an S3 bucket. # # * `NO_EXPORT`\: The report results are not exported. # @return [String] # # @!attribute [rw] s3_destination # A `S3ReportExportConfig` object that contains information about the # S3 bucket where the run of a report is exported. # @return [Types::S3ReportExportConfig] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ReportExportConfig AWS API Documentation # class ReportExportConfig < Struct.new( :export_config_type, :s3_destination) SENSITIVE = [] include Aws::Structure end # A filter used to return reports with the status specified by the input # `status` parameter. # # @note When making an API call, you may pass ReportFilter # data as a hash: # # { # status: "GENERATING", # accepts GENERATING, SUCCEEDED, FAILED, INCOMPLETE, DELETING # } # # @!attribute [rw] status # The status used to filter reports. You can filter using one status # only. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ReportFilter AWS API Documentation # class ReportFilter < Struct.new( :status) SENSITIVE = [] include Aws::Structure end # A series of reports. Each report contains information about the # results from running a series of test cases. You specify the test # cases for a report group in the buildspec for a build project using # one or more paths to the test case files. # # @!attribute [rw] arn # The ARN of a `ReportGroup`. # @return [String] # # @!attribute [rw] name # The name of a `ReportGroup`. # @return [String] # # @!attribute [rw] type # The type of the `ReportGroup`. The one valid value is `TEST`. # @return [String] # # @!attribute [rw] export_config # Information about the destination where the raw data of this # `ReportGroup` is exported. # @return [Types::ReportExportConfig] # # @!attribute [rw] created # The date and time this `ReportGroup` was created. # @return [Time] # # @!attribute [rw] last_modified # The date and time this `ReportGroup` was last modified. # @return [Time] # # @!attribute [rw] tags # A list of tag key and value pairs associated with this report group. # # These tags are available for use by AWS services that support AWS # CodeBuild report group tags. # @return [Array<Types::Tag>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ReportGroup AWS API Documentation # class ReportGroup < Struct.new( :arn, :name, :type, :export_config, :created, :last_modified, :tags) SENSITIVE = [] include Aws::Structure end # Represents a resolved build artifact. A resolve artifact is an # artifact that is built and deployed to the destination, such as Amazon # Simple Storage Service (Amazon S3). # # @!attribute [rw] type # Specifies the type of artifact. # @return [String] # # @!attribute [rw] location # The location of the artifact. # @return [String] # # @!attribute [rw] identifier # The identifier of the artifact. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ResolvedArtifact AWS API Documentation # class ResolvedArtifact < Struct.new( :type, :location, :identifier) SENSITIVE = [] include Aws::Structure end # The specified AWS resource cannot be created, because an AWS resource # with the same settings already exists. # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ResourceAlreadyExistsException AWS API Documentation # class ResourceAlreadyExistsException < Aws::EmptyStructure; end # The specified AWS resource cannot be found. # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/ResourceNotFoundException AWS API Documentation # class ResourceNotFoundException < Aws::EmptyStructure; end # @note When making an API call, you may pass RetryBuildBatchInput # data as a hash: # # { # id: "NonEmptyString", # idempotency_token: "String", # retry_type: "RETRY_ALL_BUILDS", # accepts RETRY_ALL_BUILDS, RETRY_FAILED_BUILDS # } # # @!attribute [rw] id # Specifies the identifier of the batch build to restart. # @return [String] # # @!attribute [rw] idempotency_token # A unique, case sensitive identifier you provide to ensure the # idempotency of the `RetryBuildBatch` request. The token is included # in the `RetryBuildBatch` request and is valid for five minutes. If # you repeat the `RetryBuildBatch` request with the same token, but # change a parameter, AWS CodeBuild returns a parameter mismatch # error. # @return [String] # # @!attribute [rw] retry_type # Specifies the type of retry to perform. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/RetryBuildBatchInput AWS API Documentation # class RetryBuildBatchInput < Struct.new( :id, :idempotency_token, :retry_type) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] build_batch # Contains information about a batch build. # @return [Types::BuildBatch] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/RetryBuildBatchOutput AWS API Documentation # class RetryBuildBatchOutput < Struct.new( :build_batch) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass RetryBuildInput # data as a hash: # # { # id: "NonEmptyString", # idempotency_token: "String", # } # # @!attribute [rw] id # Specifies the identifier of the build to restart. # @return [String] # # @!attribute [rw] idempotency_token # A unique, case sensitive identifier you provide to ensure the # idempotency of the `RetryBuild` request. The token is included in # the `RetryBuild` request and is valid for five minutes. If you # repeat the `RetryBuild` request with the same token, but change a # parameter, AWS CodeBuild returns a parameter mismatch error. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/RetryBuildInput AWS API Documentation # class RetryBuildInput < Struct.new( :id, :idempotency_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] build # Information about a build. # @return [Types::Build] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/RetryBuildOutput AWS API Documentation # class RetryBuildOutput < Struct.new( :build) SENSITIVE = [] include Aws::Structure end # Information about S3 logs for a build project. # # @note When making an API call, you may pass S3LogsConfig # data as a hash: # # { # status: "ENABLED", # required, accepts ENABLED, DISABLED # location: "String", # encryption_disabled: false, # } # # @!attribute [rw] status # The current status of the S3 build logs. Valid values are: # # * `ENABLED`\: S3 build logs are enabled for this build project. # # * `DISABLED`\: S3 build logs are not enabled for this build project. # @return [String] # # @!attribute [rw] location # The ARN of an S3 bucket and the path prefix for S3 logs. If your # Amazon S3 bucket name is `my-bucket`, and your path prefix is # `build-log`, then acceptable formats are `my-bucket/build-log` or # `arn:aws:s3:::my-bucket/build-log`. # @return [String] # # @!attribute [rw] encryption_disabled # Set to true if you do not want your S3 build log output encrypted. # By default S3 build logs are encrypted. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/S3LogsConfig AWS API Documentation # class S3LogsConfig < Struct.new( :status, :location, :encryption_disabled) SENSITIVE = [] include Aws::Structure end # Information about the S3 bucket where the raw data of a report are # exported. # # @note When making an API call, you may pass S3ReportExportConfig # data as a hash: # # { # bucket: "NonEmptyString", # path: "String", # packaging: "ZIP", # accepts ZIP, NONE # encryption_key: "NonEmptyString", # encryption_disabled: false, # } # # @!attribute [rw] bucket # The name of the S3 bucket where the raw data of a report are # exported. # @return [String] # # @!attribute [rw] path # The path to the exported report's raw data results. # @return [String] # # @!attribute [rw] packaging # The type of build output artifact to create. Valid values include: # # * `NONE`\: AWS CodeBuild creates the raw data in the output bucket. # This is the default if packaging is not specified. # # * `ZIP`\: AWS CodeBuild creates a ZIP file with the raw data in the # output bucket. # @return [String] # # @!attribute [rw] encryption_key # The encryption key for the report's encrypted raw data. # @return [String] # # @!attribute [rw] encryption_disabled # A boolean value that specifies if the results of a report are # encrypted. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/S3ReportExportConfig AWS API Documentation # class S3ReportExportConfig < Struct.new( :bucket, :path, :packaging, :encryption_key, :encryption_disabled) SENSITIVE = [] include Aws::Structure end # Information about the authorization settings for AWS CodeBuild to # access the source code to be built. # # This information is for the AWS CodeBuild console's use only. Your # code should not get or set this information directly. # # @note When making an API call, you may pass SourceAuth # data as a hash: # # { # type: "OAUTH", # required, accepts OAUTH # resource: "String", # } # # @!attribute [rw] type # <note markdown="1"> This data type is deprecated and is no longer accurate or used. # # </note> # # The authorization type to use. The only valid value is `OAUTH`, # which represents the OAuth authorization type. # @return [String] # # @!attribute [rw] resource # The resource value that applies to the specified authorization type. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/SourceAuth AWS API Documentation # class SourceAuth < Struct.new( :type, :resource) SENSITIVE = [] include Aws::Structure end # Information about the credentials for a GitHub, GitHub Enterprise, or # Bitbucket repository. # # @!attribute [rw] arn # The Amazon Resource Name (ARN) of the token. # @return [String] # # @!attribute [rw] server_type # The type of source provider. The valid options are GITHUB, # GITHUB\_ENTERPRISE, or BITBUCKET. # @return [String] # # @!attribute [rw] auth_type # The type of authentication used by the credentials. Valid options # are OAUTH, BASIC\_AUTH, or PERSONAL\_ACCESS\_TOKEN. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/SourceCredentialsInfo AWS API Documentation # class SourceCredentialsInfo < Struct.new( :arn, :server_type, :auth_type) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass StartBuildBatchInput # data as a hash: # # { # project_name: "NonEmptyString", # required # secondary_sources_override: [ # { # type: "CODECOMMIT", # required, accepts CODECOMMIT, CODEPIPELINE, GITHUB, S3, BITBUCKET, GITHUB_ENTERPRISE, NO_SOURCE # location: "String", # git_clone_depth: 1, # git_submodules_config: { # fetch_submodules: false, # required # }, # buildspec: "String", # auth: { # type: "OAUTH", # required, accepts OAUTH # resource: "String", # }, # report_build_status: false, # build_status_config: { # context: "String", # target_url: "String", # }, # insecure_ssl: false, # source_identifier: "String", # }, # ], # secondary_sources_version_override: [ # { # source_identifier: "String", # required # source_version: "String", # required # }, # ], # source_version: "String", # artifacts_override: { # type: "CODEPIPELINE", # required, accepts CODEPIPELINE, S3, NO_ARTIFACTS # location: "String", # path: "String", # namespace_type: "NONE", # accepts NONE, BUILD_ID # name: "String", # packaging: "NONE", # accepts NONE, ZIP # override_artifact_name: false, # encryption_disabled: false, # artifact_identifier: "String", # }, # secondary_artifacts_override: [ # { # type: "CODEPIPELINE", # required, accepts CODEPIPELINE, S3, NO_ARTIFACTS # location: "String", # path: "String", # namespace_type: "NONE", # accepts NONE, BUILD_ID # name: "String", # packaging: "NONE", # accepts NONE, ZIP # override_artifact_name: false, # encryption_disabled: false, # artifact_identifier: "String", # }, # ], # environment_variables_override: [ # { # name: "NonEmptyString", # required # value: "String", # required # type: "PLAINTEXT", # accepts PLAINTEXT, PARAMETER_STORE, SECRETS_MANAGER # }, # ], # source_type_override: "CODECOMMIT", # accepts CODECOMMIT, CODEPIPELINE, GITHUB, S3, BITBUCKET, GITHUB_ENTERPRISE, NO_SOURCE # source_location_override: "String", # source_auth_override: { # type: "OAUTH", # required, accepts OAUTH # resource: "String", # }, # git_clone_depth_override: 1, # git_submodules_config_override: { # fetch_submodules: false, # required # }, # buildspec_override: "String", # insecure_ssl_override: false, # report_build_batch_status_override: false, # environment_type_override: "WINDOWS_CONTAINER", # accepts WINDOWS_CONTAINER, LINUX_CONTAINER, LINUX_GPU_CONTAINER, ARM_CONTAINER, WINDOWS_SERVER_2019_CONTAINER # image_override: "NonEmptyString", # compute_type_override: "BUILD_GENERAL1_SMALL", # accepts BUILD_GENERAL1_SMALL, BUILD_GENERAL1_MEDIUM, BUILD_GENERAL1_LARGE, BUILD_GENERAL1_2XLARGE # certificate_override: "String", # cache_override: { # type: "NO_CACHE", # required, accepts NO_CACHE, S3, LOCAL # location: "String", # modes: ["LOCAL_DOCKER_LAYER_CACHE"], # accepts LOCAL_DOCKER_LAYER_CACHE, LOCAL_SOURCE_CACHE, LOCAL_CUSTOM_CACHE # }, # service_role_override: "NonEmptyString", # privileged_mode_override: false, # build_timeout_in_minutes_override: 1, # queued_timeout_in_minutes_override: 1, # encryption_key_override: "NonEmptyString", # idempotency_token: "String", # logs_config_override: { # cloud_watch_logs: { # status: "ENABLED", # required, accepts ENABLED, DISABLED # group_name: "String", # stream_name: "String", # }, # s3_logs: { # status: "ENABLED", # required, accepts ENABLED, DISABLED # location: "String", # encryption_disabled: false, # }, # }, # registry_credential_override: { # credential: "NonEmptyString", # required # credential_provider: "SECRETS_MANAGER", # required, accepts SECRETS_MANAGER # }, # image_pull_credentials_type_override: "CODEBUILD", # accepts CODEBUILD, SERVICE_ROLE # build_batch_config_override: { # service_role: "NonEmptyString", # combine_artifacts: false, # restrictions: { # maximum_builds_allowed: 1, # compute_types_allowed: ["NonEmptyString"], # }, # timeout_in_mins: 1, # }, # } # # @!attribute [rw] project_name # The name of the project. # @return [String] # # @!attribute [rw] secondary_sources_override # An array of `ProjectSource` objects that override the secondary # sources defined in the batch build project. # @return [Array<Types::ProjectSource>] # # @!attribute [rw] secondary_sources_version_override # An array of `ProjectSourceVersion` objects that override the # secondary source versions in the batch build project. # @return [Array<Types::ProjectSourceVersion>] # # @!attribute [rw] source_version # The version of the batch build input to be built, for this build # only. If not specified, the latest version is used. If specified, # the contents depends on the source provider: # # AWS CodeCommit # # : The commit ID, branch, or Git tag to use. # # GitHub # # : The commit ID, pull request ID, branch name, or tag name that # corresponds to the version of the source code you want to build. # If a pull request ID is specified, it must use the format # `pr/pull-request-ID` (for example `pr/25`). If a branch name is # specified, the branch's HEAD commit ID is used. If not specified, # the default branch's HEAD commit ID is used. # # Bitbucket # # : The commit ID, branch name, or tag name that corresponds to the # version of the source code you want to build. If a branch name is # specified, the branch's HEAD commit ID is used. If not specified, # the default branch's HEAD commit ID is used. # # Amazon Simple Storage Service (Amazon S3) # # : The version ID of the object that represents the build input ZIP # file to use. # # If `sourceVersion` is specified at the project level, then this # `sourceVersion` (at the build level) takes precedence. # # For more information, see [Source Version Sample with CodeBuild][1] # in the *AWS CodeBuild User Guide*. # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html # @return [String] # # @!attribute [rw] artifacts_override # An array of `ProjectArtifacts` objects that contains information # about the build output artifact overrides for the build project. # @return [Types::ProjectArtifacts] # # @!attribute [rw] secondary_artifacts_override # An array of `ProjectArtifacts` objects that override the secondary # artifacts defined in the batch build project. # @return [Array<Types::ProjectArtifacts>] # # @!attribute [rw] environment_variables_override # An array of `EnvironmentVariable` objects that override, or add to, # the environment variables defined in the batch build project. # @return [Array<Types::EnvironmentVariable>] # # @!attribute [rw] source_type_override # The source input type that overrides the source input defined in the # batch build project. # @return [String] # # @!attribute [rw] source_location_override # A location that overrides, for this batch build, the source location # defined in the batch build project. # @return [String] # # @!attribute [rw] source_auth_override # A `SourceAuth` object that overrides the one defined in the batch # build project. This override applies only if the build project's # source is BitBucket or GitHub. # @return [Types::SourceAuth] # # @!attribute [rw] git_clone_depth_override # The user-defined depth of history, with a minimum value of 0, that # overrides, for this batch build only, any previous depth of history # defined in the batch build project. # @return [Integer] # # @!attribute [rw] git_submodules_config_override # A `GitSubmodulesConfig` object that overrides the Git submodules # configuration for this batch build. # @return [Types::GitSubmodulesConfig] # # @!attribute [rw] buildspec_override # A buildspec file declaration that overrides, for this build only, # the latest one already defined in the build project. # # If this value is set, it can be either an inline buildspec # definition, the path to an alternate buildspec file relative to the # value of the built-in `CODEBUILD_SRC_DIR` environment variable, or # the path to an S3 bucket. The bucket must be in the same AWS Region # as the build project. Specify the buildspec file using its ARN (for # example, `arn:aws:s3:::my-codebuild-sample2/buildspec.yml`). If this # value is not provided or is set to an empty string, the source code # must contain a buildspec file in its root directory. For more # information, see [Buildspec File Name and Storage Location][1]. # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-name-storage # @return [String] # # @!attribute [rw] insecure_ssl_override # Enable this flag to override the insecure SSL setting that is # specified in the batch build project. The insecure SSL setting # determines whether to ignore SSL warnings while connecting to the # project source code. This override applies only if the build's # source is GitHub Enterprise. # @return [Boolean] # # @!attribute [rw] report_build_batch_status_override # Set to `true` to report to your source provider the status of a # batch build's start and completion. If you use this option with a # source provider other than GitHub, GitHub Enterprise, or Bitbucket, # an `invalidInputException` is thrown. # # <note markdown="1"> The status of a build triggered by a webhook is always reported to # your source provider. # # </note> # @return [Boolean] # # @!attribute [rw] environment_type_override # A container type for this batch build that overrides the one # specified in the batch build project. # @return [String] # # @!attribute [rw] image_override # The name of an image for this batch build that overrides the one # specified in the batch build project. # @return [String] # # @!attribute [rw] compute_type_override # The name of a compute type for this batch build that overrides the # one specified in the batch build project. # @return [String] # # @!attribute [rw] certificate_override # The name of a certificate for this batch build that overrides the # one specified in the batch build project. # @return [String] # # @!attribute [rw] cache_override # A `ProjectCache` object that specifies cache overrides. # @return [Types::ProjectCache] # # @!attribute [rw] service_role_override # The name of a service role for this batch build that overrides the # one specified in the batch build project. # @return [String] # # @!attribute [rw] privileged_mode_override # Enable this flag to override privileged mode in the batch build # project. # @return [Boolean] # # @!attribute [rw] build_timeout_in_minutes_override # Overrides the build timeout specified in the batch build project. # @return [Integer] # # @!attribute [rw] queued_timeout_in_minutes_override # The number of minutes a batch build is allowed to be queued before # it times out. # @return [Integer] # # @!attribute [rw] encryption_key_override # The AWS Key Management Service (AWS KMS) customer master key (CMK) # that overrides the one specified in the batch build project. The CMK # key encrypts the build output artifacts. # # <note markdown="1"> You can use a cross-account KMS key to encrypt the build output # artifacts if your service role has permission to that key. # # </note> # # You can specify either the Amazon Resource Name (ARN) of the CMK or, # if available, the CMK's alias (using the format # `alias/<alias-name>`). # @return [String] # # @!attribute [rw] idempotency_token # A unique, case sensitive identifier you provide to ensure the # idempotency of the `StartBuildBatch` request. The token is included # in the `StartBuildBatch` request and is valid for five minutes. If # you repeat the `StartBuildBatch` request with the same token, but # change a parameter, AWS CodeBuild returns a parameter mismatch # error. # @return [String] # # @!attribute [rw] logs_config_override # A `LogsConfig` object that override the log settings defined in the # batch build project. # @return [Types::LogsConfig] # # @!attribute [rw] registry_credential_override # A `RegistryCredential` object that overrides credentials for access # to a private registry. # @return [Types::RegistryCredential] # # @!attribute [rw] image_pull_credentials_type_override # The type of credentials AWS CodeBuild uses to pull images in your # batch build. There are two valid values: # # CODEBUILD # # : Specifies that AWS CodeBuild uses its own credentials. This # requires that you modify your ECR repository policy to trust AWS # CodeBuild's service principal. # # SERVICE\_ROLE # # : Specifies that AWS CodeBuild uses your build project's service # role. # # When using a cross-account or private registry image, you must use # `SERVICE_ROLE` credentials. When using an AWS CodeBuild curated # image, you must use `CODEBUILD` credentials. # @return [String] # # @!attribute [rw] build_batch_config_override # A `BuildBatchConfigOverride` object that contains batch build # configuration overrides. # @return [Types::ProjectBuildBatchConfig] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/StartBuildBatchInput AWS API Documentation # class StartBuildBatchInput < Struct.new( :project_name, :secondary_sources_override, :secondary_sources_version_override, :source_version, :artifacts_override, :secondary_artifacts_override, :environment_variables_override, :source_type_override, :source_location_override, :source_auth_override, :git_clone_depth_override, :git_submodules_config_override, :buildspec_override, :insecure_ssl_override, :report_build_batch_status_override, :environment_type_override, :image_override, :compute_type_override, :certificate_override, :cache_override, :service_role_override, :privileged_mode_override, :build_timeout_in_minutes_override, :queued_timeout_in_minutes_override, :encryption_key_override, :idempotency_token, :logs_config_override, :registry_credential_override, :image_pull_credentials_type_override, :build_batch_config_override) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] build_batch # A `BuildBatch` object that contains information about the batch # build. # @return [Types::BuildBatch] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/StartBuildBatchOutput AWS API Documentation # class StartBuildBatchOutput < Struct.new( :build_batch) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass StartBuildInput # data as a hash: # # { # project_name: "NonEmptyString", # required # secondary_sources_override: [ # { # type: "CODECOMMIT", # required, accepts CODECOMMIT, CODEPIPELINE, GITHUB, S3, BITBUCKET, GITHUB_ENTERPRISE, NO_SOURCE # location: "String", # git_clone_depth: 1, # git_submodules_config: { # fetch_submodules: false, # required # }, # buildspec: "String", # auth: { # type: "OAUTH", # required, accepts OAUTH # resource: "String", # }, # report_build_status: false, # build_status_config: { # context: "String", # target_url: "String", # }, # insecure_ssl: false, # source_identifier: "String", # }, # ], # secondary_sources_version_override: [ # { # source_identifier: "String", # required # source_version: "String", # required # }, # ], # source_version: "String", # artifacts_override: { # type: "CODEPIPELINE", # required, accepts CODEPIPELINE, S3, NO_ARTIFACTS # location: "String", # path: "String", # namespace_type: "NONE", # accepts NONE, BUILD_ID # name: "String", # packaging: "NONE", # accepts NONE, ZIP # override_artifact_name: false, # encryption_disabled: false, # artifact_identifier: "String", # }, # secondary_artifacts_override: [ # { # type: "CODEPIPELINE", # required, accepts CODEPIPELINE, S3, NO_ARTIFACTS # location: "String", # path: "String", # namespace_type: "NONE", # accepts NONE, BUILD_ID # name: "String", # packaging: "NONE", # accepts NONE, ZIP # override_artifact_name: false, # encryption_disabled: false, # artifact_identifier: "String", # }, # ], # environment_variables_override: [ # { # name: "NonEmptyString", # required # value: "String", # required # type: "PLAINTEXT", # accepts PLAINTEXT, PARAMETER_STORE, SECRETS_MANAGER # }, # ], # source_type_override: "CODECOMMIT", # accepts CODECOMMIT, CODEPIPELINE, GITHUB, S3, BITBUCKET, GITHUB_ENTERPRISE, NO_SOURCE # source_location_override: "String", # source_auth_override: { # type: "OAUTH", # required, accepts OAUTH # resource: "String", # }, # git_clone_depth_override: 1, # git_submodules_config_override: { # fetch_submodules: false, # required # }, # buildspec_override: "String", # insecure_ssl_override: false, # report_build_status_override: false, # build_status_config_override: { # context: "String", # target_url: "String", # }, # environment_type_override: "WINDOWS_CONTAINER", # accepts WINDOWS_CONTAINER, LINUX_CONTAINER, LINUX_GPU_CONTAINER, ARM_CONTAINER, WINDOWS_SERVER_2019_CONTAINER # image_override: "NonEmptyString", # compute_type_override: "BUILD_GENERAL1_SMALL", # accepts BUILD_GENERAL1_SMALL, BUILD_GENERAL1_MEDIUM, BUILD_GENERAL1_LARGE, BUILD_GENERAL1_2XLARGE # certificate_override: "String", # cache_override: { # type: "NO_CACHE", # required, accepts NO_CACHE, S3, LOCAL # location: "String", # modes: ["LOCAL_DOCKER_LAYER_CACHE"], # accepts LOCAL_DOCKER_LAYER_CACHE, LOCAL_SOURCE_CACHE, LOCAL_CUSTOM_CACHE # }, # service_role_override: "NonEmptyString", # privileged_mode_override: false, # timeout_in_minutes_override: 1, # queued_timeout_in_minutes_override: 1, # encryption_key_override: "NonEmptyString", # idempotency_token: "String", # logs_config_override: { # cloud_watch_logs: { # status: "ENABLED", # required, accepts ENABLED, DISABLED # group_name: "String", # stream_name: "String", # }, # s3_logs: { # status: "ENABLED", # required, accepts ENABLED, DISABLED # location: "String", # encryption_disabled: false, # }, # }, # registry_credential_override: { # credential: "NonEmptyString", # required # credential_provider: "SECRETS_MANAGER", # required, accepts SECRETS_MANAGER # }, # image_pull_credentials_type_override: "CODEBUILD", # accepts CODEBUILD, SERVICE_ROLE # debug_session_enabled: false, # } # # @!attribute [rw] project_name # The name of the AWS CodeBuild build project to start running a # build. # @return [String] # # @!attribute [rw] secondary_sources_override # An array of `ProjectSource` objects. # @return [Array<Types::ProjectSource>] # # @!attribute [rw] secondary_sources_version_override # An array of `ProjectSourceVersion` objects that specify one or more # versions of the project's secondary sources to be used for this # build only. # @return [Array<Types::ProjectSourceVersion>] # # @!attribute [rw] source_version # The version of the build input to be built, for this build only. If # not specified, the latest version is used. If specified, the # contents depends on the source provider: # # AWS CodeCommit # # : The commit ID, branch, or Git tag to use. # # GitHub # # : The commit ID, pull request ID, branch name, or tag name that # corresponds to the version of the source code you want to build. # If a pull request ID is specified, it must use the format # `pr/pull-request-ID` (for example `pr/25`). If a branch name is # specified, the branch's HEAD commit ID is used. If not specified, # the default branch's HEAD commit ID is used. # # Bitbucket # # : The commit ID, branch name, or tag name that corresponds to the # version of the source code you want to build. If a branch name is # specified, the branch's HEAD commit ID is used. If not specified, # the default branch's HEAD commit ID is used. # # Amazon Simple Storage Service (Amazon S3) # # : The version ID of the object that represents the build input ZIP # file to use. # # If `sourceVersion` is specified at the project level, then this # `sourceVersion` (at the build level) takes precedence. # # For more information, see [Source Version Sample with CodeBuild][1] # in the *AWS CodeBuild User Guide*. # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html # @return [String] # # @!attribute [rw] artifacts_override # Build output artifact settings that override, for this build only, # the latest ones already defined in the build project. # @return [Types::ProjectArtifacts] # # @!attribute [rw] secondary_artifacts_override # An array of `ProjectArtifacts` objects. # @return [Array<Types::ProjectArtifacts>] # # @!attribute [rw] environment_variables_override # A set of environment variables that overrides, for this build only, # the latest ones already defined in the build project. # @return [Array<Types::EnvironmentVariable>] # # @!attribute [rw] source_type_override # A source input type, for this build, that overrides the source input # defined in the build project. # @return [String] # # @!attribute [rw] source_location_override # A location that overrides, for this build, the source location for # the one defined in the build project. # @return [String] # # @!attribute [rw] source_auth_override # An authorization type for this build that overrides the one defined # in the build project. This override applies only if the build # project's source is BitBucket or GitHub. # @return [Types::SourceAuth] # # @!attribute [rw] git_clone_depth_override # The user-defined depth of history, with a minimum value of 0, that # overrides, for this build only, any previous depth of history # defined in the build project. # @return [Integer] # # @!attribute [rw] git_submodules_config_override # Information about the Git submodules configuration for this build of # an AWS CodeBuild build project. # @return [Types::GitSubmodulesConfig] # # @!attribute [rw] buildspec_override # A buildspec file declaration that overrides, for this build only, # the latest one already defined in the build project. # # If this value is set, it can be either an inline buildspec # definition, the path to an alternate buildspec file relative to the # value of the built-in `CODEBUILD_SRC_DIR` environment variable, or # the path to an S3 bucket. The bucket must be in the same AWS Region # as the build project. Specify the buildspec file using its ARN (for # example, `arn:aws:s3:::my-codebuild-sample2/buildspec.yml`). If this # value is not provided or is set to an empty string, the source code # must contain a buildspec file in its root directory. For more # information, see [Buildspec File Name and Storage Location][1]. # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-name-storage # @return [String] # # @!attribute [rw] insecure_ssl_override # Enable this flag to override the insecure SSL setting that is # specified in the build project. The insecure SSL setting determines # whether to ignore SSL warnings while connecting to the project # source code. This override applies only if the build's source is # GitHub Enterprise. # @return [Boolean] # # @!attribute [rw] report_build_status_override # Set to true to report to your source provider the status of a # build's start and completion. If you use this option with a source # provider other than GitHub, GitHub Enterprise, or Bitbucket, an # invalidInputException is thrown. # # <note markdown="1"> The status of a build triggered by a webhook is always reported to # your source provider. # # </note> # @return [Boolean] # # @!attribute [rw] build_status_config_override # Contains information that defines how the build project reports the # build status to the source provider. This option is only used when # the source provider is `GITHUB`, `GITHUB_ENTERPRISE`, or # `BITBUCKET`. # @return [Types::BuildStatusConfig] # # @!attribute [rw] environment_type_override # A container type for this build that overrides the one specified in # the build project. # @return [String] # # @!attribute [rw] image_override # The name of an image for this build that overrides the one specified # in the build project. # @return [String] # # @!attribute [rw] compute_type_override # The name of a compute type for this build that overrides the one # specified in the build project. # @return [String] # # @!attribute [rw] certificate_override # The name of a certificate for this build that overrides the one # specified in the build project. # @return [String] # # @!attribute [rw] cache_override # A ProjectCache object specified for this build that overrides the # one defined in the build project. # @return [Types::ProjectCache] # # @!attribute [rw] service_role_override # The name of a service role for this build that overrides the one # specified in the build project. # @return [String] # # @!attribute [rw] privileged_mode_override # Enable this flag to override privileged mode in the build project. # @return [Boolean] # # @!attribute [rw] timeout_in_minutes_override # The number of build timeout minutes, from 5 to 480 (8 hours), that # overrides, for this build only, the latest setting already defined # in the build project. # @return [Integer] # # @!attribute [rw] queued_timeout_in_minutes_override # The number of minutes a build is allowed to be queued before it # times out. # @return [Integer] # # @!attribute [rw] encryption_key_override # The AWS Key Management Service (AWS KMS) customer master key (CMK) # that overrides the one specified in the build project. The CMK key # encrypts the build output artifacts. # # <note markdown="1"> You can use a cross-account KMS key to encrypt the build output # artifacts if your service role has permission to that key. # # </note> # # You can specify either the Amazon Resource Name (ARN) of the CMK or, # if available, the CMK's alias (using the format # `alias/<alias-name>`). # @return [String] # # @!attribute [rw] idempotency_token # A unique, case sensitive identifier you provide to ensure the # idempotency of the StartBuild request. The token is included in the # StartBuild request and is valid for 5 minutes. If you repeat the # StartBuild request with the same token, but change a parameter, AWS # CodeBuild returns a parameter mismatch error. # @return [String] # # @!attribute [rw] logs_config_override # Log settings for this build that override the log settings defined # in the build project. # @return [Types::LogsConfig] # # @!attribute [rw] registry_credential_override # The credentials for access to a private registry. # @return [Types::RegistryCredential] # # @!attribute [rw] image_pull_credentials_type_override # The type of credentials AWS CodeBuild uses to pull images in your # build. There are two valid values: # # CODEBUILD # # : Specifies that AWS CodeBuild uses its own credentials. This # requires that you modify your ECR repository policy to trust AWS # CodeBuild's service principal. # # SERVICE\_ROLE # # : Specifies that AWS CodeBuild uses your build project's service # role. # # When using a cross-account or private registry image, you must use # `SERVICE_ROLE` credentials. When using an AWS CodeBuild curated # image, you must use `CODEBUILD` credentials. # @return [String] # # @!attribute [rw] debug_session_enabled # Specifies if session debugging is enabled for this build. For more # information, see [Viewing a running build in Session Manager][1]. # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/session-manager.html # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/StartBuildInput AWS API Documentation # class StartBuildInput < Struct.new( :project_name, :secondary_sources_override, :secondary_sources_version_override, :source_version, :artifacts_override, :secondary_artifacts_override, :environment_variables_override, :source_type_override, :source_location_override, :source_auth_override, :git_clone_depth_override, :git_submodules_config_override, :buildspec_override, :insecure_ssl_override, :report_build_status_override, :build_status_config_override, :environment_type_override, :image_override, :compute_type_override, :certificate_override, :cache_override, :service_role_override, :privileged_mode_override, :timeout_in_minutes_override, :queued_timeout_in_minutes_override, :encryption_key_override, :idempotency_token, :logs_config_override, :registry_credential_override, :image_pull_credentials_type_override, :debug_session_enabled) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] build # Information about the build to be run. # @return [Types::Build] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/StartBuildOutput AWS API Documentation # class StartBuildOutput < Struct.new( :build) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass StopBuildBatchInput # data as a hash: # # { # id: "NonEmptyString", # required # } # # @!attribute [rw] id # The identifier of the batch build to stop. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/StopBuildBatchInput AWS API Documentation # class StopBuildBatchInput < Struct.new( :id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] build_batch # Contains information about a batch build. # @return [Types::BuildBatch] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/StopBuildBatchOutput AWS API Documentation # class StopBuildBatchOutput < Struct.new( :build_batch) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass StopBuildInput # data as a hash: # # { # id: "NonEmptyString", # required # } # # @!attribute [rw] id # The ID of the build. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/StopBuildInput AWS API Documentation # class StopBuildInput < Struct.new( :id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] build # Information about the build. # @return [Types::Build] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/StopBuildOutput AWS API Documentation # class StopBuildOutput < Struct.new( :build) SENSITIVE = [] include Aws::Structure end # A tag, consisting of a key and a value. # # This tag is available for use by AWS services that support tags in AWS # CodeBuild. # # @note When making an API call, you may pass Tag # data as a hash: # # { # key: "KeyInput", # value: "ValueInput", # } # # @!attribute [rw] key # The tag's key. # @return [String] # # @!attribute [rw] value # The tag's value. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/Tag AWS API Documentation # class Tag < Struct.new( :key, :value) SENSITIVE = [] include Aws::Structure end # Information about a test case created using a framework such as NUnit # or Cucumber. A test case might be a unit test or a configuration test. # # @!attribute [rw] report_arn # The ARN of the report to which the test case belongs. # @return [String] # # @!attribute [rw] test_raw_data_path # The path to the raw data file that contains the test result. # @return [String] # # @!attribute [rw] prefix # A string that is applied to a series of related test cases. # CodeBuild generates the prefix. The prefix depends on the framework # used to generate the tests. # @return [String] # # @!attribute [rw] name # The name of the test case. # @return [String] # # @!attribute [rw] status # The status returned by the test case after it was run. Valid # statuses are `SUCCEEDED`, `FAILED`, `ERROR`, `SKIPPED`, and # `UNKNOWN`. # @return [String] # # @!attribute [rw] duration_in_nano_seconds # The number of nanoseconds it took to run this test case. # @return [Integer] # # @!attribute [rw] message # A message associated with a test case. For example, an error message # or stack trace. # @return [String] # # @!attribute [rw] expired # The date and time a test case expires. A test case expires 30 days # after it is created. An expired test case is not available to view # in CodeBuild. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/TestCase AWS API Documentation # class TestCase < Struct.new( :report_arn, :test_raw_data_path, :prefix, :name, :status, :duration_in_nano_seconds, :message, :expired) SENSITIVE = [] include Aws::Structure end # A filter used to return specific types of test cases. In order to pass # the filter, the report must meet all of the filter properties. # # @note When making an API call, you may pass TestCaseFilter # data as a hash: # # { # status: "String", # keyword: "String", # } # # @!attribute [rw] status # The status used to filter test cases. A `TestCaseFilter` can have # one status. Valid values are: # # * `SUCCEEDED` # # * `FAILED` # # * `ERROR` # # * `SKIPPED` # # * `UNKNOWN` # @return [String] # # @!attribute [rw] keyword # A keyword that is used to filter on the `name` or the `prefix` of # the test cases. Only test cases where the keyword is a substring of # the `name` or the `prefix` will be returned. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/TestCaseFilter AWS API Documentation # class TestCaseFilter < Struct.new( :status, :keyword) SENSITIVE = [] include Aws::Structure end # Information about a test report. # # @!attribute [rw] total # The number of test cases in this `TestReportSummary`. The total # includes truncated test cases. # @return [Integer] # # @!attribute [rw] status_counts # A map that contains the number of each type of status returned by # the test results in this `TestReportSummary`. # @return [Hash<String,Integer>] # # @!attribute [rw] duration_in_nano_seconds # The number of nanoseconds it took to run all of the test cases in # this report. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/TestReportSummary AWS API Documentation # class TestReportSummary < Struct.new( :total, :status_counts, :duration_in_nano_seconds) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass UpdateProjectInput # data as a hash: # # { # name: "NonEmptyString", # required # description: "ProjectDescription", # source: { # type: "CODECOMMIT", # required, accepts CODECOMMIT, CODEPIPELINE, GITHUB, S3, BITBUCKET, GITHUB_ENTERPRISE, NO_SOURCE # location: "String", # git_clone_depth: 1, # git_submodules_config: { # fetch_submodules: false, # required # }, # buildspec: "String", # auth: { # type: "OAUTH", # required, accepts OAUTH # resource: "String", # }, # report_build_status: false, # build_status_config: { # context: "String", # target_url: "String", # }, # insecure_ssl: false, # source_identifier: "String", # }, # secondary_sources: [ # { # type: "CODECOMMIT", # required, accepts CODECOMMIT, CODEPIPELINE, GITHUB, S3, BITBUCKET, GITHUB_ENTERPRISE, NO_SOURCE # location: "String", # git_clone_depth: 1, # git_submodules_config: { # fetch_submodules: false, # required # }, # buildspec: "String", # auth: { # type: "OAUTH", # required, accepts OAUTH # resource: "String", # }, # report_build_status: false, # build_status_config: { # context: "String", # target_url: "String", # }, # insecure_ssl: false, # source_identifier: "String", # }, # ], # source_version: "String", # secondary_source_versions: [ # { # source_identifier: "String", # required # source_version: "String", # required # }, # ], # artifacts: { # type: "CODEPIPELINE", # required, accepts CODEPIPELINE, S3, NO_ARTIFACTS # location: "String", # path: "String", # namespace_type: "NONE", # accepts NONE, BUILD_ID # name: "String", # packaging: "NONE", # accepts NONE, ZIP # override_artifact_name: false, # encryption_disabled: false, # artifact_identifier: "String", # }, # secondary_artifacts: [ # { # type: "CODEPIPELINE", # required, accepts CODEPIPELINE, S3, NO_ARTIFACTS # location: "String", # path: "String", # namespace_type: "NONE", # accepts NONE, BUILD_ID # name: "String", # packaging: "NONE", # accepts NONE, ZIP # override_artifact_name: false, # encryption_disabled: false, # artifact_identifier: "String", # }, # ], # cache: { # type: "NO_CACHE", # required, accepts NO_CACHE, S3, LOCAL # location: "String", # modes: ["LOCAL_DOCKER_LAYER_CACHE"], # accepts LOCAL_DOCKER_LAYER_CACHE, LOCAL_SOURCE_CACHE, LOCAL_CUSTOM_CACHE # }, # environment: { # type: "WINDOWS_CONTAINER", # required, accepts WINDOWS_CONTAINER, LINUX_CONTAINER, LINUX_GPU_CONTAINER, ARM_CONTAINER, WINDOWS_SERVER_2019_CONTAINER # image: "NonEmptyString", # required # compute_type: "BUILD_GENERAL1_SMALL", # required, accepts BUILD_GENERAL1_SMALL, BUILD_GENERAL1_MEDIUM, BUILD_GENERAL1_LARGE, BUILD_GENERAL1_2XLARGE # environment_variables: [ # { # name: "NonEmptyString", # required # value: "String", # required # type: "PLAINTEXT", # accepts PLAINTEXT, PARAMETER_STORE, SECRETS_MANAGER # }, # ], # privileged_mode: false, # certificate: "String", # registry_credential: { # credential: "NonEmptyString", # required # credential_provider: "SECRETS_MANAGER", # required, accepts SECRETS_MANAGER # }, # image_pull_credentials_type: "CODEBUILD", # accepts CODEBUILD, SERVICE_ROLE # }, # service_role: "NonEmptyString", # timeout_in_minutes: 1, # queued_timeout_in_minutes: 1, # encryption_key: "NonEmptyString", # tags: [ # { # key: "KeyInput", # value: "ValueInput", # }, # ], # vpc_config: { # vpc_id: "NonEmptyString", # subnets: ["NonEmptyString"], # security_group_ids: ["NonEmptyString"], # }, # badge_enabled: false, # logs_config: { # cloud_watch_logs: { # status: "ENABLED", # required, accepts ENABLED, DISABLED # group_name: "String", # stream_name: "String", # }, # s3_logs: { # status: "ENABLED", # required, accepts ENABLED, DISABLED # location: "String", # encryption_disabled: false, # }, # }, # file_system_locations: [ # { # type: "EFS", # accepts EFS # location: "String", # mount_point: "String", # identifier: "String", # mount_options: "String", # }, # ], # build_batch_config: { # service_role: "NonEmptyString", # combine_artifacts: false, # restrictions: { # maximum_builds_allowed: 1, # compute_types_allowed: ["NonEmptyString"], # }, # timeout_in_mins: 1, # }, # } # # @!attribute [rw] name # The name of the build project. # # <note markdown="1"> You cannot change a build project's name. # # </note> # @return [String] # # @!attribute [rw] description # A new or replacement description of the build project. # @return [String] # # @!attribute [rw] source # Information to be changed about the build input source code for the # build project. # @return [Types::ProjectSource] # # @!attribute [rw] secondary_sources # An array of `ProjectSource` objects. # @return [Array<Types::ProjectSource>] # # @!attribute [rw] source_version # A version of the build input to be built for this project. If not # specified, the latest version is used. If specified, it must be one # of: # # * For AWS CodeCommit: the commit ID, branch, or Git tag to use. # # * For GitHub: the commit ID, pull request ID, branch name, or tag # name that corresponds to the version of the source code you want # to build. If a pull request ID is specified, it must use the # format `pr/pull-request-ID` (for example `pr/25`). If a branch # name is specified, the branch's HEAD commit ID is used. If not # specified, the default branch's HEAD commit ID is used. # # * For Bitbucket: the commit ID, branch name, or tag name that # corresponds to the version of the source code you want to build. # If a branch name is specified, the branch's HEAD commit ID is # used. If not specified, the default branch's HEAD commit ID is # used. # # * For Amazon Simple Storage Service (Amazon S3): the version ID of # the object that represents the build input ZIP file to use. # # If `sourceVersion` is specified at the build level, then that # version takes precedence over this `sourceVersion` (at the project # level). # # For more information, see [Source Version Sample with CodeBuild][1] # in the *AWS CodeBuild User Guide*. # # # # [1]: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html # @return [String] # # @!attribute [rw] secondary_source_versions # An array of `ProjectSourceVersion` objects. If # `secondarySourceVersions` is specified at the build level, then they # take over these `secondarySourceVersions` (at the project level). # @return [Array<Types::ProjectSourceVersion>] # # @!attribute [rw] artifacts # Information to be changed about the build output artifacts for the # build project. # @return [Types::ProjectArtifacts] # # @!attribute [rw] secondary_artifacts # An array of `ProjectSource` objects. # @return [Array<Types::ProjectArtifacts>] # # @!attribute [rw] cache # Stores recently used information so that it can be quickly accessed # at a later time. # @return [Types::ProjectCache] # # @!attribute [rw] environment # Information to be changed about the build environment for the build # project. # @return [Types::ProjectEnvironment] # # @!attribute [rw] service_role # The replacement ARN of the AWS Identity and Access Management (IAM) # role that enables AWS CodeBuild to interact with dependent AWS # services on behalf of the AWS account. # @return [String] # # @!attribute [rw] timeout_in_minutes # The replacement value in minutes, from 5 to 480 (8 hours), for AWS # CodeBuild to wait before timing out any related build that did not # get marked as completed. # @return [Integer] # # @!attribute [rw] queued_timeout_in_minutes # The number of minutes a build is allowed to be queued before it # times out. # @return [Integer] # # @!attribute [rw] encryption_key # The AWS Key Management Service (AWS KMS) customer master key (CMK) # to be used for encrypting the build output artifacts. # # <note markdown="1"> You can use a cross-account KMS key to encrypt the build output # artifacts if your service role has permission to that key. # # </note> # # You can specify either the Amazon Resource Name (ARN) of the CMK or, # if available, the CMK's alias (using the format # `alias/<alias-name>`). # @return [String] # # @!attribute [rw] tags # An updated list of tag key and value pairs associated with this # build project. # # These tags are available for use by AWS services that support AWS # CodeBuild build project tags. # @return [Array<Types::Tag>] # # @!attribute [rw] vpc_config # VpcConfig enables AWS CodeBuild to access resources in an Amazon # VPC. # @return [Types::VpcConfig] # # @!attribute [rw] badge_enabled # Set this to true to generate a publicly accessible URL for your # project's build badge. # @return [Boolean] # # @!attribute [rw] logs_config # Information about logs for the build project. A project can create # logs in Amazon CloudWatch Logs, logs in an S3 bucket, or both. # @return [Types::LogsConfig] # # @!attribute [rw] file_system_locations # An array of `ProjectFileSystemLocation` objects for a CodeBuild # build project. A `ProjectFileSystemLocation` object specifies the # `identifier`, `location`, `mountOptions`, `mountPoint`, and `type` # of a file system created using Amazon Elastic File System. # @return [Array<Types::ProjectFileSystemLocation>] # # @!attribute [rw] build_batch_config # Contains configuration information about a batch build project. # @return [Types::ProjectBuildBatchConfig] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/UpdateProjectInput AWS API Documentation # class UpdateProjectInput < Struct.new( :name, :description, :source, :secondary_sources, :source_version, :secondary_source_versions, :artifacts, :secondary_artifacts, :cache, :environment, :service_role, :timeout_in_minutes, :queued_timeout_in_minutes, :encryption_key, :tags, :vpc_config, :badge_enabled, :logs_config, :file_system_locations, :build_batch_config) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] project # Information about the build project that was changed. # @return [Types::Project] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/UpdateProjectOutput AWS API Documentation # class UpdateProjectOutput < Struct.new( :project) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass UpdateReportGroupInput # data as a hash: # # { # arn: "NonEmptyString", # required # export_config: { # export_config_type: "S3", # accepts S3, NO_EXPORT # s3_destination: { # bucket: "NonEmptyString", # path: "String", # packaging: "ZIP", # accepts ZIP, NONE # encryption_key: "NonEmptyString", # encryption_disabled: false, # }, # }, # tags: [ # { # key: "KeyInput", # value: "ValueInput", # }, # ], # } # # @!attribute [rw] arn # The ARN of the report group to update. # @return [String] # # @!attribute [rw] export_config # Used to specify an updated export type. Valid values are: # # * `S3`\: The report results are exported to an S3 bucket. # # * `NO_EXPORT`\: The report results are not exported. # @return [Types::ReportExportConfig] # # @!attribute [rw] tags # An updated list of tag key and value pairs associated with this # report group. # # These tags are available for use by AWS services that support AWS # CodeBuild report group tags. # @return [Array<Types::Tag>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/UpdateReportGroupInput AWS API Documentation # class UpdateReportGroupInput < Struct.new( :arn, :export_config, :tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] report_group # Information about the updated report group. # @return [Types::ReportGroup] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/UpdateReportGroupOutput AWS API Documentation # class UpdateReportGroupOutput < Struct.new( :report_group) SENSITIVE = [] include Aws::Structure end # @note When making an API call, you may pass UpdateWebhookInput # data as a hash: # # { # project_name: "ProjectName", # required # branch_filter: "String", # rotate_secret: false, # filter_groups: [ # [ # { # type: "EVENT", # required, accepts EVENT, BASE_REF, HEAD_REF, ACTOR_ACCOUNT_ID, FILE_PATH, COMMIT_MESSAGE # pattern: "String", # required # exclude_matched_pattern: false, # }, # ], # ], # build_type: "BUILD", # accepts BUILD, BUILD_BATCH # } # # @!attribute [rw] project_name # The name of the AWS CodeBuild project. # @return [String] # # @!attribute [rw] branch_filter # A regular expression used to determine which repository branches are # built when a webhook is triggered. If the name of a branch matches # the regular expression, then it is built. If `branchFilter` is # empty, then all branches are built. # # <note markdown="1"> It is recommended that you use `filterGroups` instead of # `branchFilter`. # # </note> # @return [String] # # @!attribute [rw] rotate_secret # A boolean value that specifies whether the associated GitHub # repository's secret token should be updated. If you use Bitbucket # for your repository, `rotateSecret` is ignored. # @return [Boolean] # # @!attribute [rw] filter_groups # An array of arrays of `WebhookFilter` objects used to determine if a # webhook event can trigger a build. A filter group must contain at # least one `EVENT` `WebhookFilter`. # @return [Array<Array<Types::WebhookFilter>>] # # @!attribute [rw] build_type # Specifies the type of build this webhook will trigger. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/UpdateWebhookInput AWS API Documentation # class UpdateWebhookInput < Struct.new( :project_name, :branch_filter, :rotate_secret, :filter_groups, :build_type) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] webhook # Information about a repository's webhook that is associated with a # project in AWS CodeBuild. # @return [Types::Webhook] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/UpdateWebhookOutput AWS API Documentation # class UpdateWebhookOutput < Struct.new( :webhook) SENSITIVE = [] include Aws::Structure end # Information about the VPC configuration that AWS CodeBuild accesses. # # @note When making an API call, you may pass VpcConfig # data as a hash: # # { # vpc_id: "NonEmptyString", # subnets: ["NonEmptyString"], # security_group_ids: ["NonEmptyString"], # } # # @!attribute [rw] vpc_id # The ID of the Amazon VPC. # @return [String] # # @!attribute [rw] subnets # A list of one or more subnet IDs in your Amazon VPC. # @return [Array<String>] # # @!attribute [rw] security_group_ids # A list of one or more security groups IDs in your Amazon VPC. # @return [Array<String>] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/VpcConfig AWS API Documentation # class VpcConfig < Struct.new( :vpc_id, :subnets, :security_group_ids) SENSITIVE = [] include Aws::Structure end # Information about a webhook that connects repository events to a build # project in AWS CodeBuild. # # @!attribute [rw] url # The URL to the webhook. # @return [String] # # @!attribute [rw] payload_url # The AWS CodeBuild endpoint where webhook events are sent. # @return [String] # # @!attribute [rw] secret # The secret token of the associated repository. # # <note markdown="1"> A Bitbucket webhook does not support `secret`. # # </note> # @return [String] # # @!attribute [rw] branch_filter # A regular expression used to determine which repository branches are # built when a webhook is triggered. If the name of a branch matches # the regular expression, then it is built. If `branchFilter` is # empty, then all branches are built. # # <note markdown="1"> It is recommended that you use `filterGroups` instead of # `branchFilter`. # # </note> # @return [String] # # @!attribute [rw] filter_groups # An array of arrays of `WebhookFilter` objects used to determine # which webhooks are triggered. At least one `WebhookFilter` in the # array must specify `EVENT` as its `type`. # # For a build to be triggered, at least one filter group in the # `filterGroups` array must pass. For a filter group to pass, each of # its filters must pass. # @return [Array<Array<Types::WebhookFilter>>] # # @!attribute [rw] build_type # Specifies the type of build this webhook will trigger. # @return [String] # # @!attribute [rw] last_modified_secret # A timestamp that indicates the last time a repository's secret # token was modified. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/Webhook AWS API Documentation # class Webhook < Struct.new( :url, :payload_url, :secret, :branch_filter, :filter_groups, :build_type, :last_modified_secret) SENSITIVE = [] include Aws::Structure end # A filter used to determine which webhooks trigger a build. # # @note When making an API call, you may pass WebhookFilter # data as a hash: # # { # type: "EVENT", # required, accepts EVENT, BASE_REF, HEAD_REF, ACTOR_ACCOUNT_ID, FILE_PATH, COMMIT_MESSAGE # pattern: "String", # required # exclude_matched_pattern: false, # } # # @!attribute [rw] type # The type of webhook filter. There are six webhook filter types: # `EVENT`, `ACTOR_ACCOUNT_ID`, `HEAD_REF`, `BASE_REF`, `FILE_PATH`, # and `COMMIT_MESSAGE`. # # EVENT # # : A webhook event triggers a build when the provided `pattern` # matches one of five event types: `PUSH`, `PULL_REQUEST_CREATED`, # `PULL_REQUEST_UPDATED`, `PULL_REQUEST_REOPENED`, and # `PULL_REQUEST_MERGED`. The `EVENT` patterns are specified as a # comma-separated string. For example, `PUSH, PULL_REQUEST_CREATED, # PULL_REQUEST_UPDATED` filters all push, pull request created, and # pull request updated events. # # <note markdown="1"> The `PULL_REQUEST_REOPENED` works with GitHub and GitHub # Enterprise only. # # </note> # # ACTOR\_ACCOUNT\_ID # # : A webhook event triggers a build when a GitHub, GitHub Enterprise, # or Bitbucket account ID matches the regular expression `pattern`. # # HEAD\_REF # # : A webhook event triggers a build when the head reference matches # the regular expression `pattern`. For example, # `refs/heads/branch-name` and `refs/tags/tag-name`. # # Works with GitHub and GitHub Enterprise push, GitHub and GitHub # Enterprise pull request, Bitbucket push, and Bitbucket pull # request events. # # BASE\_REF # # : A webhook event triggers a build when the base reference matches # the regular expression `pattern`. For example, # `refs/heads/branch-name`. # # <note markdown="1"> Works with pull request events only. # # </note> # # FILE\_PATH # # : A webhook triggers a build when the path of a changed file matches # the regular expression `pattern`. # # <note markdown="1"> Works with GitHub and Bitbucket events push and pull requests # events. Also works with GitHub Enterprise push events, but does # not work with GitHub Enterprise pull request events. # # </note> # # COMMIT\_MESSAGE # # : A webhook triggers a build when the head commit message matches # the regular expression `pattern`. # # <note markdown="1"> Works with GitHub and Bitbucket events push and pull requests # events. Also works with GitHub Enterprise push events, but does # not work with GitHub Enterprise pull request events. # # </note> # @return [String] # # @!attribute [rw] pattern # For a `WebHookFilter` that uses `EVENT` type, a comma-separated # string that specifies one or more events. For example, the webhook # filter `PUSH, PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED` allows all # push, pull request created, and pull request updated events to # trigger a build. # # For a `WebHookFilter` that uses any of the other filter types, a # regular expression pattern. For example, a `WebHookFilter` that uses # `HEAD_REF` for its `type` and the pattern `^refs/heads/` triggers a # build when the head reference is a branch with a reference name # `refs/heads/branch-name`. # @return [String] # # @!attribute [rw] exclude_matched_pattern # Used to indicate that the `pattern` determines which webhook events # do not trigger a build. If true, then a webhook event that does not # match the `pattern` triggers a build. If false, then a webhook event # that matches the `pattern` triggers a build. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/codebuild-2016-10-06/WebhookFilter AWS API Documentation # class WebhookFilter < Struct.new( :type, :pattern, :exclude_matched_pattern) SENSITIVE = [] include Aws::Structure end end end