Class: Google::Apis::RunV1::TrafficTarget

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/run_v1/classes.rb,
lib/google/apis/run_v1/representations.rb,
lib/google/apis/run_v1/representations.rb

Overview

TrafficTarget holds a single entry of the routing table for a Route.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ TrafficTarget

Returns a new instance of TrafficTarget.



3762
3763
3764
# File 'lib/google/apis/run_v1/classes.rb', line 3762

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#configuration_nameString

ConfigurationName of a configuration to whose latest revision we will send this portion of traffic. When the "status.latestReadyRevisionName" of the referenced configuration changes, we will automatically migrate traffic from the prior "latest ready" revision to the new one. This field is never set in Route's status, only its spec. This is mutually exclusive with RevisionName. Cloud Run currently supports a single ConfigurationName. Corresponds to the JSON property configurationName

Returns:

  • (String)


3725
3726
3727
# File 'lib/google/apis/run_v1/classes.rb', line 3725

def configuration_name
  @configuration_name
end

#latest_revisionBoolean Also known as: latest_revision?

Optional. LatestRevision may be provided to indicate that the latest ready Revision of the Configuration should be used for this traffic target. When provided LatestRevision must be true if RevisionName is empty; it must be false when RevisionName is non-empty. Corresponds to the JSON property latestRevision

Returns:

  • (Boolean)


3733
3734
3735
# File 'lib/google/apis/run_v1/classes.rb', line 3733

def latest_revision
  @latest_revision
end

#percentFixnum

Percent specifies percent of the traffic to this Revision or Configuration. This defaults to zero if unspecified. Corresponds to the JSON property percent

Returns:

  • (Fixnum)


3740
3741
3742
# File 'lib/google/apis/run_v1/classes.rb', line 3740

def percent
  @percent
end

#revision_nameString

RevisionName of a specific revision to which to send this portion of traffic. This is mutually exclusive with ConfigurationName. Corresponds to the JSON property revisionName

Returns:

  • (String)


3746
3747
3748
# File 'lib/google/apis/run_v1/classes.rb', line 3746

def revision_name
  @revision_name
end

#tagString

Optional. Tag is used to expose a dedicated url for referencing this target exclusively. Corresponds to the JSON property tag

Returns:

  • (String)


3752
3753
3754
# File 'lib/google/apis/run_v1/classes.rb', line 3752

def tag
  @tag
end

#urlString

Output only. URL displays the URL for accessing tagged traffic targets. URL is displayed in status, and is disallowed on spec. URL must contain a scheme (e.g. https://) and a hostname, but may not contain anything else (e.g. basic auth, url path, etc.) Corresponds to the JSON property url

Returns:

  • (String)


3760
3761
3762
# File 'lib/google/apis/run_v1/classes.rb', line 3760

def url
  @url
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3767
3768
3769
3770
3771
3772
3773
3774
# File 'lib/google/apis/run_v1/classes.rb', line 3767

def update!(**args)
  @configuration_name = args[:configuration_name] if args.key?(:configuration_name)
  @latest_revision = args[:latest_revision] if args.key?(:latest_revision)
  @percent = args[:percent] if args.key?(:percent)
  @revision_name = args[:revision_name] if args.key?(:revision_name)
  @tag = args[:tag] if args.key?(:tag)
  @url = args[:url] if args.key?(:url)
end