Class: Aws::CodeBuild::Client

Inherits:
Seahorse::Client::Base show all
Includes:
Aws::ClientStubs
Defined in:
gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb

Overview

An API client for CodeBuild. To construct a client, you need to configure a :region and :credentials.

client = Aws::CodeBuild::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

For details on configuring region and credentials see the developer guide.

See #initialize for a full list of supported configuration options.

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

API Operations collapse

Instance Method Summary collapse

Methods included from Aws::ClientStubs

#api_requests, #stub_data, #stub_responses

Methods inherited from Seahorse::Client::Base

add_plugin, api, clear_plugins, define, new, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(options) ⇒ Client

Returns a new instance of Client.

Parameters:

  • options (Hash)

Options Hash (options):

  • :credentials (required, Aws::CredentialProvider)

    Your AWS credentials. This can be an instance of any one of the following classes:

    • Aws::Credentials - Used for configuring static, non-refreshing credentials.

    • Aws::InstanceProfileCredentials - Used for loading credentials from an EC2 IMDS on an EC2 instance.

    • Aws::SharedCredentials - Used for loading credentials from a shared file, such as ~/.aws/config.

    • Aws::AssumeRoleCredentials - Used when you need to assume a role.

    When :credentials are not configured directly, the following locations will be searched for credentials:

    • Aws.config[:credentials]
    • The :access_key_id, :secret_access_key, and :session_token options.
    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
    • ~/.aws/credentials
    • ~/.aws/config
    • EC2 IMDS instance profile - When used by default, the timeouts are very aggressive. Construct and pass an instance of Aws::InstanceProfileCredentails to enable retries and extended timeouts.
  • :region (required, String)

    The AWS region to connect to. The configured :region is used to determine the service :endpoint. When not passed, a default :region is searched for in the following locations:

    • Aws.config[:region]
    • ENV['AWS_REGION']
    • ENV['AMAZON_REGION']
    • ENV['AWS_DEFAULT_REGION']
    • ~/.aws/credentials
    • ~/.aws/config
  • :access_key_id (String)
  • :active_endpoint_cache (Boolean) — default: false

    When set to true, a thread polling for endpoints will be running in the background every 60 secs (default). Defaults to false.

  • :adaptive_retry_wait_to_fill (Boolean) — default: true

    Used only in adaptive retry mode. When true, the request will sleep until there is sufficent client side capacity to retry the request. When false, the request will raise a RetryCapacityNotAvailableError and will not retry instead of sleeping.

  • :client_side_monitoring (Boolean) — default: false

    When true, client-side metrics will be collected for all API requests from this client.

  • :client_side_monitoring_client_id (String) — default: ""

    Allows you to provide an identifier for this client which will be attached to all generated client side metrics. Defaults to an empty string.

  • :client_side_monitoring_host (String) — default: "127.0.0.1"

    Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_port (Integer) — default: 31000

    Required for publishing client metrics. The port that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher) — default: Aws::ClientSideMonitoring::Publisher

    Allows you to provide a custom client-side monitoring publisher class. By default, will use the Client Side Monitoring Agent Publisher.

  • :convert_params (Boolean) — default: true

    When true, an attempt is made to coerce request parameters into the required types.

  • :correct_clock_skew (Boolean) — default: true

    Used only in standard and adaptive retry modes. Specifies whether to apply a clock skew correction and retry requests with skewed client clocks.

  • :disable_host_prefix_injection (Boolean) — default: false

    Set to true to disable SDK automatically adding host prefix to default service endpoint when available.

  • :endpoint (String)

    The client endpoint is normally constructed from the :region option. You should only configure an :endpoint when connecting to test or custom endpoints. This should be a valid HTTP(S) URI.

  • :endpoint_cache_max_entries (Integer) — default: 1000

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000.

  • :endpoint_cache_max_threads (Integer) — default: 10

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.

  • :endpoint_cache_poll_interval (Integer) — default: 60

    When :endpoint_discovery and :active_endpoint_cache is enabled, Use this option to config the time interval in seconds for making requests fetching endpoints information. Defaults to 60 sec.

  • :endpoint_discovery (Boolean) — default: false

    When set to true, endpoint discovery will be enabled for operations when available.

  • :log_formatter (Aws::Log::Formatter) — default: Aws::Log::Formatter.default

    The log formatter.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the :logger at.

  • :logger (Logger)

    The Logger instance to send log messages to. If this option is not set, logging will be disabled.

  • :max_attempts (Integer) — default: 3

    An integer representing the maximum number attempts that will be made for a single request, including the initial attempt. For example, setting this value to 5 will result in a request being retried up to 4 times. Used in standard and adaptive retry modes.

  • :profile (String) — default: "default"

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, 'default' is used.

  • :retry_backoff (Proc)

    A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay. This option is only used in the legacy retry mode.

  • :retry_base_delay (Float) — default: 0.3

    The base delay in seconds used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_jitter (Symbol) — default: :none

    A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number. This option is only used in the legacy retry mode.

    @see https://www.awsarchitectureblog.com/2015/03/backoff.html

  • :retry_limit (Integer) — default: 3

    The maximum number of times to retry failed requests. Only ~ 500 level server errors and certain ~ 400 level client errors are retried. Generally, these are throttling errors, data checksum errors, networking errors, timeout errors, auth errors, endpoint discovery, and errors from expired credentials. This option is only used in the legacy retry mode.

  • :retry_max_delay (Integer) — default: 0

    The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_mode (String) — default: "legacy"

    Specifies which retry algorithm to use. Values are:

    • legacy - The pre-existing retry behavior. This is default value if no retry mode is provided.

    • standard - A standardized set of retry rules across the AWS SDKs. This includes support for retry quotas, which limit the number of unsuccessful retries a client can make.

    • adaptive - An experimental retry mode that includes all the functionality of standard mode along with automatic client side throttling. This is a provisional mode that may change behavior in the future.

  • :secret_access_key (String)
  • :session_token (String)
  • :simple_json (Boolean) — default: false

    Disables request parameter conversion, validation, and formatting. Also disable response data type conversions. This option is useful when you want to ensure the highest level of performance by avoiding overhead of walking request parameters and response data structures.

    When :simple_json is enabled, the request parameters hash must be formatted exactly as the DynamoDB API expects.

  • :stub_responses (Boolean) — default: false

    Causes the client to return stubbed responses. By default fake responses are generated and returned. You can specify the response data to return or errors to raise by calling Aws::ClientStubs#stub_responses. See Aws::ClientStubs for more information.

    Please note When response stubbing is enabled, no HTTP requests are made, and retries are disabled.

  • :validate_params (Boolean) — default: true

    When true, request parameters are validated before sending the request.

  • :http_proxy (URI::HTTP, String)

    A proxy to send requests through. Formatted like 'http://proxy.com:123'.

  • :http_open_timeout (Float) — default: 15

    The number of seconds to wait when opening a HTTP session before raising a Timeout::Error.

  • :http_read_timeout (Integer) — default: 60

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_idle_timeout (Float) — default: 5

    The number of seconds a connection is allowed to sit idle before it is considered stale. Stale connections are closed and removed from the pool before making a request.

  • :http_continue_timeout (Float) — default: 1

    The number of seconds to wait for a 100-continue response before sending the request body. This option has no effect unless the request has "Expect" header set to "100-continue". Defaults to nil which disables this behaviour. This value can safely be set per request on the session.

  • :http_wire_trace (Boolean) — default: false

    When true, HTTP debug output will be sent to the :logger.

  • :ssl_verify_peer (Boolean) — default: true

    When true, SSL peer certificates are verified when establishing a connection.

  • :ssl_ca_bundle (String)

    Full path to the SSL certificate authority bundle file that should be used when verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.

  • :ssl_ca_directory (String)

    Full path of the directory that contains the unbundled SSL certificate authority files for verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.



319
320
321
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 319

def initialize(*args)
  super
end

Instance Method Details

#batch_delete_builds(params = {}) ⇒ Types::BatchDeleteBuildsOutput

Deletes one or more builds.

Examples:

Request syntax with placeholder values


resp = client.batch_delete_builds({
  ids: ["NonEmptyString"], # required
})

Response structure


resp.builds_deleted #=> Array
resp.builds_deleted[0] #=> String
resp.builds_not_deleted #=> Array
resp.builds_not_deleted[0].id #=> String
resp.builds_not_deleted[0].status_code #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :ids (required, Array<String>)

    The IDs of the builds to delete.

Returns:

See Also:



353
354
355
356
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 353

def batch_delete_builds(params = {}, options = {})
  req = build_request(:batch_delete_builds, params)
  req.send_request(options)
end

#batch_get_builds(params = {}) ⇒ Types::BatchGetBuildsOutput

Gets information about one or more builds.

Examples:

Example: To get information about builds


# The following example gets information about builds with the specified build IDs.

resp = client.batch_get_builds({
  ids: [
    "codebuild-demo-project:9b0ac37f-d19e-4254-9079-f47e9a389eEX", 
    "codebuild-demo-project:b79a46f7-1473-4636-a23f-da9c45c208EX", 
  ], 
})

