WorkerPoolRevisionTemplate

Struct WorkerPoolRevisionTemplate 

Source
#[non_exhaustive]
pub struct WorkerPoolRevisionTemplate {
Show 13 fields pub revision: String, pub labels: HashMap<String, String>, pub annotations: HashMap<String, String>, pub vpc_access: Option<VpcAccess>, pub service_account: String, pub containers: Vec<Container>, pub volumes: Vec<Volume>, pub encryption_key: String, pub service_mesh: Option<ServiceMesh>, pub encryption_key_revocation_action: EncryptionKeyRevocationAction, pub encryption_key_shutdown_duration: Option<Duration>, pub node_selector: Option<NodeSelector>, pub gpu_zonal_redundancy_disabled: Option<bool>, /* private fields */
}
Expand description

WorkerPoolRevisionTemplate describes the data a worker pool revision should have when created from a template.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§revision: String

Optional. The unique name for the revision. If this field is omitted, it will be automatically generated based on the WorkerPool name.

§labels: HashMap<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 WorkerPoolRevisionTemplate.

§annotations: HashMap<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. All system annotations in v1 now have a corresponding field in v2 WorkerPoolRevisionTemplate.

This field follows Kubernetes annotations’ namespacing, limits, and rules.

§vpc_access: Option<VpcAccess>

Optional. VPC Access configuration to use for this Revision. For more information, visit https://cloud.google.com/run/docs/configuring/connecting-vpc.

§service_account: String

Optional. Email address of the IAM service account associated with the revision of the service. The service account represents the identity of the running revision, and determines what permissions the revision has. If not provided, the revision will use the project’s default service account.

§containers: Vec<Container>

Holds list of the containers that defines the unit of execution for this Revision.

§volumes: Vec<Volume>

Optional. A list of Volumes to make available to containers.

§encryption_key: String

A reference to a customer managed encryption key (CMEK) to use to encrypt this container image. For more information, go to https://cloud.google.com/run/docs/securing/using-cmek

§service_mesh: Option<ServiceMesh>

Optional. Enables service mesh connectivity.

§encryption_key_revocation_action: EncryptionKeyRevocationAction

Optional. The action to take if the encryption key is revoked.

§encryption_key_shutdown_duration: Option<Duration>

Optional. If encryption_key_revocation_action is SHUTDOWN, the duration before shutting down all instances. The minimum increment is 1 hour.

§node_selector: Option<NodeSelector>

Optional. The node selector for the revision template.

§gpu_zonal_redundancy_disabled: Option<bool>

Optional. True if GPU zonal redundancy is disabled on this worker pool.

Implementations§

Source§

impl WorkerPoolRevisionTemplate

Source

pub fn new() -> Self

Source

pub fn set_revision<T: Into<String>>(self, v: T) -> Self

Sets the value of revision.

§Example
let x = WorkerPoolRevisionTemplate::new().set_revision("example");
Source

pub fn set_labels<T, K, V>(self, v: T) -> Self
where T: IntoIterator<Item = (K, V)>, K: Into<String>, V: Into<String>,

Sets the value of labels.

§Example
let x = WorkerPoolRevisionTemplate::new().set_labels([
    ("key0", "abc"),
    ("key1", "xyz"),
]);
Source

pub fn set_annotations<T, K, V>(self, v: T) -> Self
where T: IntoIterator<Item = (K, V)>, K: Into<String>, V: Into<String>,

Sets the value of annotations.

§Example
let x = WorkerPoolRevisionTemplate::new().set_annotations([
    ("key0", "abc"),
    ("key1", "xyz"),
]);
Source

pub fn set_vpc_access<T>(self, v: T) -> Self
where T: Into<VpcAccess>,

Sets the value of vpc_access.

§Example
use google_cloud_run_v2::model::VpcAccess;
let x = WorkerPoolRevisionTemplate::new().set_vpc_access(VpcAccess::default()/* use setters */);
Source

pub fn set_or_clear_vpc_access<T>(self, v: Option<T>) -> Self
where T: Into<VpcAccess>,

Sets or clears the value of vpc_access.

§Example
use google_cloud_run_v2::model::VpcAccess;
let x = WorkerPoolRevisionTemplate::new().set_or_clear_vpc_access(Some(VpcAccess::default()/* use setters */));
let x = WorkerPoolRevisionTemplate::new().set_or_clear_vpc_access(None::<VpcAccess>);
Source

pub fn set_service_account<T: Into<String>>(self, v: T) -> Self

Sets the value of service_account.

§Example
let x = WorkerPoolRevisionTemplate::new().set_service_account("example");
Source

pub fn set_containers<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<Container>,

Sets the value of containers.

§Example
use google_cloud_run_v2::model::Container;
let x = WorkerPoolRevisionTemplate::new()
    .set_containers([
        Container::default()/* use setters */,
        Container::default()/* use (different) setters */,
    ]);
Source

pub fn set_volumes<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<Volume>,

Sets the value of volumes.

