Class: Google::Apis::RunV2::GoogleCloudRunV2WorkerPool
- Inherits:
-
Object
- Object
- Google::Apis::RunV2::GoogleCloudRunV2WorkerPool
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/run_v2/classes.rb,
lib/google/apis/run_v2/representations.rb,
lib/google/apis/run_v2/representations.rb
Overview
WorkerPool acts as a top-level container that manages a set of configurations and revision templates which implement a pull-based workload. WorkerPool exists to provide a singular abstraction which can be access controlled, reasoned about, and which encapsulates software lifecycle decisions such as rollout policy and team resource ownership.
Instance Attribute Summary collapse
-
#annotations ⇒ Hash<String,String>
Optional.
-
#binary_authorization ⇒ Google::Apis::RunV2::GoogleCloudRunV2BinaryAuthorization
Settings for Binary Authorization feature.
-
#client ⇒ String
Arbitrary identifier for the API client.
-
#client_version ⇒ String
Arbitrary version identifier for the API client.
-
#conditions ⇒ Array<Google::Apis::RunV2::GoogleCloudRunV2Condition>
Output only.
-
#create_time ⇒ String
Output only.
-
#creator ⇒ String
Output only.
-
#custom_audiences ⇒ Array<String>
Not supported, and ignored by Cloud Run.
-
#delete_time ⇒ String
Output only.
-
#description ⇒ String
User-provided description of the WorkerPool.
-
#etag ⇒ String
Optional.
-
#expire_time ⇒ String
Output only.
-
#generation ⇒ Fixnum
Output only.
-
#instance_split_statuses ⇒ Array<Google::Apis::RunV2::GoogleCloudRunV2InstanceSplitStatus>
Output only.
-
#instance_splits ⇒ Array<Google::Apis::RunV2::GoogleCloudRunV2InstanceSplit>
Optional.
-
#labels ⇒ Hash<String,String>
Optional.
-
#last_modifier ⇒ String
Output only.
-
#latest_created_revision ⇒ String
Output only.
-
#latest_ready_revision ⇒ String
Output only.
-
#launch_stage ⇒ String
Optional.
-
#name ⇒ String
The fully qualified name of this WorkerPool.
-
#observed_generation ⇒ Fixnum
Output only.
-
#reconciling ⇒ Boolean
(also: #reconciling?)
Output only.
-
#satisfies_pzs ⇒ Boolean
(also: #satisfies_pzs?)
Output only.
-
#scaling ⇒ Google::Apis::RunV2::GoogleCloudRunV2WorkerPoolScaling
Worker pool scaling settings.
-
#template ⇒ Google::Apis::RunV2::GoogleCloudRunV2WorkerPoolRevisionTemplate
WorkerPoolRevisionTemplate describes the data a worker pool revision should have when created from a template.
-
#terminal_condition ⇒ Google::Apis::RunV2::GoogleCloudRunV2Condition
Defines a status condition for a resource.
-
#threat_detection_enabled ⇒ Boolean
(also: #threat_detection_enabled?)
Output only.
-
#uid ⇒ String
Output only.
-
#update_time ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleCloudRunV2WorkerPool
constructor
A new instance of GoogleCloudRunV2WorkerPool.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GoogleCloudRunV2WorkerPool
Returns a new instance of GoogleCloudRunV2WorkerPool.
3940 3941 3942 |
# File 'lib/google/apis/run_v2/classes.rb', line 3940 def initialize(**args) update!(**args) end |
Instance Attribute Details
#annotations ⇒ Hash<String,String>
Optional. Unstructured key value map that may be set by external tools to
store and arbitrary metadata. They are not queryable and should be preserved
when modifying objects. Cloud Run API v2 does not support annotations with
run.googleapis.com, cloud.googleapis.com, serving.knative.dev, or
autoscaling.knative.dev namespaces, and they will be rejected in new
resources. All system annotations in v1 now have a corresponding field in v2
WorkerPool. This field follows Kubernetes annotations' namespacing, limits,
and rules.
Corresponds to the JSON property annotations
3732 3733 3734 |
# File 'lib/google/apis/run_v2/classes.rb', line 3732 def annotations @annotations end |
#binary_authorization ⇒ Google::Apis::RunV2::GoogleCloudRunV2BinaryAuthorization
Settings for Binary Authorization feature.
Corresponds to the JSON property binaryAuthorization
3737 3738 3739 |
# File 'lib/google/apis/run_v2/classes.rb', line 3737 def @binary_authorization end |
#client ⇒ String
Arbitrary identifier for the API client.
Corresponds to the JSON property client
3742 3743 3744 |
# File 'lib/google/apis/run_v2/classes.rb', line 3742 def client @client end |
#client_version ⇒ String
Arbitrary version identifier for the API client.
Corresponds to the JSON property clientVersion
3747 3748 3749 |
# File 'lib/google/apis/run_v2/classes.rb', line 3747 def client_version @client_version end |
#conditions ⇒ Array<Google::Apis::RunV2::GoogleCloudRunV2Condition>
Output only. The Conditions of all other associated sub-resources. They
contain additional diagnostics information in case the WorkerPool does not
reach its Serving state. See comments in reconciling for additional
information on reconciliation process in Cloud Run.
Corresponds to the JSON property conditions
3755 3756 3757 |
# File 'lib/google/apis/run_v2/classes.rb', line 3755 def conditions @conditions end |
#create_time ⇒ String
Output only. The creation time.
Corresponds to the JSON property createTime
3760 3761 3762 |
# File 'lib/google/apis/run_v2/classes.rb', line 3760 def create_time @create_time end |
#creator ⇒ String
Output only. Email address of the authenticated creator.
Corresponds to the JSON property creator
3765 3766 3767 |
# File 'lib/google/apis/run_v2/classes.rb', line 3765 def creator @creator end |
#custom_audiences ⇒ Array<String>
Not supported, and ignored by Cloud Run.
Corresponds to the JSON property customAudiences
3770 3771 3772 |
# File 'lib/google/apis/run_v2/classes.rb', line 3770 def custom_audiences @custom_audiences end |
#delete_time ⇒ String
Output only. The deletion time. It is only populated as a response to a Delete
request.
Corresponds to the JSON property deleteTime
3776 3777 3778 |
# File 'lib/google/apis/run_v2/classes.rb', line 3776 def delete_time @delete_time end |
#description ⇒ String
User-provided description of the WorkerPool. This field currently has a 512-
character limit.
Corresponds to the JSON property description
3782 3783 3784 |
# File 'lib/google/apis/run_v2/classes.rb', line 3782 def description @description end |
#etag ⇒ String
Optional. A system-generated fingerprint for this version of the resource. May
be used to detect modification conflict during updates.
Corresponds to the JSON property etag
3788 3789 3790 |
# File 'lib/google/apis/run_v2/classes.rb', line 3788 def etag @etag end |
#expire_time ⇒ String
Output only. For a deleted resource, the time after which it will be
permamently deleted.
Corresponds to the JSON property expireTime
3794 3795 3796 |
# File 'lib/google/apis/run_v2/classes.rb', line 3794 def expire_time @expire_time end |
#generation ⇒ Fixnum
Output only. A number that monotonically increases every time the user
modifies the desired state. Please note that unlike v1, this is an int64 value.
As with most Google APIs, its JSON representation will be a string instead
of an integer.
Corresponds to the JSON property generation
3802 3803 3804 |
# File 'lib/google/apis/run_v2/classes.rb', line 3802 def generation @generation end |
#instance_split_statuses ⇒ Array<Google::Apis::RunV2::GoogleCloudRunV2InstanceSplitStatus>
Output only. Detailed status information for corresponding instance splits.
See comments in reconciling for additional information on reconciliation
process in Cloud Run.
Corresponds to the JSON property instanceSplitStatuses
3809 3810 3811 |
# File 'lib/google/apis/run_v2/classes.rb', line 3809 def instance_split_statuses @instance_split_statuses end |
#instance_splits ⇒ Array<Google::Apis::RunV2::GoogleCloudRunV2InstanceSplit>
Optional. Specifies how to distribute instances over a collection of Revisions
belonging to the WorkerPool. If instance split is empty or not provided,
defaults to 100% instances assigned to the latest Ready Revision.
Corresponds to the JSON property instanceSplits
3816 3817 3818 |
# File 'lib/google/apis/run_v2/classes.rb', line 3816 def instance_splits @instance_splits end |
#labels ⇒ Hash<String,String>
Optional. Unstructured key value map that can be used to organize and
categorize objects. User-provided labels are shared with Google's billing
system, so they can be used to filter, or break down billing charges by team,
component, environment, state, etc. For more information, visit https://cloud.
google.com/resource-manager/docs/creating-managing-labels or https://cloud.
google.com/run/docs/configuring/labels. Cloud Run API v2 does not support
labels with run.googleapis.com, cloud.googleapis.com, serving.knative.dev
, or autoscaling.knative.dev namespaces, and they will be rejected. All
system labels in v1 now have a corresponding field in v2 WorkerPool.
Corresponds to the JSON property labels
3829 3830 3831 |
# File 'lib/google/apis/run_v2/classes.rb', line 3829 def labels @labels end |
#last_modifier ⇒ String
Output only. Email address of the last authenticated modifier.
Corresponds to the JSON property lastModifier
3834 3835 3836 |
# File 'lib/google/apis/run_v2/classes.rb', line 3834 def last_modifier @last_modifier end |
#latest_created_revision ⇒ String
Output only. Name of the last created revision. See comments in reconciling
for additional information on reconciliation process in Cloud Run.
Corresponds to the JSON property latestCreatedRevision
3840 3841 3842 |
# File 'lib/google/apis/run_v2/classes.rb', line 3840 def latest_created_revision @latest_created_revision end |
#latest_ready_revision ⇒ String
Output only. Name of the latest revision that is serving workloads. See
comments in reconciling for additional information on reconciliation process
in Cloud Run.
Corresponds to the JSON property latestReadyRevision
3847 3848 3849 |
# File 'lib/google/apis/run_v2/classes.rb', line 3847 def latest_ready_revision @latest_ready_revision end |
#launch_stage ⇒ String
Optional. The launch stage as defined by Google Cloud Platform Launch Stages. Cloud Run supports ALPHA,
BETA, and GA. If no value is specified, GA is assumed. Set the launch stage
to a preview stage on input to allow use of preview features in that stage. On
read (or output), describes whether the resource uses preview features. For
example, if ALPHA is provided as input, but only BETA and GA-level features
are used, this field will be BETA on output.
Corresponds to the JSON property launchStage
3858 3859 3860 |
# File 'lib/google/apis/run_v2/classes.rb', line 3858 def launch_stage @launch_stage end |
#name ⇒ String
The fully qualified name of this WorkerPool. In CreateWorkerPoolRequest, this
field is ignored, and instead composed from CreateWorkerPoolRequest.parent and
CreateWorkerPoolRequest.worker_id. Format: projects/project/locations/
location/workerPools/worker_id`
Corresponds to the JSON propertyname`
3866 3867 3868 |
# File 'lib/google/apis/run_v2/classes.rb', line 3866 def name @name end |
#observed_generation ⇒ Fixnum
Output only. The generation of this WorkerPool currently serving workloads.
See comments in reconciling for additional information on reconciliation
process in Cloud Run. Please note that unlike v1, this is an int64 value. As
with most Google APIs, its JSON representation will be a string instead of
an integer.
Corresponds to the JSON property observedGeneration
3875 3876 3877 |
# File 'lib/google/apis/run_v2/classes.rb', line 3875 def observed_generation @observed_generation end |
#reconciling ⇒ Boolean Also known as: reconciling?
Output only. Returns true if the WorkerPool is currently being acted upon by
the system to bring it into the desired state. When a new WorkerPool is
created, or an existing one is updated, Cloud Run will asynchronously perform
all necessary steps to bring the WorkerPool to the desired serving state. This
process is called reconciliation. While reconciliation is in process,
observed_generation, latest_ready_revison, instance_split_statuses, and
uri will have transient values that might mismatch the intended state: Once
reconciliation is over (and this field is false), there are two possible
outcomes: reconciliation succeeded and the serving state matches the
WorkerPool, or there was an error, and reconciliation failed. This state can
be found in terminal_condition.state. If reconciliation succeeded, the
following fields will match: instance_splits and instance_split_statuses,
observed_generation and generation, latest_ready_revision and
latest_created_revision. If reconciliation failed, instance_split_statuses,
observed_generation, and latest_ready_revision will have the state of the
last serving revision, or empty for newly created WorkerPools. Additional
information on the failure can be found in terminal_condition and
conditions.
Corresponds to the JSON property reconciling
3897 3898 3899 |
# File 'lib/google/apis/run_v2/classes.rb', line 3897 def reconciling @reconciling end |
#satisfies_pzs ⇒ Boolean Also known as: satisfies_pzs?
Output only. Reserved for future use.
Corresponds to the JSON property satisfiesPzs
3903 3904 3905 |
# File 'lib/google/apis/run_v2/classes.rb', line 3903 def satisfies_pzs @satisfies_pzs end |
#scaling ⇒ Google::Apis::RunV2::GoogleCloudRunV2WorkerPoolScaling
Worker pool scaling settings.
Corresponds to the JSON property scaling
3909 3910 3911 |
# File 'lib/google/apis/run_v2/classes.rb', line 3909 def scaling @scaling end |
#template ⇒ Google::Apis::RunV2::GoogleCloudRunV2WorkerPoolRevisionTemplate
WorkerPoolRevisionTemplate describes the data a worker pool revision should
have when created from a template.
Corresponds to the JSON property template
3915 3916 3917 |
# File 'lib/google/apis/run_v2/classes.rb', line 3915 def template @template end |
#terminal_condition ⇒ Google::Apis::RunV2::GoogleCloudRunV2Condition
Defines a status condition for a resource.
Corresponds to the JSON property terminalCondition
3920 3921 3922 |
# File 'lib/google/apis/run_v2/classes.rb', line 3920 def terminal_condition @terminal_condition end |
#threat_detection_enabled ⇒ Boolean Also known as: threat_detection_enabled?
Output only. Indicates whether Cloud Run Threat Detection monitoring is
enabled for the parent project of this worker pool.
Corresponds to the JSON property threatDetectionEnabled
3926 3927 3928 |
# File 'lib/google/apis/run_v2/classes.rb', line 3926 def threat_detection_enabled @threat_detection_enabled end |
#uid ⇒ String
Output only. Server assigned unique identifier for the trigger. The value is a
UUID4 string and guaranteed to remain unchanged until the resource is deleted.
Corresponds to the JSON property uid
3933 3934 3935 |
# File 'lib/google/apis/run_v2/classes.rb', line 3933 def uid @uid end |
#update_time ⇒ String
Output only. The last-modified time.
Corresponds to the JSON property updateTime
3938 3939 3940 |
# File 'lib/google/apis/run_v2/classes.rb', line 3938 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
3945 3946 3947 3948 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963 3964 3965 3966 3967 3968 3969 3970 3971 3972 3973 3974 3975 3976 |
# File 'lib/google/apis/run_v2/classes.rb', line 3945 def update!(**args) @annotations = args[:annotations] if args.key?(:annotations) @binary_authorization = args[:binary_authorization] if args.key?(:binary_authorization) @client = args[:client] if args.key?(:client) @client_version = args[:client_version] if args.key?(:client_version) @conditions = args[:conditions] if args.key?(:conditions) @create_time = args[:create_time] if args.key?(:create_time) @creator = args[:creator] if args.key?(:creator) @custom_audiences = args[:custom_audiences] if args.key?(:custom_audiences) @delete_time = args[:delete_time] if args.key?(:delete_time) @description = args[:description] if args.key?(:description) @etag = args[:etag] if args.key?(:etag) @expire_time = args[:expire_time] if args.key?(:expire_time) @generation = args[:generation] if args.key?(:generation) @instance_split_statuses = args[:instance_split_statuses] if args.key?(:instance_split_statuses) @instance_splits = args[:instance_splits] if args.key?(:instance_splits) @labels = args[:labels] if args.key?(:labels) @last_modifier = args[:last_modifier] if args.key?(:last_modifier) @latest_created_revision = args[:latest_created_revision] if args.key?(:latest_created_revision) @latest_ready_revision = args[:latest_ready_revision] if args.key?(:latest_ready_revision) @launch_stage = args[:launch_stage] if args.key?(:launch_stage) @name = args[:name] if args.key?(:name) @observed_generation = args[:observed_generation] if args.key?(:observed_generation) @reconciling = args[:reconciling] if args.key?(:reconciling) @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs) @scaling = args[:scaling] if args.key?(:scaling) @template = args[:template] if args.key?(:template) @terminal_condition = args[:terminal_condition] if args.key?(:terminal_condition) @threat_detection_enabled = args[:threat_detection_enabled] if args.key?(:threat_detection_enabled) @uid = args[:uid] if args.key?(:uid) @update_time = args[:update_time] if args.key?(:update_time) end |