You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.

Class: Aws::CodeGuruReviewer::Client

Inherits:
Seahorse::Client::Base show all
Defined in:
(unknown)

Overview

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

codegurureviewer = Aws::CodeGuruReviewer::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

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

Region

You can configure a default region in the following locations:

  • ENV['AWS_REGION']
  • Aws.config[:region]

Go here for a list of supported regions.

Credentials

Default credentials are loaded automatically from the following locations:

  • ENV['AWS_ACCESS_KEY_ID'] and ENV['AWS_SECRET_ACCESS_KEY']
  • Aws.config[:credentials]
  • The shared credentials ini file at ~/.aws/credentials (more information)
  • From an instance profile when running on EC2

You can also construct a credentials object from one of the following classes:

Alternatively, you configure credentials with :access_key_id and :secret_access_key:

# load credentials from disk
creds = YAML.load(File.read('/path/to/secrets'))

Aws::CodeGuruReviewer::Client.new(
  access_key_id: creds['access_key_id'],
  secret_access_key: creds['secret_access_key']
)

Always load your credentials from outside your application. Avoid configuring credentials statically and never commit them to source control.

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

Constructor collapse

API Operations collapse

Instance Method Summary collapse

Methods inherited from Seahorse::Client::Base

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

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(options = {}) ⇒ Aws::CodeGuruReviewer::Client

Constructs an API client.