§Example
use google_cloud_run_v2::model::Volume;
let x = WorkerPoolRevisionTemplate::new()
    .set_volumes([
        Volume::default()/* use setters */,
        Volume::default()/* use (different) setters */,
    ]);
Source

pub fn set_encryption_key<T: Into<String>>(self, v: T) -> Self

Sets the value of encryption_key.

§Example
let x = WorkerPoolRevisionTemplate::new().set_encryption_key("example");
Source

pub fn set_service_mesh<T>(self, v: T) -> Self
where T: Into<ServiceMesh>,

Sets the value of service_mesh.

§Example
use google_cloud_run_v2::model::ServiceMesh;
let x = WorkerPoolRevisionTemplate::new().set_service_mesh(ServiceMesh::default()/* use setters */);
Source

pub fn set_or_clear_service_mesh<T>(self, v: Option<T>) -> Self
where T: Into<ServiceMesh>,

Sets or clears the value of service_mesh.

§Example
use google_cloud_run_v2::model::ServiceMesh;
let x = WorkerPoolRevisionTemplate::new().set_or_clear_service_mesh(Some(ServiceMesh::default()/* use setters */));
let x = WorkerPoolRevisionTemplate::new().set_or_clear_service_mesh(None::<ServiceMesh>);
Source

pub fn set_encryption_key_revocation_action<T: Into<EncryptionKeyRevocationAction>>( self, v: T, ) -> Self

Sets the value of encryption_key_revocation_action.

§Example
use google_cloud_run_v2::model::EncryptionKeyRevocationAction;
let x0 = WorkerPoolRevisionTemplate::new().set_encryption_key_revocation_action(EncryptionKeyRevocationAction::PreventNew);
let x1 = WorkerPoolRevisionTemplate::new().set_encryption_key_revocation_action(EncryptionKeyRevocationAction::Shutdown);
Source

pub fn set_encryption_key_shutdown_duration<T>(self, v: T) -> Self
where T: Into<Duration>,

Sets the value of encryption_key_shutdown_duration.

§Example
use wkt::Duration;
let x = WorkerPoolRevisionTemplate::new().set_encryption_key_shutdown_duration(Duration::default()/* use setters */);
Source

pub fn set_or_clear_encryption_key_shutdown_duration<T>( self, v: Option<T>, ) -> Self
where T: Into<Duration>,

Sets or clears the value of encryption_key_shutdown_duration.

§Example
use wkt::Duration;
let x = WorkerPoolRevisionTemplate::new().set_or_clear_encryption_key_shutdown_duration(Some(Duration::default()/* use setters */));
let x = WorkerPoolRevisionTemplate::new().set_or_clear_encryption_key_shutdown_duration(None::<Duration>);
Source

pub fn set_node_selector<T>(self, v: T) -> Self
where T: Into<NodeSelector>,

Sets the value of node_selector.

§Example
use google_cloud_run_v2::model::NodeSelector;
let x = WorkerPoolRevisionTemplate::new().set_node_selector(NodeSelector::default()/* use setters */);
Source

pub fn set_or_clear_node_selector<T>(self, v: Option<T>) -> Self
where T: Into<NodeSelector>,

Sets or clears the value of node_selector.

§Example
use google_cloud_run_v2::model::NodeSelector;
let x = WorkerPoolRevisionTemplate::new().set_or_clear_node_selector(Some(NodeSelector::default()/* use setters */));
let x = WorkerPoolRevisionTemplate::new().set_or_clear_node_selector(None::<NodeSelector>);
Source

pub fn set_gpu_zonal_redundancy_disabled<T>(self, v: T) -> Self
where T: Into<bool>,

Sets the value of gpu_zonal_redundancy_disabled.

§Example
let x = WorkerPoolRevisionTemplate::new().set_gpu_zonal_redundancy_disabled(true);
Source

pub fn set_or_clear_gpu_zonal_redundancy_disabled<T>(self, v: Option<T>) -> Self
where T: Into<bool>,

Sets or clears the value of gpu_zonal_redundancy_disabled.

§Example
let x = WorkerPoolRevisionTemplate::new().set_or_clear_gpu_zonal_redundancy_disabled(Some(false));
let x = WorkerPoolRevisionTemplate::new().set_or_clear_gpu_zonal_redundancy_disabled(None::<bool>);

Trait Implementations§

Source§

impl Clone for WorkerPoolRevisionTemplate

Source§

fn clone(&self) -> WorkerPoolRevisionTemplate

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for WorkerPoolRevisionTemplate

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for WorkerPoolRevisionTemplate

Source§

fn default() -> WorkerPoolRevisionTemplate

Returns the “default value” for a type. Read more
Source§

impl Message for WorkerPoolRevisionTemplate

Source§

fn typename() -> &'static str

The typename of this message.
Source§

impl PartialEq for WorkerPoolRevisionTemplate

Source§

fn eq(&self, other: &WorkerPoolRevisionTemplate) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for WorkerPoolRevisionTemplate

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,