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

Class: Aws::AppMesh::Types::RouteSpec

Inherits:
Struct
  • Object
show all
Defined in:
(unknown)

Overview

Note:

When passing RouteSpec as input to an Aws::Client method, you can use a vanilla Hash:

{
  grpc_route: {
    action: { # required
      weighted_targets: [ # required
        {
          virtual_node: "ResourceName", # required
          weight: 1, # required
        },
      ],
    },
    match: { # required
      metadata: [
        {
          invert: false,
          match: {
            exact: "HeaderMatch",
            prefix: "HeaderMatch",
            range: {
              end: 1, # required
              start: 1, # required
            },
            regex: "HeaderMatch",
            suffix: "HeaderMatch",
          },
          name: "HeaderName", # required
        },
      ],
      method_name: "MethodName",
      service_name: "ServiceName",
    },
    retry_policy: {
      grpc_retry_events: ["cancelled"], # accepts cancelled, deadline-exceeded, internal, resource-exhausted, unavailable
      http_retry_events: ["HttpRetryPolicyEvent"],
      max_retries: 1, # required
      per_retry_timeout: { # required
        unit: "ms", # accepts ms, s
        value: 1,
      },
      tcp_retry_events: ["connection-error"], # accepts connection-error
    },
  },
  http2_route: {
    action: { # required
      weighted_targets: [ # required
        {
          virtual_node: "ResourceName", # required
          weight: 1, # required
        },
      ],
    },
    match: { # required
      headers: [
        {
          invert: false,
          match: {
            exact: "HeaderMatch",
            prefix: "HeaderMatch",
            range: {
              end: 1, # required
              start: 1, # required
            },
            regex: "HeaderMatch",
            suffix: "HeaderMatch",
          },
          name: "HeaderName", # required
        },
      ],
      method: "CONNECT", # accepts CONNECT, DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT, TRACE
      prefix: "String", # required
      scheme: "http", # accepts http, https
    },
    retry_policy: {
      http_retry_events: ["HttpRetryPolicyEvent"],
      max_retries: 1, # required
      per_retry_timeout: { # required
        unit: "ms", # accepts ms, s
        value: 1,
      },
      tcp_retry_events: ["connection-error"], # accepts connection-error
    },
  },
  http_route: {
    action: { # required
      weighted_targets: [ # required
        {
          virtual_node: "ResourceName", # required
          weight: 1, # required
        },
      ],
    },
    match: { # required
      headers: [
        {
          invert: false,
          match: {
            exact: "HeaderMatch",
            prefix: "HeaderMatch",
            range: {
              end: 1, # required
              start: 1, # required
            },
            regex: "HeaderMatch",
            suffix: "HeaderMatch",
          },
          name: "HeaderName", # required
        },
      ],
      method: "CONNECT", # accepts CONNECT, DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT, TRACE
      prefix: "String", # required
      scheme: "http", # accepts http, https
    },
    retry_policy: {
      http_retry_events: ["HttpRetryPolicyEvent"],
      max_retries: 1, # required
      per_retry_timeout: { # required
        unit: "ms", # accepts ms, s
        value: 1,
      },
      tcp_retry_events: ["connection-error"], # accepts connection-error
    },
  },
  priority: 1,
  tcp_route: {
    action: { # required
      weighted_targets: [ # required
        {
          virtual_node: "ResourceName", # required
          weight: 1, # required
        },
      ],
    },
  },
}

An object that represents a route specification. Specify one route type.

Returned by:

Instance Attribute Summary collapse

Instance Attribute Details

#grpc_routeTypes::GrpcRoute

An object that represents a GRPC route type.

Returns:

#http2_routeTypes::HttpRoute

An object that represents an HTTP or HTTP2 route type.

Returns:

  • (Types::HttpRoute)

    An object that represents an HTTP or HTTP2 route type.

    .

#http_routeTypes::HttpRoute

An object that represents an HTTP or HTTP2 route type.

Returns:

  • (Types::HttpRoute)

    An object that represents an HTTP or HTTP2 route type.

    .

#priorityInteger

Returns:

  • (Integer)

#tcp_routeTypes::TcpRoute

An object that represents a TCP route type.

Returns: