Reference documentation and code samples for the Cloud Run V2 API class Google::Cloud::Run::V2::WorkerPool.
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.
Inherits
- Object
Extended By
- Google::Protobuf::MessageExts::ClassMethods
Includes
- Google::Protobuf::MessageExts
Methods
#annotations
def annotations() -> ::Google::Protobuf::Map{::String => ::String}
-
(::Google::Protobuf::Map{::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
, orautoscaling.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.
#annotations=
def annotations=(value) -> ::Google::Protobuf::Map{::String => ::String}
-
value (::Google::Protobuf::Map{::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
, orautoscaling.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.
-
(::Google::Protobuf::Map{::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
, orautoscaling.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.
#binary_authorization
def binary_authorization() -> ::Google::Cloud::Run::V2::BinaryAuthorization
- (::Google::Cloud::Run::V2::BinaryAuthorization) — Optional. Settings for the Binary Authorization feature.
#binary_authorization=
def binary_authorization=(value) -> ::Google::Cloud::Run::V2::BinaryAuthorization
- value (::Google::Cloud::Run::V2::BinaryAuthorization) — Optional. Settings for the Binary Authorization feature.
- (::Google::Cloud::Run::V2::BinaryAuthorization) — Optional. Settings for the Binary Authorization feature.
#client
def client() -> ::String
- (::String) — Arbitrary identifier for the API client.
#client=
def client=(value) -> ::String
- value (::String) — Arbitrary identifier for the API client.
- (::String) — Arbitrary identifier for the API client.
#client_version
def client_version() -> ::String
- (::String) — Arbitrary version identifier for the API client.
#client_version=
def client_version=(value) -> ::String
- value (::String) — Arbitrary version identifier for the API client.
- (::String) — Arbitrary version identifier for the API client.
#conditions
def conditions() -> ::Array<::Google::Cloud::Run::V2::Condition>
-
(::Array<::Google::Cloud::Run::V2::Condition>) — 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.
#create_time
def create_time() -> ::Google::Protobuf::Timestamp
- (::Google::Protobuf::Timestamp) — Output only. The creation time.
#creator
def creator() -> ::String
- (::String) — Output only. Email address of the authenticated creator.
#custom_audiences
def custom_audiences() -> ::Array<::String>
- (::Array<::String>) — One or more custom audiences that you want this worker pool to support. Specify each custom audience as the full URL in a string. The custom audiences are encoded in the token and used to authenticate requests. For more information, see https://cloud.google.com/run/docs/configuring/custom-audiences.
#custom_audiences=
def custom_audiences=(value) -> ::Array<::String>
- value (::Array<::String>) — One or more custom audiences that you want this worker pool to support. Specify each custom audience as the full URL in a string. The custom audiences are encoded in the token and used to authenticate requests. For more information, see https://cloud.google.com/run/docs/configuring/custom-audiences.
- (::Array<::String>) — One or more custom audiences that you want this worker pool to support. Specify each custom audience as the full URL in a string. The custom audiences are encoded in the token and used to authenticate requests. For more information, see https://cloud.google.com/run/docs/configuring/custom-audiences.
#delete_time
def delete_time() -> ::Google::Protobuf::Timestamp
- (::Google::Protobuf::Timestamp) — Output only. The deletion time. It is only populated as a response to a Delete request.
#description
def description() -> ::String
- (::String) — User-provided description of the WorkerPool. This field currently has a 512-character limit.
#description=
def description=(value) -> ::String
- value (::String) — User-provided description of the WorkerPool. This field currently has a 512-character limit.
- (::String) — User-provided description of the WorkerPool. This field currently has a 512-character limit.
#etag
def etag() -> ::String
- (::String) — Output only. A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates.
#expire_time
def expire_time() -> ::Google::Protobuf::Timestamp
- (::Google::Protobuf::Timestamp) — Output only. For a deleted resource, the time after which it will be permamently deleted.
#generation
def generation() -> ::Integer
-
(::Integer) — 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 aninteger
.
#instance_split_statuses
def instance_split_statuses() -> ::Array<::Google::Cloud::Run::V2::InstanceSplitStatus>
-
(::Array<::Google::Cloud::Run::V2::InstanceSplitStatus>) — Output only. Detailed status information for corresponding instance splits.
See comments in
reconciling
for additional information on reconciliation process in Cloud Run.
#instance_splits
def instance_splits() -> ::Array<::Google::Cloud::Run::V2::InstanceSplit>
-
(::Array<::Google::Cloud::Run::V2::InstanceSplit>) — 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.
#instance_splits=
def instance_splits=(value) -> ::Array<::Google::Cloud::Run::V2::InstanceSplit>
-
value (::Array<::Google::Cloud::Run::V2::InstanceSplit>) — 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.
-
(::Array<::Google::Cloud::Run::V2::InstanceSplit>) — 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.
#labels
def labels() -> ::Google::Protobuf::Map{::String => ::String}
-
(::Google::Protobuf::Map{::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
, orautoscaling.knative.dev
namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPool.
#labels=
def labels=(value) -> ::Google::Protobuf::Map{::String => ::String}
-
value (::Google::Protobuf::Map{::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
, orautoscaling.knative.dev
namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPool.
-
(::Google::Protobuf::Map{::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
, orautoscaling.knative.dev
namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPool.
#last_modifier
def last_modifier() -> ::String
- (::String) — Output only. Email address of the last authenticated modifier.
#latest_created_revision
def latest_created_revision() -> ::String
-
(::String) — Output only. Name of the last created revision. See comments in
reconciling
for additional information on reconciliation process in Cloud Run.
#latest_ready_revision
def latest_ready_revision() -> ::String
-
(::String) — Output only. Name of the latest revision that is serving traffic. See
comments in
reconciling
for additional information on reconciliation process in Cloud Run.
#launch_stage
def launch_stage() -> ::Google::Api::LaunchStage
-
(::Google::Api::LaunchStage) — Optional. The launch stage as defined by Google Cloud Platform
Launch Stages.
Cloud Run supports
ALPHA
,BETA
, andGA
. 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.
#launch_stage=
def launch_stage=(value) -> ::Google::Api::LaunchStage
-
value (::Google::Api::LaunchStage) — Optional. The launch stage as defined by Google Cloud Platform
Launch Stages.
Cloud Run supports
ALPHA
,BETA
, andGA
. 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.
-
(::Google::Api::LaunchStage) — Optional. The launch stage as defined by Google Cloud Platform
Launch Stages.
Cloud Run supports
ALPHA
,BETA
, andGA
. 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.
#name
def name() -> ::String
-
(::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}
#name=
def name=(value) -> ::String
-
value (::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}
-
(::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}
#observed_generation
def observed_generation() -> ::Integer
-
(::Integer) — Output only. The generation of this WorkerPool currently serving traffic.
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 astring
instead of aninteger
.
#reconciling
def reconciling() -> ::Boolean
-
(::Boolean) — 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
,traffic_statuses
, anduri
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 interminal_condition.state
.If reconciliation succeeded, the following fields will match:
traffic
andtraffic_statuses
,observed_generation
andgeneration
,latest_ready_revision
andlatest_created_revision
.If reconciliation failed,
traffic_statuses
,observed_generation
, andlatest_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 interminal_condition
andconditions
.
#satisfies_pzs
def satisfies_pzs() -> ::Boolean
- (::Boolean) — Output only. Reserved for future use.
#scaling
def scaling() -> ::Google::Cloud::Run::V2::WorkerPoolScaling
- (::Google::Cloud::Run::V2::WorkerPoolScaling) — Optional. Specifies worker-pool-level scaling settings
#scaling=
def scaling=(value) -> ::Google::Cloud::Run::V2::WorkerPoolScaling
- value (::Google::Cloud::Run::V2::WorkerPoolScaling) — Optional. Specifies worker-pool-level scaling settings
- (::Google::Cloud::Run::V2::WorkerPoolScaling) — Optional. Specifies worker-pool-level scaling settings
#template
def template() -> ::Google::Cloud::Run::V2::WorkerPoolRevisionTemplate
- (::Google::Cloud::Run::V2::WorkerPoolRevisionTemplate) — Required. The template used to create revisions for this WorkerPool.
#template=
def template=(value) -> ::Google::Cloud::Run::V2::WorkerPoolRevisionTemplate
- value (::Google::Cloud::Run::V2::WorkerPoolRevisionTemplate) — Required. The template used to create revisions for this WorkerPool.
- (::Google::Cloud::Run::V2::WorkerPoolRevisionTemplate) — Required. The template used to create revisions for this WorkerPool.
#terminal_condition
def terminal_condition() -> ::Google::Cloud::Run::V2::Condition
-
(::Google::Cloud::Run::V2::Condition) — Output only. The Condition of this WorkerPool, containing its readiness
status, and detailed error information in case it did not reach a serving
state. See comments in
reconciling
for additional information on reconciliation process in Cloud Run.
#uid
def uid() -> ::String
- (::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.
#update_time
def update_time() -> ::Google::Protobuf::Timestamp
- (::Google::Protobuf::Timestamp) — Output only. The last-modified time.