#[non_exhaustive]pub struct ServiceConfig {Show 19 fields
pub service: String,
pub timeout_seconds: i32,
pub available_memory: String,
pub available_cpu: String,
pub environment_variables: HashMap<String, String>,
pub max_instance_count: i32,
pub min_instance_count: i32,
pub vpc_connector: String,
pub vpc_connector_egress_settings: VpcConnectorEgressSettings,
pub ingress_settings: IngressSettings,
pub uri: String,
pub service_account_email: String,
pub all_traffic_on_latest_revision: bool,
pub secret_environment_variables: Vec<SecretEnvVar>,
pub secret_volumes: Vec<SecretVolume>,
pub revision: String,
pub max_instance_request_concurrency: i32,
pub security_level: SecurityLevel,
pub binary_authorization_policy: String,
/* private fields */
}
Expand description
Describes the Service being deployed. Currently Supported : Cloud Run (fully managed).
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.service: String
Output only. Name of the service associated with a Function.
The format of this field is
projects/{project}/locations/{region}/services/{service}
timeout_seconds: i32
The function execution timeout. Execution is considered failed and can be terminated if the function is not completed at the end of the timeout period. Defaults to 60 seconds.
available_memory: String
The amount of memory available for a function. Defaults to 256M. Supported units are k, M, G, Mi, Gi. If no unit is supplied the value is interpreted as bytes. See https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go a full description.
available_cpu: String
The number of CPUs used in a single container instance. Default value is calculated from available memory. Supports the same values as Cloud Run, see https://cloud.google.com/run/docs/reference/rest/v1/Container#resourcerequirements Example: “1” indicates 1 vCPU
environment_variables: HashMap<String, String>
Environment variables that shall be available during function execution.
max_instance_count: i32
The limit on the maximum number of function instances that may coexist at a given time.
In some cases, such as rapid traffic surges, Cloud Functions may, for a short period of time, create more instances than the specified max instances limit. If your function cannot tolerate this temporary behavior, you may want to factor in a safety margin and set a lower max instances value than your function can tolerate.
See the Max Instances Guide for more details.
min_instance_count: i32
The limit on the minimum number of function instances that may coexist at a given time.
Function instances are kept in idle state for a short period after they finished executing the request to reduce cold start time for subsequent requests. Setting a minimum instance count will ensure that the given number of instances are kept running in idle state always. This can help with cold start times when jump in incoming request count occurs after the idle instance would have been stopped in the default case.
vpc_connector: String
The Serverless VPC Access connector that this cloud function can connect
to. The format of this field is projects/*/locations/*/connectors/*
.
vpc_connector_egress_settings: VpcConnectorEgressSettings
The egress settings for the connector, controlling what traffic is diverted through it.
ingress_settings: IngressSettings
The ingress settings for the function, controlling what traffic can reach it.
uri: String
Output only. URI of the Service deployed.
service_account_email: String
The email of the service’s service account. If empty, defaults to
{project_number}-compute@developer.gserviceaccount.com
.
all_traffic_on_latest_revision: bool
Whether 100% of traffic is routed to the latest revision. On CreateFunction and UpdateFunction, when set to true, the revision being deployed will serve 100% of traffic, ignoring any traffic split settings, if any. On GetFunction, true will be returned if the latest revision is serving 100% of traffic.
secret_environment_variables: Vec<SecretEnvVar>
Secret environment variables configuration.
secret_volumes: Vec<SecretVolume>
Secret volumes configuration.
revision: String
Output only. The name of service revision.
max_instance_request_concurrency: i32
Sets the maximum number of concurrent requests that each instance can receive. Defaults to 1.
security_level: SecurityLevel
Security level configure whether the function only accepts https. This configuration is only applicable to 1st Gen functions with Http trigger. By default https is optional for 1st Gen functions; 2nd Gen functions are https ONLY.
Optional. The binary authorization policy to be checked when deploying the Cloud Run service.
Implementations§
Source§impl ServiceConfig
impl ServiceConfig
pub fn new() -> Self
Sourcepub fn set_service<T: Into<String>>(self, v: T) -> Self
pub fn set_service<T: Into<String>>(self, v: T) -> Self
Sets the value of service.
Sourcepub fn set_timeout_seconds<T: Into<i32>>(self, v: T) -> Self
pub fn set_timeout_seconds<T: Into<i32>>(self, v: T) -> Self
Sets the value of timeout_seconds.
Sourcepub fn set_available_memory<T: Into<String>>(self, v: T) -> Self
pub fn set_available_memory<T: Into<String>>(self, v: T) -> Self
Sets the value of available_memory.
Sourcepub fn set_available_cpu<T: Into<String>>(self, v: T) -> Self
pub fn set_available_cpu<T: Into<String>>(self, v: T) -> Self
Sets the value of available_cpu.
Sourcepub fn set_environment_variables<T, K, V>(self, v: T) -> Self
pub fn set_environment_variables<T, K, V>(self, v: T) -> Self
Sets the value of environment_variables.
Sourcepub fn set_max_instance_count<T: Into<i32>>(self, v: T) -> Self
pub fn set_max_instance_count<T: Into<i32>>(self, v: T) -> Self
Sets the value of max_instance_count.
Sourcepub fn set_min_instance_count<T: Into<i32>>(self, v: T) -> Self
pub fn set_min_instance_count<T: Into<i32>>(self, v: T) -> Self
Sets the value of min_instance_count.
Sourcepub fn set_vpc_connector<T: Into<String>>(self, v: T) -> Self
pub fn set_vpc_connector<T: Into<String>>(self, v: T) -> Self
Sets the value of vpc_connector.
Sourcepub fn set_vpc_connector_egress_settings<T: Into<VpcConnectorEgressSettings>>(
self,
v: T,
) -> Self
pub fn set_vpc_connector_egress_settings<T: Into<VpcConnectorEgressSettings>>( self, v: T, ) -> Self
Sets the value of vpc_connector_egress_settings.
Sourcepub fn set_ingress_settings<T: Into<IngressSettings>>(self, v: T) -> Self
pub fn set_ingress_settings<T: Into<IngressSettings>>(self, v: T) -> Self
Sets the value of ingress_settings.
Sourcepub fn set_service_account_email<T: Into<String>>(self, v: T) -> Self
pub fn set_service_account_email<T: Into<String>>(self, v: T) -> Self
Sets the value of service_account_email.
Sourcepub fn set_all_traffic_on_latest_revision<T: Into<bool>>(self, v: T) -> Self
pub fn set_all_traffic_on_latest_revision<T: Into<bool>>(self, v: T) -> Self
Sets the value of all_traffic_on_latest_revision.
Sourcepub fn set_secret_environment_variables<T, V>(self, v: T) -> Self
pub fn set_secret_environment_variables<T, V>(self, v: T) -> Self
Sets the value of secret_environment_variables.
Sourcepub fn set_secret_volumes<T, V>(self, v: T) -> Self
pub fn set_secret_volumes<T, V>(self, v: T) -> Self
Sets the value of secret_volumes.
Sourcepub fn set_revision<T: Into<String>>(self, v: T) -> Self
pub fn set_revision<T: Into<String>>(self, v: T) -> Self
Sets the value of revision.
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.
Sourcepub fn set_security_level<T: Into<SecurityLevel>>(self, v: T) -> Self
pub fn set_security_level<T: Into<SecurityLevel>>(self, v: T) -> Self
Sets the value of security_level.
Sets the value of binary_authorization_policy.
Trait Implementations§
Source§impl Clone for ServiceConfig
impl Clone for ServiceConfig
Source§fn clone(&self) -> ServiceConfig
fn clone(&self) -> ServiceConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more