#[non_exhaustive]pub struct RevisionTemplate {Show 19 fields
pub revision: String,
pub labels: HashMap<String, String>,
pub annotations: HashMap<String, String>,
pub scaling: Option<RevisionScaling>,
pub vpc_access: Option<VpcAccess>,
pub timeout: Option<Duration>,
pub service_account: String,
pub containers: Vec<Container>,
pub volumes: Vec<Volume>,
pub execution_environment: ExecutionEnvironment,
pub encryption_key: String,
pub max_instance_request_concurrency: i32,
pub service_mesh: Option<ServiceMesh>,
pub encryption_key_revocation_action: EncryptionKeyRevocationAction,
pub encryption_key_shutdown_duration: Option<Duration>,
pub session_affinity: bool,
pub health_check_disabled: bool,
pub node_selector: Option<NodeSelector>,
pub gpu_zonal_redundancy_disabled: Option<bool>,
/* private fields */
}Expand description
RevisionTemplate describes the data a revision should have when created from a template.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.revision: StringOptional. The unique name for the revision. If this field is omitted, it will be automatically generated based on the Service 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.
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.
scaling: Option<RevisionScaling>Optional. Scaling settings for this Revision.
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.
timeout: Option<Duration>Optional. Max allowed time for an instance to respond to a request.
service_account: StringOptional. 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 the single container that defines the unit of execution for this Revision.
volumes: Vec<Volume>Optional. A list of Volumes to make available to containers.
execution_environment: ExecutionEnvironmentOptional. The sandbox environment to host this Revision.
encryption_key: StringA 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
max_instance_request_concurrency: i32Optional. Sets the maximum number of requests that each serving instance
can receive. If not specified or 0, concurrency defaults to 80 when
requested CPU >= 1 and defaults to 1 when requested CPU < 1.
service_mesh: Option<ServiceMesh>Optional. Enables service mesh connectivity.
encryption_key_revocation_action: EncryptionKeyRevocationActionOptional. 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.
session_affinity: boolOptional. Enable session affinity.
health_check_disabled: boolOptional. Disables health checking containers during deployment.
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 revision.
Implementations§
Source§impl RevisionTemplate
impl RevisionTemplate
pub fn new() -> Self
Sourcepub fn set_revision<T: Into<String>>(self, v: T) -> Self
pub fn set_revision<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_labels<T, K, V>(self, v: T) -> Self
pub fn set_labels<T, K, V>(self, v: T) -> Self
Sourcepub fn set_annotations<T, K, V>(self, v: T) -> Self
pub fn set_annotations<T, K, V>(self, v: T) -> Self
Sets the value of annotations.
§Example
let x = RevisionTemplate::new().set_annotations([
("key0", "abc"),
("key1", "xyz"),
]);Sourcepub fn set_scaling<T>(self, v: T) -> Selfwhere
T: Into<RevisionScaling>,
pub fn set_scaling<T>(self, v: T) -> Selfwhere
T: Into<RevisionScaling>,
Sourcepub fn set_or_clear_scaling<T>(self, v: Option<T>) -> Selfwhere
T: Into<RevisionScaling>,
pub fn set_or_clear_scaling<T>(self, v: Option<T>) -> Selfwhere
T: Into<RevisionScaling>,
Sourcepub fn set_vpc_access<T>(self, v: T) -> Self
pub fn set_vpc_access<T>(self, v: T) -> Self
Sets the value of vpc_access.
§Example
use google_cloud_run_v2::model::VpcAccess;
let x = RevisionTemplate::new().set_vpc_access(VpcAccess::default()/* use setters */);Sourcepub fn set_or_clear_vpc_access<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_vpc_access<T>(self, v: Option<T>) -> Self
Sets or clears the value of vpc_access.
§Example
use google_cloud_run_v2::model::VpcAccess;
let x = RevisionTemplate::new().set_or_clear_vpc_access(Some(VpcAccess::default()/* use setters */));
let x = RevisionTemplate::new().set_or_clear_vpc_access(None::<VpcAccess>);Sourcepub fn set_timeout<T>(self, v: T) -> Self
pub fn set_timeout<T>(self, v: T) -> Self
Sourcepub fn set_or_clear_timeout<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_timeout<T>(self, v: Option<T>) -> Self
Sourcepub fn set_service_account<T: Into<String>>(self, v: T) -> Self
pub fn set_service_account<T: Into<String>>(self, v: T) -> Self
Sets the value of service_account.
§Example
let x = RevisionTemplate::new().set_service_account("example");Sourcepub fn set_containers<T, V>(self, v: T) -> Self
pub fn set_containers<T, V>(self, v: T) -> Self
Sets the value of containers.
§Example
use google_cloud_run_v2::model::Container;
let x = RevisionTemplate::new()
.set_containers([
Container::default()/* use setters */,
Container::default()/* use (different) setters */,
]);Sourcepub fn set_volumes<T, V>(self, v: T) -> Self
pub fn set_volumes<T, V>(self, v: T) -> Self
Sourcepub fn set_execution_environment<T: Into<ExecutionEnvironment>>(
self,
v: T,
) -> Self
pub fn set_execution_environment<T: Into<ExecutionEnvironment>>( self, v: T, ) -> Self
Sets the value of execution_environment.
§Example
use google_cloud_run_v2::model::ExecutionEnvironment;
let x0 = RevisionTemplate::new().set_execution_environment(ExecutionEnvironment::Gen1);
let x1 = RevisionTemplate::new().set_execution_environment(ExecutionEnvironment::Gen2);Sourcepub fn set_encryption_key<T: Into<String>>(self, v: T) -> Self
pub fn set_encryption_key<T: Into<String>>(self, v: T) -> Self
Sets the value of encryption_key.
§Example
let x = RevisionTemplate::new().set_encryption_key("example");Sourcepub fn set_max_instance_request_concurrency<T: Into<i32>>(self, v: T) -> Self
pub fn set_max_instance_request_concurrency<T: Into<i32>>(self, v: T) -> Self
Sets the value of max_instance_request_concurrency.
§Example
let x = RevisionTemplate::new().set_max_instance_request_concurrency(42);Sourcepub fn set_service_mesh<T>(self, v: T) -> Selfwhere
T: Into<ServiceMesh>,
pub fn set_service_mesh<T>(self, v: T) -> Selfwhere
T: Into<ServiceMesh>,
Sets the value of service_mesh.
§Example
use google_cloud_run_v2::model::ServiceMesh;
let x = RevisionTemplate::new().set_service_mesh(ServiceMesh::default()/* use setters */);Sourcepub fn set_or_clear_service_mesh<T>(self, v: Option<T>) -> Selfwhere
T: Into<ServiceMesh>,
pub fn set_or_clear_service_mesh<T>(self, v: Option<T>) -> Selfwhere
T: Into<ServiceMesh>,
Sets or clears the value of service_mesh.
§Example
use google_cloud_run_v2::model::ServiceMesh;
let x = RevisionTemplate::new().set_or_clear_service_mesh(Some(ServiceMesh::default()/* use setters */));
let x = RevisionTemplate::new().set_or_clear_service_mesh(None::<ServiceMesh>);Sourcepub fn set_encryption_key_revocation_action<T: Into<EncryptionKeyRevocationAction>>(
self,
v: T,
) -> Self
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 = RevisionTemplate::new().set_encryption_key_revocation_action(EncryptionKeyRevocationAction::PreventNew);
let x1 = RevisionTemplate::new().set_encryption_key_revocation_action(EncryptionKeyRevocationAction::Shutdown);Sourcepub fn set_encryption_key_shutdown_duration<T>(self, v: T) -> Self
pub fn set_encryption_key_shutdown_duration<T>(self, v: T) -> Self
Sets the value of encryption_key_shutdown_duration.
§Example
use wkt::Duration;
let x = RevisionTemplate::new().set_encryption_key_shutdown_duration(Duration::default()/* use setters */);Sourcepub fn set_or_clear_encryption_key_shutdown_duration<T>(
self,
v: Option<T>,
) -> Self
pub fn set_or_clear_encryption_key_shutdown_duration<T>( self, v: Option<T>, ) -> Self
Sets or clears the value of encryption_key_shutdown_duration.
§Example
use wkt::Duration;
let x = RevisionTemplate::new().set_or_clear_encryption_key_shutdown_duration(Some(Duration::default()/* use setters */));
let x = RevisionTemplate::new().set_or_clear_encryption_key_shutdown_duration(None::<Duration>);Sourcepub fn set_session_affinity<T: Into<bool>>(self, v: T) -> Self
pub fn set_session_affinity<T: Into<bool>>(self, v: T) -> Self
Sets the value of session_affinity.
§Example
let x = RevisionTemplate::new().set_session_affinity(true);Sourcepub fn set_health_check_disabled<T: Into<bool>>(self, v: T) -> Self
pub fn set_health_check_disabled<T: Into<bool>>(self, v: T) -> Self
Sets the value of health_check_disabled.
§Example
let x = RevisionTemplate::new().set_health_check_disabled(true);Sourcepub fn set_node_selector<T>(self, v: T) -> Selfwhere
T: Into<NodeSelector>,
pub fn set_node_selector<T>(self, v: T) -> Selfwhere
T: Into<NodeSelector>,
Sets the value of node_selector.
§Example
use google_cloud_run_v2::model::NodeSelector;
let x = RevisionTemplate::new().set_node_selector(NodeSelector::default()/* use setters */);Sourcepub fn set_or_clear_node_selector<T>(self, v: Option<T>) -> Selfwhere
T: Into<NodeSelector>,
pub fn set_or_clear_node_selector<T>(self, v: Option<T>) -> Selfwhere
T: Into<NodeSelector>,
Sets or clears the value of node_selector.
§Example
use google_cloud_run_v2::model::NodeSelector;
let x = RevisionTemplate::new().set_or_clear_node_selector(Some(NodeSelector::default()/* use setters */));
let x = RevisionTemplate::new().set_or_clear_node_selector(None::<NodeSelector>);Sourcepub fn set_gpu_zonal_redundancy_disabled<T>(self, v: T) -> Self
pub fn set_gpu_zonal_redundancy_disabled<T>(self, v: T) -> Self
Sets the value of gpu_zonal_redundancy_disabled.
§Example
let x = RevisionTemplate::new().set_gpu_zonal_redundancy_disabled(true);Sourcepub fn set_or_clear_gpu_zonal_redundancy_disabled<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_gpu_zonal_redundancy_disabled<T>(self, v: Option<T>) -> Self
Sets or clears the value of gpu_zonal_redundancy_disabled.
§Example
let x = RevisionTemplate::new().set_or_clear_gpu_zonal_redundancy_disabled(Some(false));
let x = RevisionTemplate::new().set_or_clear_gpu_zonal_redundancy_disabled(None::<bool>);Trait Implementations§
Source§impl Clone for RevisionTemplate
impl Clone for RevisionTemplate
Source§fn clone(&self) -> RevisionTemplate
fn clone(&self) -> RevisionTemplate
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more