resp.to_h outputs the following:
{
  builds: [
    {
      arn: "arn:aws:codebuild:us-east-1:123456789012:build/codebuild-demo-project:9b0ac37f-d19e-4254-9079-f47e9a389eEX", 
      artifacts: {
        location: "arn:aws:s3:::codebuild-123456789012-output-bucket/codebuild-demo-project", 
      }, 
      build_complete: true, 
      build_status: "SUCCEEDED", 
      current_phase: "COMPLETED", 
      end_time: Time.parse(1479832474.764), 
      environment: {
        type: "LINUX_CONTAINER", 
        compute_type: "BUILD_GENERAL1_SMALL", 
        environment_variables: [
        ], 
        image: "aws/codebuild/java:openjdk-8", 
        privileged_mode: false, 
      }, 
      id: "codebuild-demo-project:9b0ac37f-d19e-4254-9079-f47e9a389eEX", 
      initiator: "MyDemoUser", 
      logs: {
        deep_link: "https://console.aws.amazon.com/cloudwatch/home?region=us-east-1#logEvent:group=/aws/codebuild/codebuild-demo-project;stream=9b0ac37f-d19e-4254-9079-f47e9a389eEX", 
        group_name: "/aws/codebuild/codebuild-demo-project", 
        stream_name: "9b0ac37f-d19e-4254-9079-f47e9a389eEX", 
      }, 
      phases: [
        {
          duration_in_seconds: 0, 
          end_time: Time.parse(1479832342.23), 
          phase_status: "SUCCEEDED", 
          phase_type: "SUBMITTED", 
          start_time: Time.parse(1479832341.854), 
        }, 
        {
          contexts: [
          ], 
          duration_in_seconds: 72, 
          end_time: Time.parse(1479832415.064), 
          phase_status: "SUCCEEDED", 
          phase_type: "PROVISIONING", 
          start_time: Time.parse(1479832342.23), 
        }, 
        {
          contexts: [
          ], 
          duration_in_seconds: 46, 
          end_time: Time.parse(1479832461.261), 
          phase_status: "SUCCEEDED", 
          phase_type: "DOWNLOAD_SOURCE", 
          start_time: Time.parse(1479832415.064), 
        }, 
        {
          contexts: [
          ], 
          duration_in_seconds: 0, 
          end_time: Time.parse(1479832461.354), 
          phase_status: "SUCCEEDED", 
          phase_type: "INSTALL", 
          start_time: Time.parse(1479832461.261), 
        }, 
        {
          contexts: [
          ], 
          duration_in_seconds: 0, 
          end_time: Time.parse(1479832461.448), 
          phase_status: "SUCCEEDED", 
          phase_type: "PRE_BUILD", 
          start_time: Time.parse(1479832461.354), 
        }, 
        {
          contexts: [
          ], 
          duration_in_seconds: 9, 
          end_time: Time.parse(1479832471.115), 
          phase_status: "SUCCEEDED", 
          phase_type: "BUILD", 
          start_time: Time.parse(1479832461.448), 
        }, 
        {
          contexts: [
          ], 
          duration_in_seconds: 0, 
          end_time: Time.parse(1479832471.224), 
          phase_status: "SUCCEEDED", 
          phase_type: "POST_BUILD", 
          start_time: Time.parse(1479832471.115), 
        }, 
        {
          contexts: [
          ], 
          duration_in_seconds: 0, 
          end_time: Time.parse(1479832471.791), 
          phase_status: "SUCCEEDED", 
          phase_type: "UPLOAD_ARTIFACTS", 
          start_time: Time.parse(1479832471.224), 
        }, 
        {
          contexts: [
          ], 
          duration_in_seconds: 2, 
          end_time: Time.parse(1479832474.764), 
          phase_status: "SUCCEEDED", 
          phase_type: "FINALIZING", 
          start_time: Time.parse(1479832471.791), 
        }, 
        {
          phase_type: "COMPLETED", 
          start_time: Time.parse(1479832474.764), 
        }, 
      ], 
      project_name: "codebuild-demo-project", 
      source: {
        type: "S3", 
        buildspec: "", 
        location: "arn:aws:s3:::codebuild-123456789012-input-bucket/MessageUtil.zip", 
      }, 
      start_time: Time.parse(1479832341.854), 
      timeout_in_minutes: 60, 
    }, 
    {
      arn: "arn:aws:codebuild:us-east-1:123456789012:build/codebuild-demo-project:b79a46f7-1473-4636-a23f-da9c45c208EX", 
      artifacts: {
        location: "arn:aws:s3:::codebuild-123456789012-output-bucket/codebuild-demo-project", 
      }, 
      build_complete: true, 
      build_status: "SUCCEEDED", 
      current_phase: "COMPLETED", 
      end_time: Time.parse(1479401214.239), 
      environment: {
        type: "LINUX_CONTAINER", 
        compute_type: "BUILD_GENERAL1_SMALL", 
        environment_variables: [
        ], 
        image: "aws/codebuild/java:openjdk-8", 
        privileged_mode: false, 
      }, 
      id: "codebuild-demo-project:b79a46f7-1473-4636-a23f-da9c45c208EX", 
      initiator: "MyDemoUser", 
      logs: {
        deep_link: "https://console.aws.amazon.com/cloudwatch/home?region=us-east-1#logEvent:group=/aws/codebuild/codebuild-demo-project;stream=b79a46f7-1473-4636-a23f-da9c45c208EX", 
        group_name: "/aws/codebuild/codebuild-demo-project", 
        stream_name: "b79a46f7-1473-4636-a23f-da9c45c208EX", 
      }, 
      phases: [
        {
          duration_in_seconds: 0, 
          end_time: Time.parse(1479401082.342), 
          phase_status: "SUCCEEDED", 
          phase_type: "SUBMITTED", 
          start_time: Time.parse(1479401081.869), 
        }, 
        {
          contexts: [
          ], 
          duration_in_seconds: 71, 
          end_time: Time.parse(1479401154.129), 
          phase_status: "SUCCEEDED", 
          phase_type: "PROVISIONING", 
          start_time: Time.parse(1479401082.342), 
        }, 
        {
          contexts: [
          ], 
          duration_in_seconds: 45, 
          end_time: Time.parse(1479401199.136), 
          phase_status: "SUCCEEDED", 
          phase_type: "DOWNLOAD_SOURCE", 
          start_time: Time.parse(1479401154.129), 
        }, 
        {
          contexts: [
          ], 
          duration_in_seconds: 0, 
          end_time: Time.parse(1479401199.236), 
          phase_status: "SUCCEEDED", 
          phase_type: "INSTALL", 
          start_time: Time.parse(1479401199.136), 
        }, 
        {
          contexts: [
          ], 
          duration_in_seconds: 0, 
          end_time: Time.parse(1479401199.345), 
          phase_status: "SUCCEEDED", 
          phase_type: "PRE_BUILD", 
          start_time: Time.parse(1479401199.236), 
        }, 
        {
          contexts: [
          ], 
          duration_in_seconds: 9, 
          end_time: Time.parse(1479401208.68), 
          phase_status: "SUCCEEDED", 
          phase_type: "BUILD", 
          start_time: Time.parse(1479401199.345), 
        }, 
        {
          contexts: [
          ], 
          duration_in_seconds: 0, 
          end_time: Time.parse(1479401208.783), 
          phase_status: "SUCCEEDED", 
          phase_type: "POST_BUILD", 
          start_time: Time.parse(1479401208.68), 
        }, 
        {
          contexts: [
          ], 
          duration_in_seconds: 0, 
          end_time: Time.parse(1479401209.463), 
          phase_status: "SUCCEEDED", 
          phase_type: "UPLOAD_ARTIFACTS", 
          start_time: Time.parse(1479401208.783), 
        }, 
        {
          contexts: [
          ], 
          duration_in_seconds: 4, 
          end_time: Time.parse(1479401214.239), 
          phase_status: "SUCCEEDED", 
          phase_type: "FINALIZING", 
          start_time: Time.parse(1479401209.463), 
        }, 
        {
          phase_type: "COMPLETED", 
          start_time: Time.parse(1479401214.239), 
        }, 
      ], 
      project_name: "codebuild-demo-project", 
      source: {
        type: "S3", 
        location: "arn:aws:s3:::codebuild-123456789012-input-bucket/MessageUtil.zip", 
      }, 
      start_time: Time.parse(1479401081.869), 
      timeout_in_minutes: 60, 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.batch_get_builds({
  ids: ["NonEmptyString"], # required
})

Response structure


resp.builds #=> Array
resp.builds[0].id #=> String
resp.builds[0].arn #=> String
resp.builds[0].build_number #=> Integer
resp.builds[0].start_time #=> Time
resp.builds[0].end_time #=> Time
resp.builds[0].current_phase #=> String
resp.builds[0].build_status #=> String, one of "SUCCEEDED", "FAILED", "FAULT", "TIMED_OUT", "IN_PROGRESS", "STOPPED"
resp.builds[0].source_version #=> String
resp.builds[0].resolved_source_version #=> String
resp.builds[0].project_name #=> String
resp.builds[0].phases #=> Array
resp.builds[0].phases[0].phase_type #=> String, one of "SUBMITTED", "QUEUED", "PROVISIONING", "DOWNLOAD_SOURCE", "INSTALL", "PRE_BUILD", "BUILD", "POST_BUILD", "UPLOAD_ARTIFACTS", "FINALIZING", "COMPLETED"
resp.builds[0].phases[0].phase_status #=> String, one of "SUCCEEDED", "FAILED", "FAULT", "TIMED_OUT", "IN_PROGRESS", "STOPPED"
resp.builds[0].phases[0].start_time #=> Time
resp.builds[0].phases[0].end_time #=> Time
resp.builds[0].phases[0].duration_in_seconds #=> Integer
resp.builds[0].phases[0].contexts #=> Array
resp.builds[0].phases[0].contexts[0].status_code #=> String
resp.builds[0].phases[0].contexts[0].message #=> String
resp.builds[0].source.type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3", "BITBUCKET", "GITHUB_ENTERPRISE", "NO_SOURCE"
resp.builds[0].source.location #=> String
resp.builds[0].source.git_clone_depth #=> Integer
resp.builds[0].source.git_submodules_config.fetch_submodules #=> Boolean
resp.builds[0].source.buildspec #=> String
resp.builds[0].source.auth.type #=> String, one of "OAUTH"
resp.builds[0].source.auth.resource #=> String
resp.builds[0].source.report_build_status #=> Boolean
resp.builds[0].source.build_status_config.context #=> String
resp.builds[0].source.build_status_config.target_url #=> String
resp.builds[0].source.insecure_ssl #=> Boolean
resp.builds[0].source.source_identifier #=> String
resp.builds[0].secondary_sources #=> Array
resp.builds[0].secondary_sources[0].type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3", "BITBUCKET", "GITHUB_ENTERPRISE", "NO_SOURCE"
resp.builds[0].secondary_sources[0].location #=> String
resp.builds[0].secondary_sources[0].git_clone_depth #=> Integer
resp.builds[0].secondary_sources[0].git_submodules_config.fetch_submodules #=> Boolean
resp.builds[0].secondary_sources[0].buildspec #=> String
resp.builds[0].secondary_sources[0].auth.type #=> String, one of "OAUTH"
resp.builds[0].secondary_sources[0].auth.resource #=> String
resp.builds[0].secondary_sources[0].report_build_status #=> Boolean
resp.builds[0].secondary_sources[0].build_status_config.context #=> String
resp.builds[0].secondary_sources[0].build_status_config.target_url #=> String
resp.builds[0].secondary_sources[0].insecure_ssl #=> Boolean
resp.builds[0].secondary_sources[0].source_identifier #=> String
resp.builds[0].secondary_source_versions #=> Array
resp.builds[0].secondary_source_versions[0].source_identifier #=> String
resp.builds[0].secondary_source_versions[0].source_version #=> String
resp.builds[0].artifacts.location #=> String
resp.builds[0].artifacts.sha256sum #=> String
resp.builds[0].artifacts.md5sum #=> String
resp.builds[0].artifacts.override_artifact_name #=> Boolean
resp.builds[0].artifacts.encryption_disabled #=> Boolean
resp.builds[0].artifacts.artifact_identifier #=> String
resp.builds[0].secondary_artifacts #=> Array
resp.builds[0].secondary_artifacts[0].location #=> String
resp.builds[0].secondary_artifacts[0].sha256sum #=> String
resp.builds[0].secondary_artifacts[0].md5sum #=> String
resp.builds[0].secondary_artifacts[0].override_artifact_name #=> Boolean
resp.builds[0].secondary_artifacts[0].encryption_disabled #=> Boolean
resp.builds[0].secondary_artifacts[0].artifact_identifier #=> String
resp.builds[0].cache.type #=> String, one of "NO_CACHE", "S3", "LOCAL"
resp.builds[0].cache.location #=> String
resp.builds[0].cache.modes #=> Array
resp.builds[0].cache.modes[0] #=> String, one of "LOCAL_DOCKER_LAYER_CACHE", "LOCAL_SOURCE_CACHE", "LOCAL_CUSTOM_CACHE"
resp.builds[0].environment.type #=> String, one of "WINDOWS_CONTAINER", "LINUX_CONTAINER", "LINUX_GPU_CONTAINER", "ARM_CONTAINER"
resp.builds[0].environment.image #=> String
resp.builds[0].environment.compute_type #=> String, one of "BUILD_GENERAL1_SMALL", "BUILD_GENERAL1_MEDIUM", "BUILD_GENERAL1_LARGE", "BUILD_GENERAL1_2XLARGE"
resp.builds[0].environment.environment_variables #=> Array
resp.builds[0].environment.environment_variables[0].name #=> String
resp.builds[0].environment.environment_variables[0].value #=> String
resp.builds[0].environment.environment_variables[0].type #=> String, one of "PLAINTEXT", "PARAMETER_STORE", "SECRETS_MANAGER"
resp.builds[0].environment.privileged_mode #=> Boolean
resp.builds[0].environment.certificate #=> String
resp.builds[0].environment.registry_credential.credential #=> String
resp.builds[0].environment.registry_credential.credential_provider #=> String, one of "SECRETS_MANAGER"
resp.builds[0].environment.image_pull_credentials_type #=> String, one of "CODEBUILD", "SERVICE_ROLE"
resp.builds[0].service_role #=> String
resp.builds[0].logs.group_name #=> String
resp.builds[0].logs.stream_name #=> String
resp.builds[0].logs.deep_link #=> String
resp.builds[0].logs.s3_deep_link #=> String
resp.builds[0].logs.cloud_watch_logs_arn #=> String
resp.builds[0].logs.s3_logs_arn #=> String
resp.builds[0].logs.cloud_watch_logs.status #=> String, one of "ENABLED", "DISABLED"
resp.builds[0].logs.cloud_watch_logs.group_name #=> String
resp.builds[0].logs.cloud_watch_logs.stream_name #=> String
resp.builds[0].logs.s3_logs.status #=> String, one of "ENABLED", "DISABLED"
resp.builds[0].logs.s3_logs.location #=> String
resp.builds[0].logs.s3_logs.encryption_disabled #=> Boolean
resp.builds[0].timeout_in_minutes #=> Integer
resp.builds[0].queued_timeout_in_minutes #=> Integer
resp.builds[0].build_complete #=> Boolean
resp.builds[0].initiator #=> String
resp.builds[0].vpc_config.vpc_id #=> String
resp.builds[0].vpc_config.subnets #=> Array
resp.builds[0].vpc_config.subnets[0] #=> String
resp.builds[0].vpc_config.security_group_ids #=> Array
resp.builds[0].vpc_config.security_group_ids[0] #=> String
resp.builds[0].network_interface.subnet_id #=> String
resp.builds[0].network_interface.network_interface_id #=> String
resp.builds[0].encryption_key #=> String
resp.builds[0].exported_environment_variables #=> Array
resp.builds[0].exported_environment_variables[0].name #=> String
resp.builds[0].exported_environment_variables[0].value #=> String
resp.builds[0].report_arns #=> Array
resp.builds[0].report_arns[0] #=> String
resp.builds[0].file_system_locations #=> Array
resp.builds[0].file_system_locations[0].type #=> String, one of "EFS"
resp.builds[0].file_system_locations[0].location #=> String
resp.builds[0].file_system_locations[0].mount_point #=> String
resp.builds[0].file_system_locations[0].identifier #=> String
resp.builds[0].file_system_locations[0].mount_options #=> String
resp.builds_not_found #=> Array
resp.builds_not_found[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :ids (required, Array<String>)

    The IDs of the builds.

Returns:

See Also:



749
750
751
752
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 749

def batch_get_builds(params = {}, options = {})
  req = build_request(:batch_get_builds, params)
  req.send_request(options)
end

#batch_get_projects(params = {}) ⇒ Types::BatchGetProjectsOutput

Gets information about one or more build projects.

Examples:

Request syntax with placeholder values


resp = client.batch_get_projects({
  names: ["NonEmptyString"], # required
})

Response structure


resp.projects #=> Array
resp.projects[0].name #=> String
resp.projects[0].arn #=> String
resp.projects[0].description #=> String
resp.projects[0].source.type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3", "BITBUCKET", "GITHUB_ENTERPRISE", "NO_SOURCE"
resp.projects[0].source.location #=> String
resp.projects[0].source.git_clone_depth #=> Integer
resp.projects[0].source.git_submodules_config.fetch_submodules #=> Boolean
resp.projects[0].source.buildspec #=> String
resp.projects[0].source.auth.type #=> String, one of "OAUTH"
resp.projects[0].source.auth.resource #=> String
resp.projects[0].source.report_build_status #=> Boolean
resp.projects[0].source.build_status_config.context #=> String
resp.projects[0].source.build_status_config.target_url #=> String
resp.projects[0].source.insecure_ssl #=> Boolean
resp.projects[0].source.source_identifier #=> String
resp.projects[0].secondary_sources #=> Array
resp.projects[0].secondary_sources[0].type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3", "BITBUCKET", "GITHUB_ENTERPRISE", "NO_SOURCE"
resp.projects[0].secondary_sources[0].location #=> String
resp.projects[0].secondary_sources[0].git_clone_depth #=> Integer
resp.projects[0].secondary_sources[0].git_submodules_config.fetch_submodules #=> Boolean
resp.projects[0].secondary_sources[0].buildspec #=> String
resp.projects[0].secondary_sources[0].auth.type #=> String, one of "OAUTH"
resp.projects[0].secondary_sources[0].auth.resource #=> String
resp.projects[0].secondary_sources[0].report_build_status #=> Boolean
resp.projects[0].secondary_sources[0].build_status_config.context #=> String
resp.projects[0].secondary_sources[0].build_status_config.target_url #=> String
resp.projects[0].secondary_sources[0].insecure_ssl #=> Boolean
resp.projects[0].secondary_sources[0].source_identifier #=> String
resp.projects[0].source_version #=> String
resp.projects[0].secondary_source_versions #=> Array
resp.projects[0].secondary_source_versions[0].source_identifier #=> String
resp.projects[0].secondary_source_versions[0].source_version #=> String
resp.projects[0].artifacts.type #=> String, one of "CODEPIPELINE", "S3", "NO_ARTIFACTS"
resp.projects[0].artifacts.location #=> String
resp.projects[0].artifacts.path #=> String
resp.projects[0].artifacts.namespace_type #=> String, one of "NONE", "BUILD_ID"
resp.projects[0].artifacts.name #=> String
resp.projects[0].artifacts.packaging #=> String, one of "NONE", "ZIP"
resp.projects[0].artifacts.override_artifact_name #=> Boolean
resp.projects[0].artifacts.encryption_disabled #=> Boolean
resp.projects[0].artifacts.artifact_identifier #=> String
resp.projects[0].secondary_artifacts #=> Array
resp.projects[0].secondary_artifacts[0].type #=> String, one of "CODEPIPELINE", "S3", "NO_ARTIFACTS"
resp.projects[0].secondary_artifacts[0].location #=> String
resp.projects[0].secondary_artifacts[0].path #=> String
resp.projects[0].secondary_artifacts[0].namespace_type #=> String, one of "NONE", "BUILD_ID"
resp.projects[0].secondary_artifacts[0].name #=> String
resp.projects[0].secondary_artifacts[0].packaging #=> String, one of "NONE", "ZIP"
resp.projects[0].secondary_artifacts[0].override_artifact_name #=> Boolean
resp.projects[0].secondary_artifacts[0].encryption_disabled #=> Boolean
resp.projects[0].secondary_artifacts[0].artifact_identifier #=> String
resp.projects[0].cache.type #=> String, one of "NO_CACHE", "S3", "LOCAL"
resp.projects[0].cache.location #=> String
resp.projects[0].cache.modes #=> Array
resp.projects[0].cache.modes[0] #=> String, one of "LOCAL_DOCKER_LAYER_CACHE", "LOCAL_SOURCE_CACHE", "LOCAL_CUSTOM_CACHE"
resp.projects[0].environment.type #=> String, one of "WINDOWS_CONTAINER", "LINUX_CONTAINER", "LINUX_GPU_CONTAINER", "ARM_CONTAINER"
resp.projects[0].environment.image #=> String
resp.projects[0].environment.compute_type #=> String, one of "BUILD_GENERAL1_SMALL", "BUILD_GENERAL1_MEDIUM", "BUILD_GENERAL1_LARGE", "BUILD_GENERAL1_2XLARGE"
resp.projects[0].environment.environment_variables #=> Array
resp.projects[0].environment.environment_variables[0].name #=> String
resp.projects[0].environment.environment_variables[0].value #=> String
resp.projects[0].environment.environment_variables[0].type #=> String, one of "PLAINTEXT", "PARAMETER_STORE", "SECRETS_MANAGER"
resp.projects[0].environment.privileged_mode #=> Boolean
resp.projects[0].environment.certificate #=> String
resp.projects[0].environment.registry_credential.credential #=> String
resp.projects[0].environment.registry_credential.credential_provider #=> String, one of "SECRETS_MANAGER"
resp.projects[0].environment.image_pull_credentials_type #=> String, one of "CODEBUILD", "SERVICE_ROLE"
resp.projects[0].service_role #=> String
resp.projects[0].timeout_in_minutes #=> Integer
resp.projects[0].queued_timeout_in_minutes #=> Integer
resp.projects[0].encryption_key #=> String
resp.projects[0].tags #=> Array
resp.projects[0].tags[0].key #=> String
resp.projects[0].tags[0].value #=> String
resp.projects[0].created #=> Time
resp.projects[0].last_modified #=> Time
resp.projects[0].webhook.url #=> String
resp.projects[0].webhook.payload_url #=> String
resp.projects[0].webhook.secret #=> String
resp.projects[0].webhook.branch_filter #=> String
resp.projects[0].webhook.filter_groups #=> Array
resp.projects[0].webhook.filter_groups[0] #=> Array
resp.projects[0].webhook.filter_groups[0][0].type #=> String, one of "EVENT", "BASE_REF", "HEAD_REF", "ACTOR_ACCOUNT_ID", "FILE_PATH", "COMMIT_MESSAGE"
resp.projects[0].webhook.filter_groups[0][0].pattern #=> String
resp.projects[0].webhook.filter_groups[0][0].exclude_matched_pattern #=> Boolean
resp.projects[0].webhook.last_modified_secret #=> Time
resp.projects[0].vpc_config.vpc_id #=> String
resp.projects[0].vpc_config.subnets #=> Array
resp.projects[0].vpc_config.subnets[0] #=> String
resp.projects[0].vpc_config.security_group_ids #=> Array
resp.projects[0].vpc_config.security_group_ids[0] #=> String
resp.projects[0].badge.badge_enabled #=> Boolean
resp.projects[0].badge.badge_request_url #=> String
resp.projects[0].logs_config.cloud_watch_logs.status #=> String, one of "ENABLED", "DISABLED"
resp.projects[0].logs_config.cloud_watch_logs.group_name #=> String
resp.projects[0].logs_config.cloud_watch_logs.stream_name #=> String
resp.projects[0].logs_config.s3_logs.status #=> String, one of "ENABLED", "DISABLED"
resp.projects[0].logs_config.s3_logs.location #=> String
resp.projects[0].logs_config.s3_logs.encryption_disabled #=> Boolean
resp.projects[0].file_system_locations #=> Array
resp.projects[0].file_system_locations[0].type #=> String, one of "EFS"
resp.projects[0].file_system_locations[0].location #=> String
resp.projects[0].file_system_locations[0].mount_point #=> String
resp.projects[0].file_system_locations[0].identifier #=> String
resp.projects[0].file_system_locations[0].mount_options #=> String
resp.projects_not_found #=> Array
resp.projects_not_found[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :names (required, Array<String>)

    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.

Returns:

See Also:



887
888
889
890
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 887

def batch_get_projects(params = {}, options = {})
  req = build_request(:batch_get_projects, params)
  req.send_request(options)
end

#batch_get_report_groups(params = {}) ⇒ Types::BatchGetReportGroupsOutput

Returns an array of report groups.

Examples:

Request syntax with placeholder values


resp = client.batch_get_report_groups({
  report_group_arns: ["NonEmptyString"], # required
})

Response structure


resp.report_groups #=> Array
resp.report_groups[0].arn #=> String
resp.report_groups[0].name #=> String
resp.report_groups[0].type #=> String, one of "TEST"
resp.report_groups[0].export_config.export_config_type #=> String, one of "S3", "NO_EXPORT"
resp.report_groups[0].export_config.s3_destination.bucket #=> String
resp.report_groups[0].export_config.s3_destination.path #=> String
resp.report_groups[0].export_config.s3_destination.packaging #=> String, one of "ZIP", "NONE"
resp.report_groups[0].export_config.s3_destination.encryption_key #=> String
resp.report_groups[0].export_config.s3_destination.encryption_disabled #=> Boolean
resp.report_groups[0].created #=> Time
resp.report_groups[0].last_modified #=> Time
resp.report_groups[0].tags #=> Array
resp.report_groups[0].tags[0].key #=> String
resp.report_groups[0].tags[0].value #=> String
resp.report_groups_not_found #=> Array
resp.report_groups_not_found[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :report_group_arns (required, Array<String>)

    An array of report group ARNs that identify the report groups to return.

Returns:

See Also:



933
934
935
936
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 933

def batch_get_report_groups(params = {}, options = {})
  req = build_request(:batch_get_report_groups, params)
  req.send_request(options)
end

#batch_get_reports(params = {}) ⇒ Types::BatchGetReportsOutput

Returns an array of reports.

Examples:

Request syntax with placeholder values


resp = client.batch_get_reports({
  report_arns: ["NonEmptyString"], # required
})

Response structure


resp.reports #=> Array
resp.reports[0].arn #=> String
resp.reports[0].type #=> String, one of "TEST"
resp.reports[0].name #=> String
resp.reports[0].report_group_arn #=> String
resp.reports[0].execution_id #=> String
resp.reports[0].status #=> String, one of "GENERATING", "SUCCEEDED", "FAILED", "INCOMPLETE", "DELETING"
resp.reports[0].created #=> Time
resp.reports[0].expired #=> Time
resp.reports[0].export_config.export_config_type #=> String, one of "S3", "NO_EXPORT"
resp.reports[0].export_config.s3_destination.bucket #=> String
resp.reports[0].export_config.s3_destination.path #=> String
resp.reports[0].export_config.s3_destination.packaging #=> String, one of "ZIP", "NONE"
resp.reports[0].export_config.s3_destination.encryption_key #=> String
resp.reports[0].export_config.s3_destination.encryption_disabled #=> Boolean
resp.reports[0].truncated #=> Boolean
resp.reports[0].test_summary.total #=> Integer
resp.reports[0].test_summary.status_counts #=> Hash
resp.reports[0].test_summary.status_counts["String"] #=> Integer
resp.reports[0].test_summary.duration_in_nano_seconds #=> Integer
resp.reports_not_found #=> Array
resp.reports_not_found[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :report_arns (required, Array<String>)

    An array of ARNs that identify the Report objects to return.

Returns:

See Also:



983
984
985
986
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 983

def batch_get_reports(params = {}, options = {})
  req = build_request(:batch_get_reports, params)
  req.send_request(options)
end

#create_project(params = {}) ⇒ Types::CreateProjectOutput

Creates a build project.

Examples:

Request syntax with placeholder values


resp = client.create_project({
  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
    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",
    },
  ],
})

Response structure


resp.project.name #=> String
resp.project.arn #=> String
resp.project.description #=> String
resp.project.source.type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3", "BITBUCKET", "GITHUB_ENTERPRISE", "NO_SOURCE"
resp.project.source.location #=> String
resp.project.source.git_clone_depth #=> Integer
resp.project.source.git_submodules_config.fetch_submodules #=> Boolean
resp.project.source.buildspec #=> String
resp.project.source.auth.type #=> String, one of "OAUTH"
resp.project.source.auth.resource #=> String
resp.project.source.report_build_status #=> Boolean
resp.project.source.build_status_config.context #=> String
resp.project.source.build_status_config.target_url #=> String
resp.project.source.insecure_ssl #=> Boolean
resp.project.source.source_identifier #=> String
resp.project.secondary_sources #=> Array
resp.project.secondary_sources[0].type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3", "BITBUCKET", "GITHUB_ENTERPRISE", "NO_SOURCE"
resp.project.secondary_sources[0].location #=> String
resp.project.secondary_sources[0].git_clone_depth #=> Integer
resp.project.secondary_sources[0].git_submodules_config.fetch_submodules #=> Boolean
resp.project.secondary_sources[0].buildspec #=> String
resp.project.secondary_sources[0].auth.type #=> String, one of "OAUTH"
resp.project.secondary_sources[0].auth.resource #=> String
resp.project.secondary_sources[0].report_build_status #=> Boolean
resp.project.secondary_sources[0].build_status_config.context #=> String
resp.project.secondary_sources[0].build_status_config.target_url #=> String
resp.project.secondary_sources[0].insecure_ssl #=> Boolean
resp.project.secondary_sources[0].source_identifier #=> String
resp.project.source_version #=> String
resp.project.secondary_source_versions #=> Array
resp.project.secondary_source_versions[0].source_identifier #=> String
resp.project.secondary_source_versions[0].source_version #=> String
resp.project.artifacts.type #=> String, one of "CODEPIPELINE", "S3", "NO_ARTIFACTS"
resp.project.artifacts.location #=> String
resp.project.artifacts.path #=> String
resp.project.artifacts.namespace_type #=> String, one of "NONE", "BUILD_ID"
resp.project.artifacts.name #=> String
resp.project.artifacts.packaging #=> String, one of "NONE", "ZIP"
resp.project.artifacts.override_artifact_name #=> Boolean
resp.project.artifacts.encryption_disabled #=> Boolean
resp.project.artifacts.artifact_identifier #=> String
resp.project.secondary_artifacts #=> Array
resp.project.secondary_artifacts[0].type #=> String, one of "CODEPIPELINE", "S3", "NO_ARTIFACTS"
resp.project.secondary_artifacts[0].location #=> String
resp.project.secondary_artifacts[0].path #=> String
resp.project.secondary_artifacts[0].namespace_type #=> String, one of "NONE", "BUILD_ID"
resp.project.secondary_artifacts[0].name #=> String
resp.project.secondary_artifacts[0].packaging #=> String, one of "NONE", "ZIP"
resp.project.secondary_artifacts[0].override_artifact_name #=> Boolean
resp.project.secondary_artifacts[0].encryption_disabled #=> Boolean
resp.project.secondary_artifacts[0].artifact_identifier #=> String
resp.project.cache.type #=> String, one of "NO_CACHE", "S3", "LOCAL"
resp.project.cache.location #=> String
resp.project.cache.modes #=> Array
resp.project.cache.modes[0] #=> String, one of "LOCAL_DOCKER_LAYER_CACHE", "LOCAL_SOURCE_CACHE", "LOCAL_CUSTOM_CACHE"
resp.project.environment.type #=> String, one of "WINDOWS_CONTAINER", "LINUX_CONTAINER", "LINUX_GPU_CONTAINER", "ARM_CONTAINER"
resp.project.environment.image #=> String
resp.project.environment.compute_type #=> String, one of "BUILD_GENERAL1_SMALL", "BUILD_GENERAL1_MEDIUM", "BUILD_GENERAL1_LARGE", "BUILD_GENERAL1_2XLARGE"
resp.project.environment.environment_variables #=> Array
resp.project.environment.environment_variables[0].name #=> String
resp.project.environment.environment_variables[0].value #=> String
resp.project.environment.environment_variables[0].type #=> String, one of "PLAINTEXT", "PARAMETER_STORE", "SECRETS_MANAGER"
resp.project.environment.privileged_mode #=> Boolean
resp.project.environment.certificate #=> String
resp.project.environment.registry_credential.credential #=> String
resp.project.environment.registry_credential.credential_provider #=> String, one of "SECRETS_MANAGER"
resp.project.environment.image_pull_credentials_type #=> String, one of "CODEBUILD", "SERVICE_ROLE"
resp.project.service_role #=> String
resp.project.timeout_in_minutes #=> Integer
resp.project.queued_timeout_in_minutes #=> Integer
resp.project.encryption_key #=> String
resp.project.tags #=> Array
resp.project.tags[0].key #=> String
resp.project.tags[0].value #=> String
resp.project.created #=> Time
resp.project.last_modified #=> Time
resp.project.webhook.url #=> String
resp.project.webhook.payload_url #=> String
resp.project.webhook.secret #=> String
resp.project.webhook.branch_filter #=> String
resp.project.webhook.filter_groups #=> Array
resp.project.webhook.filter_groups[0] #=> Array
resp.project.webhook.filter_groups[0][0].type #=> String, one of "EVENT", "BASE_REF", "HEAD_REF", "ACTOR_ACCOUNT_ID", "FILE_PATH", "COMMIT_MESSAGE"
resp.project.webhook.filter_groups[0][0].pattern #=> String
resp.project.webhook.filter_groups[0][0].exclude_matched_pattern #=> Boolean
resp.project.webhook.last_modified_secret #=> Time
resp.project.vpc_config.vpc_id #=> String
resp.project.vpc_config.subnets #=> Array
resp.project.vpc_config.subnets[0] #=> String
resp.project.vpc_config.security_group_ids #=> Array
resp.project.vpc_config.security_group_ids[0] #=> String
resp.project.badge.badge_enabled #=> Boolean
resp.project.badge.badge_request_url #=> String
resp.project.logs_config.cloud_watch_logs.status #=> String, one of "ENABLED", "DISABLED"
resp.project.logs_config.cloud_watch_logs.group_name #=> String
resp.project.logs_config.cloud_watch_logs.stream_name #=> String
resp.project.logs_config.s3_logs.status #=> String, one of "ENABLED", "DISABLED"
resp.project.logs_config.s3_logs.location #=> String
resp.project.logs_config.s3_logs.encryption_disabled #=> Boolean
resp.project.file_system_locations #=> Array
resp.project.file_system_locations[0].type #=> String, one of "EFS"
resp.project.file_system_locations[0].location #=> String
resp.project.file_system_locations[0].mount_point #=> String
resp.project.file_system_locations[0].identifier #=> String
resp.project.file_system_locations[0].mount_options #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the build project.

  • :description (String)

    A description that makes the build project easy to identify.

  • :source (required, Types::ProjectSource)

    Information about the build input source code for the build project.

  • :secondary_sources (Array<Types::ProjectSource>)

    An array of ProjectSource objects.

  • :source_version (String)

    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 in the AWS CodeBuild User Guide.

  • :secondary_source_versions (Array<Types::ProjectSourceVersion>)

    An array of ProjectSourceVersion objects. If secondarySourceVersions is specified at the build level, then they take precedence over these secondarySourceVersions (at the project level).

  • :artifacts (required, Types::ProjectArtifacts)

    Information about the build output artifacts for the build project.

  • :secondary_artifacts (Array<Types::ProjectArtifacts>)

    An array of ProjectArtifacts objects.

  • :cache (Types::ProjectCache)

    Stores recently used information so that it can be quickly accessed at a later time.

  • :environment (required, Types::ProjectEnvironment)

    Information about the build environment for the build project.

  • :service_role (required, String)

    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.

  • :timeout_in_minutes (Integer)

    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.

  • :queued_timeout_in_minutes (Integer)

    The number of minutes a build is allowed to be queued before it times out.

  • :encryption_key (String)

    The AWS Key Management Service (AWS KMS) customer master key (CMK) to be used for encrypting the build output artifacts.

    You can use a cross-account KMS key to encrypt the build output artifacts if your service role has permission to that key.

    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).

  • :tags (Array<Types::Tag>)

    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.

  • :vpc_config (Types::VpcConfig)

    VpcConfig enables AWS CodeBuild to access resources in an Amazon VPC.

  • :badge_enabled (Boolean)

    Set this to true to generate a publicly accessible URL for your project's build badge.

  • :logs_config (Types::LogsConfig)

    Information about logs for the build project. These can be logs in Amazon CloudWatch Logs, logs uploaded to a specified S3 bucket, or both.

  • :file_system_locations (Array<Types::ProjectFileSystemLocation>)

    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.

Returns:

See Also:



1360
1361
1362
1363
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 1360

def create_project(params = {}, options = {})
  req = build_request(:create_project, params)
  req.send_request(options)
end

#create_report_group(params = {}) ⇒ Types::CreateReportGroupOutput

Creates a report group. A report group contains a collection of reports.

Examples:

Request syntax with placeholder values


resp = client.create_report_group({
  name: "ReportGroupName", # required
  type: "TEST", # required, accepts TEST
  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",
    },
  ],
})

Response structure


resp.report_group.arn #=> String
resp.report_group.name #=> String
resp.report_group.type #=> String, one of "TEST"
resp.report_group.export_config.export_config_type #=> String, one of "S3", "NO_EXPORT"
resp.report_group.export_config.s3_destination.bucket #=> String
resp.report_group.export_config.s3_destination.path #=> String
resp.report_group.export_config.s3_destination.packaging #=> String, one of "ZIP", "NONE"
resp.report_group.export_config.s3_destination.encryption_key #=> String
resp.report_group.export_config.s3_destination.encryption_disabled #=> Boolean
resp.report_group.created #=> Time
resp.report_group.last_modified #=> Time
resp.report_group.tags #=> Array
resp.report_group.tags[0].key #=> String
resp.report_group.tags[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the report group.

  • :type (required, String)

    The type of report group.

  • :export_config (required, Types::ReportExportConfig)

    A ReportExportConfig object that contains information about where the report group test results are exported.

  • :tags (Array<Types::Tag>)

    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.

Returns:

See Also:



1432
1433
1434
1435
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 1432

def create_report_group(params = {}, options = {})
  req = build_request(:create_report_group, params)
  req.send_request(options)
end

#create_webhook(params = {}) ⇒ Types::CreateWebhookOutput

For an existing AWS CodeBuild build project that has its source code stored in a GitHub or Bitbucket repository, enables AWS CodeBuild to start rebuilding the source code every time a code change is pushed to the repository.

If you enable webhooks for an AWS CodeBuild project, and the project is used as a build step in AWS CodePipeline, then two identical builds are created for each commit. One build is triggered through webhooks, and one through AWS CodePipeline. Because billing is on a per-build basis, you are billed for both builds. Therefore, if you are using AWS CodePipeline, we recommend that you disable webhooks in AWS CodeBuild. In the AWS CodeBuild console, clear the Webhook box. For more information, see step 5 in Change a Build Project's Settings.

Examples:

Request syntax with placeholder values


resp = client.create_webhook({
  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,
      },
    ],
  ],
})