Options Hash (options):

  • :access_key_id (String)

    Used to set credentials statically. See Plugins::RequestSigner for more details.

  • :active_endpoint_cache (Boolean)

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

  • :convert_params (Boolean) — default: true

    When true, an attempt is made to coerce request parameters into the required types. See Plugins::ParamConverter for more details.

  • :credentials (required, Credentials)

    Your AWS credentials. The following locations will be searched in order for credentials:

    • :access_key_id, :secret_access_key, and :session_token options
    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
    • HOME/.aws/credentials shared credentials file
    • EC2 instance profile credentials See Plugins::RequestSigner for more details.
  • :disable_host_prefix_injection (Boolean)

    Set to true to disable SDK automatically adding host prefix to default service endpoint when available. See Plugins::EndpointPattern for more details.

  • :endpoint (String)

    A default endpoint is constructed from the :region. See Plugins::RegionalEndpoint for more details.

  • :endpoint_cache_max_entries (Integer)

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000. See Plugins::EndpointDiscovery for more details.

  • :endpoint_cache_max_threads (Integer)

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10. See Plugins::EndpointDiscovery for more details.

  • :endpoint_cache_poll_interval (Integer)

    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. See Plugins::EndpointDiscovery for more details.

  • :endpoint_discovery (Boolean)

    When set to true, endpoint discovery will be enabled for operations when available. Defaults to false. See Plugins::EndpointDiscovery for more details.

  • :http_continue_timeout (Float) — default: 1

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_idle_timeout (Integer) — default: 5

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_open_timeout (Integer) — default: 15

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_proxy (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_read_timeout (Integer) — default: 60

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_wire_trace (Boolean) — default: false

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the logger at. See Plugins::Logging for more details.

  • :log_formatter (Logging::LogFormatter)

    The log formatter. Defaults to Seahorse::Client::Logging::Formatter.default. See Plugins::Logging for more details.

  • :logger (Logger) — default: nil

    The Logger instance to send log messages to. If this option is not set, logging will be disabled. See Plugins::Logging for more details.

  • :profile (String)

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, 'default' is used. See Plugins::RequestSigner for more details.

  • :raise_response_errors (Boolean) — default: true

    When true, response errors are raised. See Seahorse::Client::Plugins::RaiseResponseErrors for more details.

  • :region (required, String)

    The AWS region to connect to. The region is used to construct the client endpoint. Defaults to ENV['AWS_REGION']. Also checks AMAZON_REGION and AWS_DEFAULT_REGION. See Plugins::RegionalEndpoint for more details.

  • :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 and auth errors from expired credentials. See Plugins::RetryErrors for more details.

  • :secret_access_key (String)

    Used to set credentials statically. See Plugins::RequestSigner for more details.

  • :session_token (String)

    Used to set credentials statically. See Plugins::RequestSigner for more details.

  • :ssl_ca_bundle (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :ssl_ca_directory (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :ssl_ca_store (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :ssl_verify_peer (Boolean) — default: true

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :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. See Plugins::StubResponses for more details.

  • :validate_params (Boolean) — default: true

    When true, request parameters are validated before sending the request. See Plugins::ParamValidator for more details.

Instance Method Details

#associate_repository(options = {}) ⇒ Types::AssociateRepositoryResponse

Use to associate an AWS CodeCommit repository or a repostory managed by AWS CodeStar Connections with Amazon CodeGuru Reviewer. When you associate a repository, CodeGuru Reviewer reviews source code changes in the repository's pull requests and provides automatic recommendations. You can view recommendations using the CodeGuru Reviewer console. For more information, see Recommendations in Amazon CodeGuru Reviewer in the Amazon CodeGuru Reviewer User Guide.

If you associate a CodeCommit repository, it must be in the same AWS Region and AWS account where its CodeGuru Reviewer code reviews are configured.

Bitbucket and GitHub Enterprise Server repositories are managed by AWS CodeStar Connections to connect to CodeGuru Reviewer. For more information, see Connect to a repository source provider in the Amazon CodeGuru Reviewer User Guide.

You cannot use the CodeGuru Reviewer SDK or the AWS CLI to associate a GitHub repository with Amazon CodeGuru Reviewer. To associate a GitHub repository, use the console. For more information, see Getting started with CodeGuru Reviewer in the CodeGuru Reviewer User Guide.

Examples:

Request syntax with placeholder values


resp = client.associate_repository({
  repository: { # required
    code_commit: {
      name: "Name", # required
    },
    bitbucket: {
      name: "Name", # required
      connection_arn: "ConnectionArn", # required
      owner: "Owner", # required
    },
    git_hub_enterprise_server: {
      name: "Name", # required
      connection_arn: "ConnectionArn", # required
      owner: "Owner", # required
    },
  },
  client_request_token: "ClientRequestToken",
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.repository_association.association_id #=> String
resp.repository_association.association_arn #=> String
resp.repository_association.connection_arn #=> String
resp.repository_association.name #=> String
resp.repository_association.owner #=> String
resp.repository_association.provider_type #=> String, one of "CodeCommit", "GitHub", "Bitbucket", "GitHubEnterpriseServer"
resp.repository_association.state #=> String, one of "Associated", "Associating", "Failed", "Disassociating", "Disassociated"
resp.repository_association.state_reason #=> String
resp.repository_association.last_updated_time_stamp #=> Time
resp.repository_association.created_time_stamp #=> Time
resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Options Hash (options):

  • :repository (required, Types::Repository)

    The repository to associate.

  • :client_request_token (String)

    This parameter will be auto-filled on your behalf with a random UUIDv4 when no value is provided. Amazon CodeGuru Reviewer uses this value to prevent the accidental creation of duplicate repository associations if there are failures and retries.

  • :tags (Hash<String,String>)

    An array of key-value pairs used to tag an associated repository. A tag is a custom attribute label with two parts:

    • A tag key (for example, CostCenter, Environment, Project, or Secret). Tag keys are case sensitive.

    • An optional field known as a tag value (for example, 111122223333, Production, or a team name). Omitting the tag value is the same as using an empty string. Like tag keys, tag values are case sensitive.

Returns:

See Also:

#create_code_review(options = {}) ⇒ Types::CreateCodeReviewResponse

Use to create a code review with a CodeReviewType of RepositoryAnalysis. This type of code review analyzes all code under a specified branch in an associated repository. PullRequest code reviews are automatically triggered by a pull request so cannot be created using this method.

Examples:

Request syntax with placeholder values


resp = client.create_code_review({
  name: "CodeReviewName", # required
  repository_association_arn: "AssociationArn", # required
  type: { # required
    repository_analysis: { # required
      repository_head: { # required
        branch_name: "BranchName", # required
      },
    },
  },
  client_request_token: "ClientRequestToken",
})

Response structure


resp.code_review.name #=> String
resp.code_review.code_review_arn #=> String
resp.code_review.repository_name #=> String
resp.code_review.owner #=> String
resp.code_review.provider_type #=> String, one of "CodeCommit", "GitHub", "Bitbucket", "GitHubEnterpriseServer"
resp.code_review.state #=> String, one of "Completed", "Pending", "Failed", "Deleting"
resp.code_review.state_reason #=> String
resp.code_review.created_time_stamp #=> Time
resp.code_review.last_updated_time_stamp #=> Time
resp.code_review.type #=> String, one of "PullRequest", "RepositoryAnalysis"
resp.code_review.pull_request_id #=> String
resp.code_review.source_code_type.commit_diff.source_commit #=> String
resp.code_review.source_code_type.commit_diff.destination_commit #=> String
resp.code_review.source_code_type.repository_head.branch_name #=> String
resp.code_review.association_arn #=> String
resp.code_review.metrics.metered_lines_of_code_count #=> Integer
resp.code_review.metrics.findings_count #=> Integer

Options Hash (options):

  • :name (required, String)

    The name of the code review. The name of each code review in your AWS account must be unique.

  • :repository_association_arn (required, String)

    The Amazon Resource Name (ARN) of the RepositoryAssociation object. You can retrieve this ARN by calling ListRepositoryAssociations .

    A code review can only be created on an associated repository. This is the ARN of the associated repository.

  • :type (required, Types::CodeReviewType)

    The type of code review to create. This is specified using a CodeReviewType object. You can create a code review only of type RepositoryAnalysis.

  • :client_request_token (String)

    This parameter will be auto-filled on your behalf with a random UUIDv4 when no value is provided. Amazon CodeGuru Reviewer uses this value to prevent the accidental creation of duplicate code reviews if there are failures and retries.

Returns:

See Also:

#describe_code_review(options = {}) ⇒ Types::DescribeCodeReviewResponse

Returns the metadata associated with the code review along with its status.

Examples:

Request syntax with placeholder values


resp = client.describe_code_review({
  code_review_arn: "Arn", # required
})

Response structure


resp.code_review.name #=> String
resp.code_review.code_review_arn #=> String
resp.code_review.repository_name #=> String
resp.code_review.owner #=> String
resp.code_review.provider_type #=> String, one of "CodeCommit", "GitHub", "Bitbucket", "GitHubEnterpriseServer"
resp.code_review.state #=> String, one of "Completed", "Pending", "Failed", "Deleting"
resp.code_review.state_reason #=> String
resp.code_review.created_time_stamp #=> Time
resp.code_review.last_updated_time_stamp #=> Time
resp.code_review.type #=> String, one of "PullRequest", "RepositoryAnalysis"
resp.code_review.pull_request_id #=> String
resp.code_review.source_code_type.commit_diff.source_commit #=> String
resp.code_review.source_code_type.commit_diff.destination_commit #=> String
resp.code_review.source_code_type.repository_head.branch_name #=> String
resp.code_review.association_arn #=> String
resp.code_review.metrics.metered_lines_of_code_count #=> Integer
resp.code_review.metrics.findings_count #=> Integer

Options Hash (options):

  • :code_review_arn (required, String)

    The Amazon Resource Name (ARN) of the CodeReview object.

Returns:

See Also:

#describe_recommendation_feedback(options = {}) ⇒ Types::DescribeRecommendationFeedbackResponse

Describes the customer feedback for a CodeGuru Reviewer recommendation.

Examples:

Request syntax with placeholder values


resp = client.describe_recommendation_feedback({
  code_review_arn: "Arn", # required
  recommendation_id: "RecommendationId", # required
  user_id: "UserId",
})

Response structure


resp.recommendation_feedback.code_review_arn #=> String
resp.recommendation_feedback.recommendation_id #=> String
resp.recommendation_feedback.reactions #=> Array
resp.recommendation_feedback.reactions[0] #=> String, one of "ThumbsUp", "ThumbsDown"
resp.recommendation_feedback.user_id #=> String
resp.recommendation_feedback.created_time_stamp #=> Time
resp.recommendation_feedback.last_updated_time_stamp #=> Time

Options Hash (options):

  • :code_review_arn (required, String)

    The Amazon Resource Name (ARN) of the CodeReview object.

  • :recommendation_id (required, String)

    The recommendation ID that can be used to track the provided recommendations and then to collect the feedback.

  • :user_id (String)

    Optional parameter to describe the feedback for a given user. If this is not supplied, it defaults to the user making the request.

    The UserId is an IAM principal that can be specified as an AWS account ID or an Amazon Resource Name (ARN). For more information, see Specifying a Principal in the AWS Identity and Access Management User Guide.

Returns:

See Also:

#describe_repository_association(options = {}) ⇒ Types::DescribeRepositoryAssociationResponse

Returns a RepositoryAssociation object that contains information about the requested repository association.

Examples:

Request syntax with placeholder values


resp = client.describe_repository_association({
  association_arn: "AssociationArn", # required
})

Response structure


resp.repository_association.association_id #=> String
resp.repository_association.association_arn #=> String
resp.repository_association.connection_arn #=> String
resp.repository_association.name #=> String
resp.repository_association.owner #=> String
resp.repository_association.provider_type #=> String, one of "CodeCommit", "GitHub", "Bitbucket", "GitHubEnterpriseServer"
resp.repository_association.state #=> String, one of "Associated", "Associating", "Failed", "Disassociating", "Disassociated"
resp.repository_association.state_reason #=> String
resp.repository_association.last_updated_time_stamp #=> Time
resp.repository_association.created_time_stamp #=> Time
resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Options Hash (options):

Returns:

See Also:

#disassociate_repository(options = {}) ⇒ Types::DisassociateRepositoryResponse

Removes the association between Amazon CodeGuru Reviewer and a repository.

Examples:

Request syntax with placeholder values


resp = client.disassociate_repository({
  association_arn: "AssociationArn", # required
})

Response structure


resp.repository_association.association_id #=> String
resp.repository_association.association_arn #=> String
resp.repository_association.connection_arn #=> String
resp.repository_association.name #=> String
resp.repository_association.owner #=> String
resp.repository_association.provider_type #=> String, one of "CodeCommit", "GitHub", "Bitbucket", "GitHubEnterpriseServer"
resp.repository_association.state #=> String, one of "Associated", "Associating", "Failed", "Disassociating", "Disassociated"
resp.repository_association.state_reason #=> String
resp.repository_association.last_updated_time_stamp #=> Time
resp.repository_association.created_time_stamp #=> Time
resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Options Hash (options):

Returns:

See Also:

#list_code_reviews(options = {}) ⇒ Types::ListCodeReviewsResponse

Lists all the code reviews that the customer has created in the past 90 days.

Examples:

Request syntax with placeholder values


resp = client.list_code_reviews({
  provider_types: ["CodeCommit"], # accepts CodeCommit, GitHub, Bitbucket, GitHubEnterpriseServer
  states: ["Completed"], # accepts Completed, Pending, Failed, Deleting
  repository_names: ["Name"],
  type: "PullRequest", # required, accepts PullRequest, RepositoryAnalysis
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.code_review_summaries #=> Array
resp.code_review_summaries[0].name #=> String
resp.code_review_summaries[0].code_review_arn #=> String
resp.code_review_summaries[0].repository_name #=> String
resp.code_review_summaries[0].owner #=> String
resp.code_review_summaries[0].provider_type #=> String, one of "CodeCommit", "GitHub", "Bitbucket", "GitHubEnterpriseServer"
resp.code_review_summaries[0].state #=> String, one of "Completed", "Pending", "Failed", "Deleting"
resp.code_review_summaries[0].created_time_stamp #=> Time
resp.code_review_summaries[0].last_updated_time_stamp #=> Time
resp.code_review_summaries[0].type #=> String, one of "PullRequest", "RepositoryAnalysis"
resp.code_review_summaries[0].pull_request_id #=> String
resp.code_review_summaries[0].metrics_summary.metered_lines_of_code_count #=> Integer
resp.code_review_summaries[0].metrics_summary.findings_count #=> Integer
resp.next_token #=> String

Options Hash (options):

  • :provider_types (Array<String>)

    List of provider types for filtering that needs to be applied before displaying the result. For example, providerTypes=[GitHub] lists code reviews from GitHub.

  • :states (Array<String>)

    List of states for filtering that needs to be applied before displaying the result. For example, states=[Pending] lists code reviews in the Pending state.

    The valid code review states are:

    • Completed: The code review is complete.

    • Pending: The code review started and has not completed or failed.

    • Failed: The code review failed.

    • Deleting: The code review is being deleted.

  • :repository_names (Array<String>)

    List of repository names for filtering that needs to be applied before displaying the result.

  • :type (required, String)

    The type of code reviews to list in the response.

  • :max_results (Integer)

    The maximum number of results that are returned per call. The default is 100.

  • :next_token (String)

    If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

Returns:

See Also:

#list_recommendation_feedback(options = {}) ⇒ Types::ListRecommendationFeedbackResponse

Returns a list of RecommendationFeedbackSummary objects that contain customer recommendation feedback for all CodeGuru Reviewer users.

Examples:

Request syntax with placeholder values


resp = client.list_recommendation_feedback({
  next_token: "NextToken",
  max_results: 1,
  code_review_arn: "Arn", # required
  user_ids: ["UserId"],
  recommendation_ids: ["RecommendationId"],
})

Response structure


resp.recommendation_feedback_summaries #=> Array
resp.recommendation_feedback_summaries[0].recommendation_id #=> String
resp.recommendation_feedback_summaries[0].reactions #=> Array
resp.recommendation_feedback_summaries[0].reactions[0] #=> String, one of "ThumbsUp", "ThumbsDown"
resp.recommendation_feedback_summaries[0].user_id #=> String
resp.next_token #=> String

Options Hash (options):

  • :next_token (String)

    If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

  • :max_results (Integer)

    The maximum number of results that are returned per call. The default is 100.

  • :code_review_arn (required, String)

    The Amazon Resource Name (ARN) of the CodeReview object.

  • :user_ids (Array<String>)

    An AWS user\'s account ID or Amazon Resource Name (ARN). Use this ID to query the recommendation feedback for a code review from that user.

    The UserId is an IAM principal that can be specified as an AWS account ID or an Amazon Resource Name (ARN). For more information, see Specifying a Principal in the AWS Identity and Access Management User Guide.

  • :recommendation_ids (Array<String>)

    Used to query the recommendation feedback for a given recommendation.

Returns:

See Also:

#list_recommendations(options = {}) ⇒ Types::ListRecommendationsResponse

Returns the list of all recommendations for a completed code review.

Examples:

Request syntax with placeholder values


resp = client.list_recommendations({
  next_token: "NextToken",
  max_results: 1,
  code_review_arn: "Arn", # required
})

Response structure


resp.recommendation_summaries #=> Array
resp.recommendation_summaries[0].file_path #=> String
resp.recommendation_summaries[0].recommendation_id #=> String
resp.recommendation_summaries[0].start_line #=> Integer
resp.recommendation_summaries[0].end_line #=> Integer
resp.recommendation_summaries[0].description #=> String
resp.next_token #=> String

Options Hash (options):

  • :next_token (String)

    Pagination token.

  • :max_results (Integer)

    The maximum number of results that are returned per call. The default is 100.

  • :code_review_arn (required, String)

    The Amazon Resource Name (ARN) of the CodeReview object.

Returns:

See Also:

#list_repository_associations(options = {}) ⇒ Types::ListRepositoryAssociationsResponse

Returns a list of RepositoryAssociationSummary objects that contain summary information about a repository association. You can filter the returned list by ProviderType , Name , State , and Owner .

Examples:

Request syntax with placeholder values


resp = client.list_repository_associations({
  provider_types: ["CodeCommit"], # accepts CodeCommit, GitHub, Bitbucket, GitHubEnterpriseServer
  states: ["Associated"], # accepts Associated, Associating, Failed, Disassociating, Disassociated
  names: ["Name"],
  owners: ["Owner"],
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.repository_association_summaries #=> Array
resp.repository_association_summaries[0].association_arn #=> String
resp.repository_association_summaries[0].connection_arn #=> String
resp.repository_association_summaries[0].last_updated_time_stamp #=> Time
resp.repository_association_summaries[0].association_id #=> String
resp.repository_association_summaries[0].name #=> String
resp.repository_association_summaries[0].owner #=> String
resp.repository_association_summaries[0].provider_type #=> String, one of "CodeCommit", "GitHub", "Bitbucket", "GitHubEnterpriseServer"
resp.repository_association_summaries[0].state #=> String, one of "Associated", "Associating", "Failed", "Disassociating", "Disassociated"
resp.next_token #=> String

Options Hash (options):

  • :provider_types (Array<String>)

    List of provider types to use as a filter.

  • :states (Array<String>)

    List of repository association states to use as a filter.

    The valid repository association states are:

    • Associated: The repository association is complete.

    • Associating: CodeGuru Reviewer is:

      • Setting up pull request notifications. This is required for pull requests to trigger a CodeGuru Reviewer review.

        If your repository ProviderType is GitHub, GitHub Enterprise Server, or Bitbucket, CodeGuru Reviewer creates webhooks in your repository to trigger CodeGuru Reviewer reviews. If you delete these webhooks, reviews of code in your repository cannot be triggered.

      • Setting up source code access. This is required for CodeGuru Reviewer to securely clone code in your repository.

    • Failed: The repository failed to associate or disassociate.

    • Disassociating: CodeGuru Reviewer is removing the repository\'s pull request notifications and source code access.

    • Disassociated: CodeGuru Reviewer successfully disassociated the repository. You can create a new association with this repository if you want to review source code in it later. You can control access to code reviews created in an associated repository with tags after it has been disassociated. For more information, see Using tags to control access to associated repositories in the Amazon CodeGuru Reviewer User Guide.

  • :names (Array<String>)

    List of repository names to use as a filter.

  • :owners (Array<String>)

    List of owners to use as a filter. For AWS CodeCommit, it is the name of the CodeCommit account that was used to associate the repository. For other repository source providers, such as Bitbucket and GitHub Enterprise Server, this is name of the account that was used to associate the repository.

  • :max_results (Integer)

    The maximum number of repository association results returned by ListRepositoryAssociations in paginated output. When this parameter is used, ListRepositoryAssociations only returns maxResults results in a single page with a nextToken response element. The remaining results of the initial request can be seen by sending another ListRepositoryAssociations request with the returned nextToken value. This value can be between 1 and 100. If this parameter is not used, ListRepositoryAssociations returns up to 100 results and a nextToken value if applicable.

  • :next_token (String)

    The nextToken value returned from a previous paginated ListRepositoryAssociations request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

    Treat this token as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

Returns:

See Also:

#list_tags_for_resource(options = {}) ⇒ Types::ListTagsForResourceResponse

Returns the list of tags associated with an associated repository resource.

Examples:

Request syntax with placeholder values


resp = client.list_tags_for_resource({
  resource_arn: "AssociationArn", # required
})

Response structure


resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Options Hash (options):

Returns:

See Also:

#put_recommendation_feedback(options = {}) ⇒ Struct

Stores customer feedback for a CodeGuru Reviewer recommendation. When this API is called again with different reactions the previous feedback is overwritten.

Examples:

Request syntax with placeholder values


resp = client.put_recommendation_feedback({
  code_review_arn: "Arn", # required
  recommendation_id: "RecommendationId", # required
  reactions: ["ThumbsUp"], # required, accepts ThumbsUp, ThumbsDown
})

Options Hash (options):

  • :code_review_arn (required, String)

    The Amazon Resource Name (ARN) of the CodeReview object.

  • :recommendation_id (required, String)

    The recommendation ID that can be used to track the provided recommendations and then to collect the feedback.

  • :reactions (required, Array<String>)

    List for storing reactions. Reactions are utf-8 text code for emojis. If you send an empty list it clears all your feedback.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#tag_resource(options = {}) ⇒ Struct

Adds one or more tags to an associated repository.

Examples:

Request syntax with placeholder values


resp = client.tag_resource({
  resource_arn: "AssociationArn", # required
  tags: { # required
    "TagKey" => "TagValue",
  },
})

Options Hash (options):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the RepositoryAssociation object. You can retrieve this ARN by calling ListRepositoryAssociations .

  • :tags (required, Hash<String,String>)

    An array of key-value pairs used to tag an associated repository. A tag is a custom attribute label with two parts:

    • A tag key (for example, CostCenter, Environment, Project, or Secret). Tag keys are case sensitive.

    • An optional field known as a tag value (for example, 111122223333, Production, or a team name). Omitting the tag value is the same as using an empty string. Like tag keys, tag values are case sensitive.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#untag_resource(options = {}) ⇒ Struct

Removes a tag from an associated repository.

Examples:

Request syntax with placeholder values


resp = client.untag_resource({
  resource_arn: "AssociationArn", # required
  tag_keys: ["TagKey"], # required
})

Options Hash (options):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the RepositoryAssociation object. You can retrieve this ARN by calling ListRepositoryAssociations .

  • :tag_keys (required, Array<String>)

    A list of the keys for each tag you want to remove from an associated repository.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#wait_until(waiter_name, params = {}) {|waiter| ... } ⇒ Boolean

Waiters polls an API operation until a resource enters a desired state.

Basic Usage

Waiters will poll until they are succesful, they fail by entering a terminal state, or until a maximum number of attempts are made.

# polls in a loop, sleeping between attempts client.waiter_until(waiter_name, params)

Configuration

You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. You configure waiters by passing a block to #wait_until:

# poll for ~25 seconds
client.wait_until(...) do |w|
  w.max_attempts = 5
  w.delay = 5
end

Callbacks

You can be notified before each polling attempt and before each delay. If you throw :success or :failure from these callbacks, it will terminate the waiter.

started_at = Time.now
client.wait_until(...) do |w|

  # disable max attempts
  w.max_attempts = nil

  # poll for 1 hour, instead of a number of attempts
  w.before_wait do |attempts, response|
    throw :failure if Time.now - started_at > 3600
  end

end

Handling Errors

When a waiter is successful, it returns true. When a waiter fails, it raises an error. All errors raised extend from Waiters::Errors::WaiterFailed.

begin
  client.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
  # resource did not enter the desired state in time
end

Parameters:

  • waiter_name (Symbol)

    The name of the waiter. See #waiter_names for a full list of supported waiters.

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

    Additional request parameters. See the #waiter_names for a list of supported waiters and what request they call. The called request determines the list of accepted parameters.

Yield Parameters:

Returns:

  • (Boolean)

    Returns true if the waiter was successful.

Raises:

  • (Errors::FailureStateError)

    Raised when the waiter terminates because the waiter has entered a state that it will not transition out of, preventing success.

  • (Errors::TooManyAttemptsError)

    Raised when the configured maximum number of attempts have been made, and the waiter is not yet successful.

  • (Errors::UnexpectedError)

    Raised when an error is encounted while polling for a resource that is not expected.

  • (Errors::NoSuchWaiterError)

    Raised when you request to wait for an unknown state.

#waiter_namesArray<Symbol>

Returns the list of supported waiters. The following table lists the supported waiters and the client method they call:

Waiter NameClient MethodDefault Delay:Default Max Attempts:

Returns:

  • (Array<Symbol>)

    the list of supported waiters.