Class: Google::Apis::RunV1alpha1::TrafficTarget

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

Overview

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ TrafficTarget

Returns a new instance of TrafficTarget.



4737
4738
4739
# File 'generated/google/apis/run_v1alpha1/classes.rb', line 4737

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)


4685
4686
4687
# File 'generated/google/apis/run_v1alpha1/classes.rb', line 4685

def configuration_name
  @configuration_name
end

#latest_revisionBoolean Also known as: latest_revision?

LatestRevision may be optionally 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. +optional Corresponds to the JSON property latestRevision

Returns:

  • (Boolean)


4694
4695
4696
# File 'generated/google/apis/run_v1alpha1/classes.rb', line 4694

def latest_revision
  @latest_revision
end

#nameString

Name is optionally used to expose a dedicated hostname for referencing this target exclusively. Not currently supported by Cloud Run. +optional Corresponds to the JSON property name

Returns:

  • (String)


4703
4704
4705
# File 'generated/google/apis/run_v1alpha1/classes.rb', line 4703

def name
  @name
end

#percentFixnum

Percent specifies percent of the traffic to this Revision or Configuration. This defaults to zero if unspecified. Cloud Run currently requires 100 percent for a single ConfigurationName TrafficTarget entry. Corresponds to the JSON property percent

Returns:

  • (Fixnum)


4711
4712
4713
# File 'generated/google/apis/run_v1alpha1/classes.rb', line 4711

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. Providing RevisionName in spec is not currently supported by Cloud Run. Corresponds to the JSON property revisionName

Returns:

  • (String)


4718
4719
4720
# File 'generated/google/apis/run_v1alpha1/classes.rb', line 4718

def revision_name
  @revision_name
end

#tagString

Tag is optionally used to expose a dedicated url for referencing this target exclusively. Not currently supported in Cloud Run. +optional Corresponds to the JSON property tag

Returns:

  • (String)


4726
4727
4728
# File 'generated/google/apis/run_v1alpha1/classes.rb', line 4726

def tag
  @tag
end

#urlString

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

Returns:

  • (String)


4735
4736
4737
# File 'generated/google/apis/run_v1alpha1/classes.rb', line 4735

def url
  @url
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4742
4743
4744
4745
4746
4747
4748
4749
4750
# File 'generated/google/apis/run_v1alpha1/classes.rb', line 4742

def update!(**args)
  @configuration_name = args[:configuration_name] if args.key?(:configuration_name)
  @latest_revision = args[:latest_revision] if args.key?(:latest_revision)
  @name = args[:name] if args.key?(:name)
  @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