Response structure


resp.webhook.url #=> String
resp.webhook.payload_url #=> String
resp.webhook.secret #=> String
resp.webhook.branch_filter #=> String
resp.webhook.filter_groups #=> Array
resp.webhook.filter_groups[0] #=> Array
resp.webhook.filter_groups[0][0].type #=> String, one of "EVENT", "BASE_REF", "HEAD_REF", "ACTOR_ACCOUNT_ID", "FILE_PATH", "COMMIT_MESSAGE"
resp.webhook.filter_groups[0][0].pattern #=> String
resp.webhook.filter_groups[0][0].exclude_matched_pattern #=> Boolean
resp.webhook.last_modified_secret #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :project_name (required, String)

    The name of the AWS CodeBuild project.

  • :branch_filter (String)

    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.

    It is recommended that you use filterGroups instead of branchFilter.

  • :filter_groups (Array<Array>)

    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.

Returns:

See Also:



1515
1516
1517
1518
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 1515

def create_webhook(params = {}, options = {})
  req = build_request(:create_webhook, params)
  req.send_request(options)
end

#delete_project(params = {}) ⇒ Struct

Deletes a build project. When you delete a project, its builds are not deleted.

Examples:

Request syntax with placeholder values


resp = client.delete_project({
  name: "NonEmptyString", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the build project.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1538
1539
1540
1541
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 1538

def delete_project(params = {}, options = {})
  req = build_request(:delete_project, params)
  req.send_request(options)
end

#delete_report(params = {}) ⇒ Struct

Deletes a report.

Examples:

Request syntax with placeholder values


resp = client.delete_report({
  arn: "NonEmptyString", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :arn (required, String)

    The ARN of the report to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1560
1561
1562
1563
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 1560

def delete_report(params = {}, options = {})
  req = build_request(:delete_report, params)
  req.send_request(options)
end

#delete_report_group(params = {}) ⇒ Struct

DeleteReportGroup: Deletes a report group. Before you delete a report group, you must delete its reports. Use ListReportsForReportGroup to get the reports in a report group. Use DeleteReport to delete the reports. If you call DeleteReportGroup for a report group that contains one or more reports, an exception is thrown.

Examples:

Request syntax with placeholder values


resp = client.delete_report_group({
  arn: "NonEmptyString", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :arn (required, String)

    The ARN of the report group to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1592
1593
1594
1595
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 1592

def delete_report_group(params = {}, options = {})
  req = build_request(:delete_report_group, params)
  req.send_request(options)
end

#delete_resource_policy(params = {}) ⇒ Struct

Deletes a resource policy that is identified by its resource ARN.

Examples:

Request syntax with placeholder values


resp = client.delete_resource_policy({
  resource_arn: "NonEmptyString", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The ARN of the resource that is associated with the resource policy.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1614
1615
1616
1617
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 1614

def delete_resource_policy(params = {}, options = {})
  req = build_request(:delete_resource_policy, params)
  req.send_request(options)
end

#delete_source_credentials(params = {}) ⇒ Types::DeleteSourceCredentialsOutput

Deletes a set of GitHub, GitHub Enterprise, or Bitbucket source credentials.

Examples:

Request syntax with placeholder values


resp = client.delete_source_credentials({
  arn: "NonEmptyString", # required
})

Response structure


resp.arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :arn (required, String)

    The Amazon Resource Name (ARN) of the token.

Returns:

See Also:



1643
1644
1645
1646
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 1643

def delete_source_credentials(params = {}, options = {})
  req = build_request(:delete_source_credentials, params)
  req.send_request(options)
end

#delete_webhook(params = {}) ⇒ Struct

For an existing AWS CodeBuild build project that has its source code stored in a GitHub or Bitbucket repository, stops AWS CodeBuild from rebuilding the source code every time a code change is pushed to the repository.

Examples:

Request syntax with placeholder values


resp = client.delete_webhook({
  project_name: "ProjectName", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :project_name (required, String)

    The name of the AWS CodeBuild project.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1668
1669
1670
1671
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 1668

def delete_webhook(params = {}, options = {})
  req = build_request(:delete_webhook, params)
  req.send_request(options)
end

#describe_test_cases(params = {}) ⇒ Types::DescribeTestCasesOutput

Returns a list of details about test cases for a report.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.describe_test_cases({
  report_arn: "String", # required
  next_token: "String",
  max_results: 1,
  filter: {
    status: "String",
  },
})

Response structure


resp.next_token #=> String
resp.test_cases #=> Array
resp.test_cases[0].report_arn #=> String
resp.test_cases[0].test_raw_data_path #=> String
resp.test_cases[0].prefix #=> String
resp.test_cases[0].name #=> String
resp.test_cases[0].status #=> String
resp.test_cases[0].duration_in_nano_seconds #=> Integer
resp.test_cases[0].message #=> String
resp.test_cases[0].expired #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :report_arn (required, String)

    The ARN of the report for which test cases are returned.

  • :next_token (String)

    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.

  • :max_results (Integer)

    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.

  • :filter (Types::TestCaseFilter)

    A TestCaseFilter object used to filter the returned reports.

Returns:

See Also:



1730
1731
1732
1733
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 1730

def describe_test_cases(params = {}, options = {})
  req = build_request(:describe_test_cases, params)
  req.send_request(options)
end

#get_resource_policy(params = {}) ⇒ Types::GetResourcePolicyOutput

Gets a resource policy that is identified by its resource ARN.

Examples:

Request syntax with placeholder values


resp = client.get_resource_policy({
  resource_arn: "NonEmptyString", # required
})

Response structure


resp.policy #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The ARN of the resource that is associated with the resource policy.

Returns:

See Also:



1758
1759
1760
1761
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 1758

def get_resource_policy(params = {}, options = {})
  req = build_request(:get_resource_policy, params)
  req.send_request(options)
end

#import_source_credentials(params = {}) ⇒ Types::ImportSourceCredentialsOutput

Imports the source repository credentials for an AWS CodeBuild project that has its source code stored in a GitHub, GitHub Enterprise, or Bitbucket repository.

Examples:

Request syntax with placeholder values


resp = client.import_source_credentials({
  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,
})

Response structure


resp.arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :username (String)

    The Bitbucket username when the authType is BASIC_AUTH. This parameter is not valid for other types of source providers or connections.

  • :token (required, String)

    For GitHub or GitHub Enterprise, this is the personal access token. For Bitbucket, this is the app password.

  • :server_type (required, String)

    The source provider used for this project.

  • :auth_type (required, String)

    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.

  • :should_overwrite (Boolean)

    Set to false to prevent overwriting the repository source credentials. Set to true to overwrite the repository source credentials. The default value is true.

Returns:

See Also:



1812
1813
1814
1815
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 1812

def import_source_credentials(params = {}, options = {})
  req = build_request(:import_source_credentials, params)
  req.send_request(options)
end

#invalidate_project_cache(params = {}) ⇒ Struct

Resets the cache for a project.

Examples:

Request syntax with placeholder values


resp = client.invalidate_project_cache({
  project_name: "NonEmptyString", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :project_name (required, String)

    The name of the AWS CodeBuild build project that the cache is reset for.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1835
1836
1837
1838
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 1835

def invalidate_project_cache(params = {}, options = {})
  req = build_request(:invalidate_project_cache, params)
  req.send_request(options)
end

#list_builds(params = {}) ⇒ Types::ListBuildsOutput

Gets a list of build IDs, with each build ID representing a single build.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_builds({
  sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
  next_token: "String",
})

Response structure


resp.ids #=> Array
resp.ids[0] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :sort_order (String)

    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.

  • :next_token (String)

    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.

Returns:

See Also:



1883
1884
1885
1886
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 1883

def list_builds(params = {}, options = {})
  req = build_request(:list_builds, params)
  req.send_request(options)
end

#list_builds_for_project(params = {}) ⇒ Types::ListBuildsForProjectOutput

Gets a list of build IDs for the specified build project, with each build ID representing a single build.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_builds_for_project({
  project_name: "NonEmptyString", # required
  sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
  next_token: "String",
})

Response structure


resp.ids #=> Array
resp.ids[0] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :project_name (required, String)

    The name of the AWS CodeBuild project.

  • :sort_order (String)

    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.

  • :next_token (String)

    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.

Returns:

See Also:



1935
1936
1937
1938
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 1935

def list_builds_for_project(params = {}, options = {})
  req = build_request(:list_builds_for_project, params)
  req.send_request(options)
end

#list_curated_environment_images(params = {}) ⇒ Types::ListCuratedEnvironmentImagesOutput

Gets information about Docker images that are managed by AWS CodeBuild.

Examples:

Response structure


resp.platforms #=> Array
resp.platforms[0].platform #=> String, one of "DEBIAN", "AMAZON_LINUX", "UBUNTU", "WINDOWS_SERVER"
resp.platforms[0].languages #=> Array
resp.platforms[0].languages[0].language #=> String, one of "JAVA", "PYTHON", "NODE_JS", "RUBY", "GOLANG", "DOCKER", "ANDROID", "DOTNET", "BASE", "PHP"
resp.platforms[0].languages[0].images #=> Array
resp.platforms[0].languages[0].images[0].name #=> String
resp.platforms[0].languages[0].images[0].description #=> String
resp.platforms[0].languages[0].images[0].versions #=> Array
resp.platforms[0].languages[0].images[0].versions[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Returns:

See Also:



1963
1964
1965
1966
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 1963

def list_curated_environment_images(params = {}, options = {})
  req = build_request(:list_curated_environment_images, params)
  req.send_request(options)
end

#list_projects(params = {}) ⇒ Types::ListProjectsOutput

Gets a list of build project names, with each build project name representing a single build project.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_projects({
  sort_by: "NAME", # accepts NAME, CREATED_TIME, LAST_MODIFIED_TIME
  sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
  next_token: "NonEmptyString",
})

Response structure


resp.next_token #=> String
resp.projects #=> Array
resp.projects[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :sort_by (String)

    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.

  • :sort_order (String)

    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.

  • :next_token (String)

    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.

Returns:

See Also:



2029
2030
2031
2032
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 2029

def list_projects(params = {}, options = {})
  req = build_request(:list_projects, params)
  req.send_request(options)
end

#list_report_groups(params = {}) ⇒ Types::ListReportGroupsOutput

Gets a list ARNs for the report groups in the current AWS account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_report_groups({
  sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
  sort_by: "NAME", # accepts NAME, CREATED_TIME, LAST_MODIFIED_TIME
  next_token: "String",
  max_results: 1,
})

Response structure


resp.next_token #=> String
resp.report_groups #=> Array
resp.report_groups[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :sort_order (String)

    Used to specify the order to sort the list of returned report groups. Valid values are ASCENDING and DESCENDING.

  • :sort_by (String)

    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.

  • :next_token (String)

    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.

  • :max_results (Integer)

    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.

Returns:

See Also:



2091
2092
2093
2094
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 2091

def list_report_groups(params = {}, options = {})
  req = build_request(:list_report_groups, params)
  req.send_request(options)
end

#list_reports(params = {}) ⇒ Types::ListReportsOutput

Returns a list of ARNs for the reports in the current AWS account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_reports({
  sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
  next_token: "String",
  max_results: 1,
  filter: {
    status: "GENERATING", # accepts GENERATING, SUCCEEDED, FAILED, INCOMPLETE, DELETING
  },
})

Response structure


resp.next_token #=> String
resp.reports #=> Array
resp.reports[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :sort_order (String)

    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.

  • :next_token (String)

    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.

  • :max_results (Integer)

    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.

  • :filter (Types::ReportFilter)

    A ReportFilter object used to filter the returned reports.

Returns:

See Also:



2153
2154
2155
2156
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 2153

def list_reports(params = {}, options = {})
  req = build_request(:list_reports, params)
  req.send_request(options)
end

#list_reports_for_report_group(params = {}) ⇒ Types::ListReportsForReportGroupOutput

Returns a list of ARNs for the reports that belong to a ReportGroup.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_reports_for_report_group({
  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
  },
})

Response structure


resp.next_token #=> String
resp.reports #=> Array
resp.reports[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :report_group_arn (required, String)

    The ARN of the report group for which you want to return report ARNs.

  • :next_token (String)

    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.

  • :sort_order (String)

    Use to specify whether the results are returned in ascending or descending order.

  • :max_results (Integer)

    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.

  • :filter (Types::ReportFilter)

    A ReportFilter object used to filter the returned reports.

Returns:

See Also:



2213
2214
2215
2216
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 2213

def list_reports_for_report_group(params = {}, options = {})
  req = build_request(:list_reports_for_report_group, params)
  req.send_request(options)
end

#list_shared_projects(params = {}) ⇒ Types::ListSharedProjectsOutput

Gets a list of projects that are shared with other AWS accounts or users.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_shared_projects({
  sort_by: "ARN", # accepts ARN, MODIFIED_TIME
  sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
  max_results: 1,
  next_token: "NonEmptyString",
})

Response structure


resp.next_token #=> String
resp.projects #=> Array
resp.projects[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :sort_by (String)

    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.

  • :sort_order (String)

    The order in which to list shared build projects. Valid values include:

    • ASCENDING: List in ascending order.

    • DESCENDING: List in descending order.

  • :max_results (Integer)

    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.

  • :next_token (String)

    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.

Returns:

See Also:



2278
2279
2280
2281
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 2278

def list_shared_projects(params = {}, options = {})
  req = build_request(:list_shared_projects, params)
  req.send_request(options)
end

#list_shared_report_groups(params = {}) ⇒ Types::ListSharedReportGroupsOutput

Gets a list of report groups that are shared with other AWS accounts or users.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_shared_report_groups({
  sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
  sort_by: "ARN", # accepts ARN, MODIFIED_TIME
  next_token: "String",
  max_results: 1,
})

Response structure


resp.next_token #=> String
resp.report_groups #=> Array
resp.report_groups[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :sort_order (String)

    The order in which to list shared report groups. Valid values include:

    • ASCENDING: List in ascending order.

    • DESCENDING: List in descending order.

  • :sort_by (String)

    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.

  • :next_token (String)

    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.

  • :max_results (Integer)

    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.

Returns:

See Also:



2342
2343
2344
2345
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 2342

def list_shared_report_groups(params = {}, options = {})
  req = build_request(:list_shared_report_groups, params)
  req.send_request(options)
end

#list_source_credentials(params = {}) ⇒ Types::ListSourceCredentialsOutput

Returns a list of SourceCredentialsInfo objects.

Examples:

Response structure


resp.source_credentials_infos #=> Array
resp.source_credentials_infos[0].arn #=> String
resp.source_credentials_infos[0].server_type #=> String, one of "GITHUB", "BITBUCKET", "GITHUB_ENTERPRISE"
resp.source_credentials_infos[0].auth_type #=> String, one of "OAUTH", "BASIC_AUTH", "PERSONAL_ACCESS_TOKEN"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Returns:

See Also:



2364
2365
2366
2367
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 2364

def list_source_credentials(params = {}, options = {})
  req = build_request(:list_source_credentials, params)
  req.send_request(options)
end

#put_resource_policy(params = {}) ⇒ Types::PutResourcePolicyOutput

Stores a resource policy for the ARN of a Project or ReportGroup object.

Examples:

Request syntax with placeholder values


resp = client.put_resource_policy({
  policy: "NonEmptyString", # required
  resource_arn: "NonEmptyString", # required
})

Response structure


resp.resource_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :policy (required, String)

    A JSON-formatted resource policy. For more information, see Sharing a Project and Sharing a Report Group in the AWS CodeBuild User Guide.

  • :resource_arn (required, String)

    The ARN of the Project or ReportGroup resource you want to associate with a resource policy.

Returns:

See Also:



2405
2406
2407
2408
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 2405

def put_resource_policy(params = {}, options = {})
  req = build_request(:put_resource_policy, params)
  req.send_request(options)
end

#start_build(params = {}) ⇒ Types::StartBuildOutput

Starts running a build.

Examples:

Request syntax with placeholder values


resp = client.start_build({
  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
  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
})

Response structure


resp.build.id #=> String
resp.build.arn #=> String
resp.build.build_number #=> Integer
resp.build.start_time #=> Time
resp.build.end_time #=> Time
resp.build.current_phase #=> String
resp.build.build_status #=> String, one of "SUCCEEDED", "FAILED", "FAULT", "TIMED_OUT", "IN_PROGRESS", "STOPPED"
resp.build.source_version #=> String
resp.build.resolved_source_version #=> String
resp.build.project_name #=> String
resp.build.phases #=> Array
resp.build.phases[0].phase_type #=> String, one of "SUBMITTED", "QUEUED", "PROVISIONING", "DOWNLOAD_SOURCE", "INSTALL", "PRE_BUILD", "BUILD", "POST_BUILD", "UPLOAD_ARTIFACTS", "FINALIZING", "COMPLETED"
resp.build.phases[0].phase_status #=> String, one of "SUCCEEDED", "FAILED", "FAULT", "TIMED_OUT", "IN_PROGRESS", "STOPPED"
resp.build.phases[0].start_time #=> Time
resp.build.phases[0].end_time #=> Time
resp.build.phases[0].duration_in_seconds #=> Integer
resp.build.phases[0].contexts #=> Array
resp.build.phases[0].contexts[0].status_code #=> String
resp.build.phases[0].contexts[0].message #=> String
resp.build.source.type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3", "BITBUCKET", "GITHUB_ENTERPRISE", "NO_SOURCE"
resp.build.source.location #=> String
resp.build.source.git_clone_depth #=> Integer
resp.build.source.git_submodules_config.fetch_submodules #=> Boolean
resp.build.source.buildspec #=> String
resp.build.source.auth.type #=> String, one of "OAUTH"
resp.build.source.auth.resource #=> String
resp.build.source.report_build_status #=> Boolean
resp.build.source.build_status_config.context #=> String
resp.build.source.build_status_config.target_url #=> String
resp.build.source.insecure_ssl #=> Boolean
resp.build.source.source_identifier #=> String
resp.build.secondary_sources #=> Array
resp.build.secondary_sources[0].type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3", "BITBUCKET", "GITHUB_ENTERPRISE", "NO_SOURCE"
resp.build.secondary_sources[0].location #=> String
resp.build.secondary_sources[0].git_clone_depth #=> Integer
resp.build.secondary_sources[0].git_submodules_config.fetch_submodules #=> Boolean
resp.build.secondary_sources[0].buildspec #=> String
resp.build.secondary_sources[0].auth.type #=> String, one of "OAUTH"
resp.build.secondary_sources[0].auth.resource #=> String
resp.build.secondary_sources[0].report_build_status #=> Boolean
resp.build.secondary_sources[0].build_status_config.context #=> String
resp.build.secondary_sources[0].build_status_config.target_url #=> String
resp.build.secondary_sources[0].insecure_ssl #=> Boolean
resp.build.secondary_sources[0].source_identifier #=> String
resp.build.secondary_source_versions #=> Array
resp.build.secondary_source_versions[0].source_identifier #=> String
resp.build.secondary_source_versions[0].source_version #=> String
resp.build.artifacts.location #=> String
resp.build.artifacts.sha256sum #=> String
resp.build.artifacts.md5sum #=> String
resp.build.artifacts.override_artifact_name #=> Boolean
resp.build.artifacts.encryption_disabled #=> Boolean
resp.build.artifacts.artifact_identifier #=> String
resp.build.secondary_artifacts #=> Array
resp.build.secondary_artifacts[0].location #=> String
resp.build.secondary_artifacts[0].sha256sum #=> String
resp.build.secondary_artifacts[0].md5sum #=> String
resp.build.secondary_artifacts[0].override_artifact_name #=> Boolean
resp.build.secondary_artifacts[0].encryption_disabled #=> Boolean
resp.build.secondary_artifacts[0].artifact_identifier #=> String
resp.build.cache.type #=> String, one of "NO_CACHE", "S3", "LOCAL"
resp.build.cache.location #=> String
resp.build.cache.modes #=> Array
resp.build.cache.modes[0] #=> String, one of "LOCAL_DOCKER_LAYER_CACHE", "LOCAL_SOURCE_CACHE", "LOCAL_CUSTOM_CACHE"
resp.build.environment.type #=> String, one of "WINDOWS_CONTAINER", "LINUX_CONTAINER", "LINUX_GPU_CONTAINER", "ARM_CONTAINER"
resp.build.environment.image #=> String
resp.build.environment.compute_type #=> String, one of "BUILD_GENERAL1_SMALL", "BUILD_GENERAL1_MEDIUM", "BUILD_GENERAL1_LARGE", "BUILD_GENERAL1_2XLARGE"
resp.build.environment.environment_variables #=> Array
resp.build.environment.environment_variables[0].name #=> String
resp.build.environment.environment_variables[0].value #=> String
resp.build.environment.environment_variables[0].type #=> String, one of "PLAINTEXT", "PARAMETER_STORE", "SECRETS_MANAGER"
resp.build.environment.privileged_mode #=> Boolean
resp.build.environment.certificate #=> String
resp.build.environment.registry_credential.credential #=> String
resp.build.environment.registry_credential.credential_provider #=> String, one of "SECRETS_MANAGER"
resp.build.environment.image_pull_credentials_type #=> String, one of "CODEBUILD", "SERVICE_ROLE"
resp.build.service_role #=> String
resp.build.logs.group_name #=> String
resp.build.logs.stream_name #=> String
resp.build.logs.deep_link #=> String
resp.build.logs.s3_deep_link #=> String
resp.build.logs.cloud_watch_logs_arn #=> String
resp.build.logs.s3_logs_arn #=> String
resp.build.logs.cloud_watch_logs.status #=> String, one of "ENABLED", "DISABLED"
resp.build.logs.cloud_watch_logs.group_name #=> String
resp.build.logs.cloud_watch_logs.stream_name #=> String
resp.build.logs.s3_logs.status #=> String, one of "ENABLED", "DISABLED"
resp.build.logs.s3_logs.location #=> String
resp.build.logs.s3_logs.encryption_disabled #=> Boolean
resp.build.timeout_in_minutes #=> Integer
resp.build.queued_timeout_in_minutes #=> Integer
resp.build.build_complete #=> Boolean
resp.build.initiator #=> String
resp.build.vpc_config.vpc_id #=> String
resp.build.vpc_config.subnets #=> Array
resp.build.vpc_config.subnets[0] #=> String
resp.build.vpc_config.security_group_ids #=> Array
resp.build.vpc_config.security_group_ids[0] #=> String
resp.build.network_interface.subnet_id #=> String
resp.build.network_interface.network_interface_id #=> String
resp.build.encryption_key #=> String
resp.build.exported_environment_variables #=> Array
resp.build.exported_environment_variables[0].name #=> String
resp.build.exported_environment_variables[0].value #=> String
resp.build.report_arns #=> Array
resp.build.report_arns[0] #=> String
resp.build.file_system_locations #=> Array
resp.build.file_system_locations[0].type #=> String, one of "EFS"
resp.build.file_system_locations[0].location #=> String
resp.build.file_system_locations[0].mount_point #=> String
resp.build.file_system_locations[0].identifier #=> String
resp.build.file_system_locations[0].mount_options #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :project_name (required, String)

    The name of the AWS CodeBuild build project to start running a build.

  • :secondary_sources_override (Array<Types::ProjectSource>)

    An array of ProjectSource objects.

  • :secondary_sources_version_override (Array<Types::ProjectSourceVersion>)

    An array of ProjectSourceVersion objects that specify one or more versions of the project's secondary sources to be used for this build only.

  • :source_version (String)

    A version of the build input to be built, for this build only. If not specified, the latest version is used. 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.

    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 in the AWS CodeBuild User Guide.

  • :artifacts_override (Types::ProjectArtifacts)

    Build output artifact settings that override, for this build only, the latest ones already defined in the build project.

  • :secondary_artifacts_override (Array<Types::ProjectArtifacts>)

    An array of ProjectArtifacts objects.

  • :environment_variables_override (Array<Types::EnvironmentVariable>)

    A set of environment variables that overrides, for this build only, the latest ones already defined in the build project.

  • :source_type_override (String)

    A source input type, for this build, that overrides the source input defined in the build project.

  • :source_location_override (String)

    A location that overrides, for this build, the source location for the one defined in the build project.

  • :source_auth_override (Types::SourceAuth)

    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.

  • :git_clone_depth_override (Integer)

    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.

  • :git_submodules_config_override (Types::GitSubmodulesConfig)

    Information about the Git submodules configuration for this build of an AWS CodeBuild build project.

  • :buildspec_override (String)

    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.

  • :insecure_ssl_override (Boolean)

    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.

  • :report_build_status_override (Boolean)

    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.

    The status of a build triggered by a webhook is always reported to your source provider.

  • :build_status_config_override (Types::BuildStatusConfig)

    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.

  • :environment_type_override (String)

    A container type for this build that overrides the one specified in the build project.

  • :image_override (String)

    The name of an image for this build that overrides the one specified in the build project.

  • :compute_type_override (String)

    The name of a compute type for this build that overrides the one specified in the build project.

  • :certificate_override (String)

    The name of a certificate for this build that overrides the one specified in the build project.

  • :cache_override (Types::ProjectCache)

    A ProjectCache object specified for this build that overrides the one defined in the build project.

  • :service_role_override (String)

    The name of a service role for this build that overrides the one specified in the build project.

  • :privileged_mode_override (Boolean)

    Enable this flag to override privileged mode in the build project.

  • :timeout_in_minutes_override (Integer)

    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.

  • :queued_timeout_in_minutes_override (Integer)

    The number of minutes a build is allowed to be queued before it times out.

  • :encryption_key_override (String)

    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.

    You can use a cross-account KMS key to encrypt the build output artifacts if your service role has permission to that key.

    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).

  • :idempotency_token (String)

    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.

  • :logs_config_override (Types::LogsConfig)

    Log settings for this build that override the log settings defined in the build project.

  • :registry_credential_override (Types::RegistryCredential)

    The credentials for access to a private registry.

  • :image_pull_credentials_type_override (String)

    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.

Returns:

See Also:



2844
2845
2846
2847
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 2844

def start_build(params = {}, options = {})
  req = build_request(:start_build, params)
  req.send_request(options)
end

#stop_build(params = {}) ⇒ Types::StopBuildOutput

Attempts to stop running a build.

Examples:

Request syntax with placeholder values


resp = client.stop_build({
  id: "NonEmptyString", # required
})

Response structure


resp.build.id #=> String
resp.build.arn #=> String
resp.build.build_number #=> Integer
resp.build.start_time #=> Time
resp.build.end_time #=> Time
resp.build.current_phase #=> String
resp.build.build_status #=> String, one of "SUCCEEDED", "FAILED", "FAULT", "TIMED_OUT", "IN_PROGRESS", "STOPPED"
resp.build.source_version #=> String
resp.build.resolved_source_version #=> String
resp.build.project_name #=> String
resp.build.phases #=> Array
resp.build.phases[0].phase_type #=> String, one of "SUBMITTED", "QUEUED", "PROVISIONING", "DOWNLOAD_SOURCE", "INSTALL", "PRE_BUILD", "BUILD", "POST_BUILD", "UPLOAD_ARTIFACTS", "FINALIZING", "COMPLETED"
resp.build.phases[0].phase_status #=> String, one of "SUCCEEDED", "FAILED", "FAULT", "TIMED_OUT", "IN_PROGRESS", "STOPPED"
resp.build.phases[0].start_time #=> Time
resp.build.phases[0].end_time #=> Time
resp.build.phases[0].duration_in_seconds #=> Integer
resp.build.phases[0].contexts #=> Array
resp.build.phases[0].contexts[0].status_code #=> String
resp.build.phases[0].contexts[0].message #=> String
resp.build.source.type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3", "BITBUCKET", "GITHUB_ENTERPRISE", "NO_SOURCE"
resp.build.source.location #=> String
resp.build.source.git_clone_depth #=> Integer
resp.build.source.git_submodules_config.fetch_submodules #=> Boolean
resp.build.source.buildspec #=> String
resp.build.source.auth.type #=> String, one of "OAUTH"
resp.build.source.auth.resource #=> String
resp.build.source.report_build_status #=> Boolean
resp.build.source.build_status_config.context #=> String
resp.build.source.build_status_config.target_url #=> String
resp.build.source.insecure_ssl #=> Boolean
resp.build.source.source_identifier #=> String
resp.build.secondary_sources #=> Array
resp.build.secondary_sources[0].type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3", "BITBUCKET", "GITHUB_ENTERPRISE", "NO_SOURCE"
resp.build.secondary_sources[0].location #=> String
resp.build.secondary_sources[0].git_clone_depth #=> Integer
resp.build.secondary_sources[0].git_submodules_config.fetch_submodules #=> Boolean
resp.build.secondary_sources[0].buildspec #=> String
resp.build.secondary_sources[0].auth.type #=> String, one of "OAUTH"
resp.build.secondary_sources[0].auth.resource #=> String
resp.build.secondary_sources[0].report_build_status #=> Boolean
resp.build.secondary_sources[0].build_status_config.context #=> String
resp.build.secondary_sources[0].build_status_config.target_url #=> String
resp.build.secondary_sources[0].insecure_ssl #=> Boolean
resp.build.secondary_sources[0].source_identifier #=> String
resp.build.secondary_source_versions #=> Array
resp.build.secondary_source_versions[0].source_identifier #=> String
resp.build.secondary_source_versions[0].source_version #=> String
resp.build.artifacts.location #=> String
resp.build.artifacts.sha256sum #=> String
resp.build.artifacts.md5sum #=> String
resp.build.artifacts.override_artifact_name #=> Boolean
resp.build.artifacts.encryption_disabled #=> Boolean
resp.build.artifacts.artifact_identifier #=> String
resp.build.secondary_artifacts #=> Array
resp.build.secondary_artifacts[0].location #=> String
resp.build.secondary_artifacts[0].sha256sum #=> String
resp.build.secondary_artifacts[0].md5sum #=> String
resp.build.secondary_artifacts[0].override_artifact_name #=> Boolean
resp.build.secondary_artifacts[0].encryption_disabled #=> Boolean
resp.build.secondary_artifacts[0].artifact_identifier #=> String
resp.build.cache.type #=> String, one of "NO_CACHE", "S3", "LOCAL"
resp.build.cache.location #=> String
resp.build.cache.modes #=> Array
resp.build.cache.modes[0] #=> String, one of "LOCAL_DOCKER_LAYER_CACHE", "LOCAL_SOURCE_CACHE", "LOCAL_CUSTOM_CACHE"
resp.build.environment.type #=> String, one of "WINDOWS_CONTAINER", "LINUX_CONTAINER", "LINUX_GPU_CONTAINER", "ARM_CONTAINER"
resp.build.environment.image #=> String
resp.build.environment.compute_type #=> String, one of "BUILD_GENERAL1_SMALL", "BUILD_GENERAL1_MEDIUM", "BUILD_GENERAL1_LARGE", "BUILD_GENERAL1_2XLARGE"
resp.build.environment.environment_variables #=> Array
resp.build.environment.environment_variables[0].name #=> String
resp.build.environment.environment_variables[0].value #=> String
resp.build.environment.environment_variables[0].type #=> String, one of "PLAINTEXT", "PARAMETER_STORE", "SECRETS_MANAGER"
resp.build.environment.privileged_mode #=> Boolean
resp.build.environment.certificate #=> String
resp.build.environment.registry_credential.credential #=> String
resp.build.environment.registry_credential.credential_provider #=> String, one of "SECRETS_MANAGER"
resp.build.environment.image_pull_credentials_type #=> String, one of "CODEBUILD", "SERVICE_ROLE"
resp.build.service_role #=> String
resp.build.logs.group_name #=> String
resp.build.logs.stream_name #=> String
resp.build.logs.deep_link #=> String
resp.build.logs.s3_deep_link #=> String
resp.build.logs.cloud_watch_logs_arn #=> String
resp.build.logs.s3_logs_arn #=> String
resp.build.logs.cloud_watch_logs.status #=> String, one of "ENABLED", "DISABLED"
resp.build.logs.cloud_watch_logs.group_name #=> String
resp.build.logs.cloud_watch_logs.stream_name #=> String
resp.build.logs.s3_logs.status #=> String, one of "ENABLED", "DISABLED"
resp.build.logs.s3_logs.location #=> String
resp.build.logs.s3_logs.encryption_disabled #=> Boolean
resp.build.timeout_in_minutes #=> Integer
resp.build.queued_timeout_in_minutes #=> Integer
resp.build.build_complete #=> Boolean
resp.build.initiator #=> String
resp.build.vpc_config.vpc_id #=> String
resp.build.vpc_config.subnets #=> Array
resp.build.vpc_config.subnets[0] #=> String
resp.build.vpc_config.security_group_ids #=> Array
resp.build.vpc_config.security_group_ids[0] #=> String
resp.build.network_interface.subnet_id #=> String
resp.build.network_interface.network_interface_id #=> String
resp.build.encryption_key #=> String
resp.build.exported_environment_variables #=> Array
resp.build.exported_environment_variables[0].name #=> String
resp.build.exported_environment_variables[0].value #=> String
resp.build.report_arns #=> Array
resp.build.report_arns[0] #=> String
resp.build.file_system_locations #=> Array
resp.build.file_system_locations[0].type #=> String, one of "EFS"
resp.build.file_system_locations[0].location #=> String
resp.build.file_system_locations[0].mount_point #=> String
resp.build.file_system_locations[0].identifier #=> String
resp.build.file_system_locations[0].mount_options #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :id (required, String)

    The ID of the build.

Returns:

See Also:



2983
2984
2985
2986
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 2983

def stop_build(params = {}, options = {})
  req = build_request(:stop_build, params)
  req.send_request(options)
end

#update_project(params = {}) ⇒ Types::UpdateProjectOutput

Changes the settings of a build project.

Examples:

Request syntax with placeholder values


resp = client.update_project({
  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
    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",
    },
  ],
})

Response structure


resp.project.name #=> String
resp.project.arn #=> String
resp.project.description #=> String
resp.project.source.type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3", "BITBUCKET", "GITHUB_ENTERPRISE", "NO_SOURCE"
resp.project.source.location #=> String
resp.project.source.git_clone_depth #=> Integer
resp.project.source.git_submodules_config.fetch_submodules #=> Boolean
resp.project.source.buildspec #=> String
resp.project.source.auth.type #=> String, one of "OAUTH"
resp.project.source.auth.resource #=> String
resp.project.source.report_build_status #=> Boolean
resp.project.source.build_status_config.context #=> String
resp.project.source.build_status_config.target_url #=> String
resp.project.source.insecure_ssl #=> Boolean
resp.project.source.source_identifier #=> String
resp.project.secondary_sources #=> Array
resp.project.secondary_sources[0].type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3", "BITBUCKET", "GITHUB_ENTERPRISE", "NO_SOURCE"
resp.project.secondary_sources[0].location #=> String
resp.project.secondary_sources[0].git_clone_depth #=> Integer
resp.project.secondary_sources[0].git_submodules_config.fetch_submodules #=> Boolean
resp.project.secondary_sources[0].buildspec #=> String
resp.project.secondary_sources[0].auth.type #=> String, one of "OAUTH"
resp.project.secondary_sources[0].auth.resource #=> String
resp.project.secondary_sources[0].report_build_status #=> Boolean
resp.project.secondary_sources[0].build_status_config.context #=> String
resp.project.secondary_sources[0].build_status_config.target_url #=> String
resp.project.secondary_sources[0].insecure_ssl #=> Boolean
resp.project.secondary_sources[0].source_identifier #=> String
resp.project.source_version #=> String
resp.project.secondary_source_versions #=> Array
resp.project.secondary_source_versions[0].source_identifier #=> String
resp.project.secondary_source_versions[0].source_version #=> String
resp.project.artifacts.type #=> String, one of "CODEPIPELINE", "S3", "NO_ARTIFACTS"
resp.project.artifacts.location #=> String
resp.project.artifacts.path #=> String
resp.project.artifacts.namespace_type #=> String, one of "NONE", "BUILD_ID"
resp.project.artifacts.name #=> String
resp.project.artifacts.packaging #=> String, one of "NONE", "ZIP"
resp.project.artifacts.override_artifact_name #=> Boolean
resp.project.artifacts.encryption_disabled #=> Boolean
resp.project.artifacts.artifact_identifier #=> String
resp.project.secondary_artifacts #=> Array
resp.project.secondary_artifacts[0].type #=> String, one of "CODEPIPELINE", "S3", "NO_ARTIFACTS"
resp.project.secondary_artifacts[0].location #=> String
resp.project.secondary_artifacts[0].path #=> String
resp.project.secondary_artifacts[0].namespace_type #=> String, one of "NONE", "BUILD_ID"
resp.project.secondary_artifacts[0].name #=> String
resp.project.secondary_artifacts[0].packaging #=> String, one of "NONE", "ZIP"
resp.project.secondary_artifacts[0].override_artifact_name #=> Boolean
resp.project.secondary_artifacts[0].encryption_disabled #=> Boolean
resp.project.secondary_artifacts[0].artifact_identifier #=> String
resp.project.cache.type #=> String, one of "NO_CACHE", "S3", "LOCAL"
resp.project.cache.location #=> String
resp.project.cache.modes #=> Array
resp.project.cache.modes[0] #=> String, one of "LOCAL_DOCKER_LAYER_CACHE", "LOCAL_SOURCE_CACHE", "LOCAL_CUSTOM_CACHE"
resp.project.environment.type #=> String, one of "WINDOWS_CONTAINER", "LINUX_CONTAINER", "LINUX_GPU_CONTAINER", "ARM_CONTAINER"
resp.project.environment.image #=> String
resp.project.environment.compute_type #=> String, one of "BUILD_GENERAL1_SMALL", "BUILD_GENERAL1_MEDIUM", "BUILD_GENERAL1_LARGE", "BUILD_GENERAL1_2XLARGE"
resp.project.environment.environment_variables #=> Array
resp.project.environment.environment_variables[0].name #=> String
resp.project.environment.environment_variables[0].value #=> String
resp.project.environment.environment_variables[0].type #=> String, one of "PLAINTEXT", "PARAMETER_STORE", "SECRETS_MANAGER"
resp.project.environment.privileged_mode #=> Boolean
resp.project.environment.certificate #=> String
resp.project.environment.registry_credential.credential #=> String
resp.project.environment.registry_credential.credential_provider #=> String, one of "SECRETS_MANAGER"
resp.project.environment.image_pull_credentials_type #=> String, one of "CODEBUILD", "SERVICE_ROLE"
resp.project.service_role #=> String
resp.project.timeout_in_minutes #=> Integer
resp.project.queued_timeout_in_minutes #=> Integer
resp.project.encryption_key #=> String
resp.project.tags #=> Array
resp.project.tags[0].key #=> String
resp.project.tags[0].value #=> String
resp.project.created #=> Time
resp.project.last_modified #=> Time
resp.project.webhook.url #=> String
resp.project.webhook.payload_url #=> String
resp.project.webhook.secret #=> String
resp.project.webhook.branch_filter #=> String
resp.project.webhook.filter_groups #=> Array
resp.project.webhook.filter_groups[0] #=> Array
resp.project.webhook.filter_groups[0][0].type #=> String, one of "EVENT", "BASE_REF", "HEAD_REF", "ACTOR_ACCOUNT_ID", "FILE_PATH", "COMMIT_MESSAGE"
resp.project.webhook.filter_groups[0][0].pattern #=> String
resp.project.webhook.filter_groups[0][0].exclude_matched_pattern #=> Boolean
resp.project.webhook.last_modified_secret #=> Time
resp.project.vpc_config.vpc_id #=> String
resp.project.vpc_config.subnets #=> Array
resp.project.vpc_config.subnets[0] #=> String
resp.project.vpc_config.security_group_ids #=> Array
resp.project.vpc_config.security_group_ids[0] #=> String
resp.project.badge.badge_enabled #=> Boolean
resp.project.badge.badge_request_url #=> String
resp.project.logs_config.cloud_watch_logs.status #=> String, one of "ENABLED", "DISABLED"
resp.project.logs_config.cloud_watch_logs.group_name #=> String
resp.project.logs_config.cloud_watch_logs.stream_name #=> String
resp.project.logs_config.s3_logs.status #=> String, one of "ENABLED", "DISABLED"
resp.project.logs_config.s3_logs.location #=> String
resp.project.logs_config.s3_logs.encryption_disabled #=> Boolean
resp.project.file_system_locations #=> Array
resp.project.file_system_locations[0].type #=> String, one of "EFS"
resp.project.file_system_locations[0].location #=> String
resp.project.file_system_locations[0].mount_point #=> String
resp.project.file_system_locations[0].identifier #=> String
resp.project.file_system_locations[0].mount_options #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the build project.

    You cannot change a build project's name.

  • :description (String)

    A new or replacement description of the build project.

  • :source (Types::ProjectSource)

    Information to be changed about the build input source code for the build project.

  • :secondary_sources (Array<Types::ProjectSource>)

    An array of ProjectSource objects.

  • :source_version (String)

    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 in the AWS CodeBuild User Guide.

  • :secondary_source_versions (Array<Types::ProjectSourceVersion>)

    An array of ProjectSourceVersion objects. If secondarySourceVersions is specified at the build level, then they take over these secondarySourceVersions (at the project level).

  • :artifacts (Types::ProjectArtifacts)

    Information to be changed about the build output artifacts for the build project.

  • :secondary_artifacts (Array<Types::ProjectArtifacts>)

    An array of ProjectSource objects.

  • :cache (Types::ProjectCache)

    Stores recently used information so that it can be quickly accessed at a later time.

  • :environment (Types::ProjectEnvironment)

    Information to be changed about the build environment for the build project.

  • :service_role (String)

    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.

  • :timeout_in_minutes (Integer)

    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.

  • :queued_timeout_in_minutes (Integer)

    The number of minutes a build is allowed to be queued before it times out.

  • :encryption_key (String)

    The AWS Key Management Service (AWS KMS) customer master key (CMK) to be used for encrypting the build output artifacts.

    You can use a cross-account KMS key to encrypt the build output artifacts if your service role has permission to that key.

    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).

  • :tags (Array<Types::Tag>)

    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.

  • :vpc_config (Types::VpcConfig)

    VpcConfig enables AWS CodeBuild to access resources in an Amazon VPC.

  • :badge_enabled (Boolean)

    Set this to true to generate a publicly accessible URL for your project's build badge.

  • :logs_config (Types::LogsConfig)

    Information about logs for the build project. A project can create logs in Amazon CloudWatch Logs, logs in an S3 bucket, or both.

  • :file_system_locations (Array<Types::ProjectFileSystemLocation>)

    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.

Returns:

See Also:



3366
3367
3368
3369
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 3366

def update_project(params = {}, options = {})
  req = build_request(:update_project, params)
  req.send_request(options)
end

#update_report_group(params = {}) ⇒ Types::UpdateReportGroupOutput

Updates a report group.

Examples:

Request syntax with placeholder values


resp = client.update_report_group({
  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",
    },
  ],
})

Response structure


resp.report_group.arn #=> String
resp.report_group.name #=> String
resp.report_group.type #=> String, one of "TEST"
resp.report_group.export_config.export_config_type #=> String, one of "S3", "NO_EXPORT"
resp.report_group.export_config.s3_destination.bucket #=> String
resp.report_group.export_config.s3_destination.path #=> String
resp.report_group.export_config.s3_destination.packaging #=> String, one of "ZIP", "NONE"
resp.report_group.export_config.s3_destination.encryption_key #=> String
resp.report_group.export_config.s3_destination.encryption_disabled #=> Boolean
resp.report_group.created #=> Time
resp.report_group.last_modified #=> Time
resp.report_group.tags #=> Array
resp.report_group.tags[0].key #=> String
resp.report_group.tags[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :arn (required, String)

    The ARN of the report group to update.

  • :export_config (Types::ReportExportConfig)

    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.

  • :tags (Array<Types::Tag>)

    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.

Returns:

See Also:



3437
3438
3439
3440
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 3437

def update_report_group(params = {}, options = {})
  req = build_request(:update_report_group, params)
  req.send_request(options)
end

#update_webhook(params = {}) ⇒ Types::UpdateWebhookOutput

Updates the webhook associated with an AWS CodeBuild build project.

If you use Bitbucket for your repository, rotateSecret is ignored.

Examples:

Request syntax with placeholder values


resp = client.update_webhook({
  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,
      },
    ],
  ],
})

Response structure


resp.webhook.url #=> String
resp.webhook.payload_url #=> String
resp.webhook.secret #=> String
resp.webhook.branch_filter #=> String
resp.webhook.filter_groups #=> Array
resp.webhook.filter_groups[0] #=> Array
resp.webhook.filter_groups[0][0].type #=> String, one of "EVENT", "BASE_REF", "HEAD_REF", "ACTOR_ACCOUNT_ID", "FILE_PATH", "COMMIT_MESSAGE"
resp.webhook.filter_groups[0][0].pattern #=> String
resp.webhook.filter_groups[0][0].exclude_matched_pattern #=> Boolean
resp.webhook.last_modified_secret #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :project_name (required, String)

    The name of the AWS CodeBuild project.

  • :branch_filter (String)

    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.

    It is recommended that you use filterGroups instead of branchFilter.

  • :rotate_secret (Boolean)

    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.

  • :filter_groups (Array<Array>)

    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.

Returns:

See Also:



3510
3511
3512
3513
# File 'gems/aws-sdk-codebuild/lib/aws-sdk-codebuild/client.rb', line 3510

def update_webhook(params = {}, options = {})
  req = build_request(:update_webhook, params)
  req.send_request(options)
end