#[non_exhaustive]pub struct Project {Show 15 fields
pub cloud_armor_tier: Option<CloudArmorTier>,
pub common_instance_metadata: Option<Metadata>,
pub creation_timestamp: Option<String>,
pub default_network_tier: Option<DefaultNetworkTier>,
pub default_service_account: Option<String>,
pub description: Option<String>,
pub enabled_features: Vec<String>,
pub id: Option<u64>,
pub kind: Option<String>,
pub name: Option<String>,
pub quotas: Vec<Quota>,
pub self_link: Option<String>,
pub usage_export_location: Option<UsageExportLocation>,
pub vm_dns_setting: Option<VmDnsSetting>,
pub xpn_project_status: Option<XpnProjectStatus>,
/* private fields */
}projects only.Expand description
Represents a Project resource.
A project is used to organize resources in a Google Cloud Platform environment. For more information, read about the Resource Hierarchy.
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.cloud_armor_tier: Option<CloudArmorTier>Output only. [Output Only] The Cloud Armor tier for this project. It can be one of the following values: CA_STANDARD,CA_ENTERPRISE_PAYGO.
If this field is not specified, it is assumed to beCA_STANDARD.
common_instance_metadata: Option<Metadata>Metadata key/value pairs available to all instances contained in this project. See Custom metadata for more information.
creation_timestamp: Option<String>[Output Only] Creation timestamp inRFC3339 text format.
default_network_tier: Option<DefaultNetworkTier>This signifies the default network tier used for configuring resources of the project and can only take the following values:PREMIUM, STANDARD. Initially the default network tier is PREMIUM.
default_service_account: Option<String>[Output Only] Default service account used by VMs running in this project.
description: Option<String>An optional textual description of the resource.
enabled_features: Vec<String>An optional list of restricted features enabled for use on this project.
id: Option<u64>[Output Only] The unique identifier for the resource. This identifier is defined by the server. This is not the project ID, and is just a unique ID used by Compute Engine to identify resources.
kind: Option<String>Output only. [Output Only] Type of the resource. Always compute#project for projects.
name: Option<String>The project ID. For example: my-example-project. Use the project ID to make requests to Compute Engine.
quotas: Vec<Quota>[Output Only] Quotas assigned to this project.
self_link: Option<String>[Output Only] Server-defined URL for the resource.
usage_export_location: Option<UsageExportLocation>An optional naming prefix for daily usage reports and the Google Cloud Storage bucket where they are stored.
vm_dns_setting: Option<VmDnsSetting>Output only. [Output Only] Default internal DNS setting used by VMs running in this project.
xpn_project_status: Option<XpnProjectStatus>[Output Only] The role this project has in a shared VPC configuration. Currently, only projects with the host role, which is specified by the value HOST, are differentiated.
Implementations§
Source§impl Project
impl Project
Sourcepub fn set_cloud_armor_tier<T>(self, v: T) -> Selfwhere
T: Into<CloudArmorTier>,
pub fn set_cloud_armor_tier<T>(self, v: T) -> Selfwhere
T: Into<CloudArmorTier>,
Sets the value of cloud_armor_tier.
§Example
use google_cloud_compute_v1::model::project::CloudArmorTier;
let x0 = Project::new().set_cloud_armor_tier(CloudArmorTier::CaEnterprisePaygo);
let x1 = Project::new().set_cloud_armor_tier(CloudArmorTier::CaStandard);Sourcepub fn set_or_clear_cloud_armor_tier<T>(self, v: Option<T>) -> Selfwhere
T: Into<CloudArmorTier>,
pub fn set_or_clear_cloud_armor_tier<T>(self, v: Option<T>) -> Selfwhere
T: Into<CloudArmorTier>,
Sets or clears the value of cloud_armor_tier.
§Example
use google_cloud_compute_v1::model::project::CloudArmorTier;
let x0 = Project::new().set_or_clear_cloud_armor_tier(Some(CloudArmorTier::CaEnterprisePaygo));
let x1 = Project::new().set_or_clear_cloud_armor_tier(Some(CloudArmorTier::CaStandard));
let x_none = Project::new().set_or_clear_cloud_armor_tier(None::<CloudArmorTier>);Sourcepub fn set_common_instance_metadata<T>(self, v: T) -> Self
pub fn set_common_instance_metadata<T>(self, v: T) -> Self
Sets the value of common_instance_metadata.
§Example
use google_cloud_compute_v1::model::Metadata;
let x = Project::new().set_common_instance_metadata(Metadata::default()/* use setters */);Sourcepub fn set_or_clear_common_instance_metadata<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_common_instance_metadata<T>(self, v: Option<T>) -> Self
Sets or clears the value of common_instance_metadata.
§Example
use google_cloud_compute_v1::model::Metadata;
let x = Project::new().set_or_clear_common_instance_metadata(Some(Metadata::default()/* use setters */));
let x = Project::new().set_or_clear_common_instance_metadata(None::<Metadata>);Sourcepub fn set_creation_timestamp<T>(self, v: T) -> Self
pub fn set_creation_timestamp<T>(self, v: T) -> Self
Sets the value of creation_timestamp.
§Example
let x = Project::new().set_creation_timestamp("example");Sourcepub fn set_or_clear_creation_timestamp<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_creation_timestamp<T>(self, v: Option<T>) -> Self
Sets or clears the value of creation_timestamp.
§Example
let x = Project::new().set_or_clear_creation_timestamp(Some("example"));
let x = Project::new().set_or_clear_creation_timestamp(None::<String>);Sourcepub fn set_default_network_tier<T>(self, v: T) -> Selfwhere
T: Into<DefaultNetworkTier>,
pub fn set_default_network_tier<T>(self, v: T) -> Selfwhere
T: Into<DefaultNetworkTier>,
Sets the value of default_network_tier.
§Example
use google_cloud_compute_v1::model::project::DefaultNetworkTier;
let x0 = Project::new().set_default_network_tier(DefaultNetworkTier::Premium);
let x1 = Project::new().set_default_network_tier(DefaultNetworkTier::Standard);
let x2 = Project::new().set_default_network_tier(DefaultNetworkTier::StandardOverridesFixedStandard);Sourcepub fn set_or_clear_default_network_tier<T>(self, v: Option<T>) -> Selfwhere
T: Into<DefaultNetworkTier>,
pub fn set_or_clear_default_network_tier<T>(self, v: Option<T>) -> Selfwhere
T: Into<DefaultNetworkTier>,
Sets or clears the value of default_network_tier.
§Example
use google_cloud_compute_v1::model::project::DefaultNetworkTier;
let x0 = Project::new().set_or_clear_default_network_tier(Some(DefaultNetworkTier::Premium));
let x1 = Project::new().set_or_clear_default_network_tier(Some(DefaultNetworkTier::Standard));
let x2 = Project::new().set_or_clear_default_network_tier(Some(DefaultNetworkTier::StandardOverridesFixedStandard));
let x_none = Project::new().set_or_clear_default_network_tier(None::<DefaultNetworkTier>);Sourcepub fn set_default_service_account<T>(self, v: T) -> Self
pub fn set_default_service_account<T>(self, v: T) -> Self
Sets the value of default_service_account.
§Example
let x = Project::new().set_default_service_account("example");Sourcepub fn set_or_clear_default_service_account<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_default_service_account<T>(self, v: Option<T>) -> Self
Sets or clears the value of default_service_account.
§Example
let x = Project::new().set_or_clear_default_service_account(Some("example"));
let x = Project::new().set_or_clear_default_service_account(None::<String>);Sourcepub fn set_description<T>(self, v: T) -> Self
pub fn set_description<T>(self, v: T) -> Self
Sourcepub fn set_or_clear_description<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_description<T>(self, v: Option<T>) -> Self
Sets or clears the value of description.
§Example
let x = Project::new().set_or_clear_description(Some("example"));
let x = Project::new().set_or_clear_description(None::<String>);Sourcepub fn set_enabled_features<T, V>(self, v: T) -> Self
pub fn set_enabled_features<T, V>(self, v: T) -> Self
Sets the value of enabled_features.
§Example
let x = Project::new().set_enabled_features(["a", "b", "c"]);Sourcepub fn set_or_clear_id<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_id<T>(self, v: Option<T>) -> Self
Sourcepub fn set_or_clear_kind<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_kind<T>(self, v: Option<T>) -> Self
Sourcepub fn set_or_clear_name<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_name<T>(self, v: Option<T>) -> Self
Sourcepub fn set_quotas<T, V>(self, v: T) -> Self
pub fn set_quotas<T, V>(self, v: T) -> Self
Sourcepub fn set_self_link<T>(self, v: T) -> Self
pub fn set_self_link<T>(self, v: T) -> Self
Sourcepub fn set_or_clear_self_link<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_self_link<T>(self, v: Option<T>) -> Self
Sourcepub fn set_usage_export_location<T>(self, v: T) -> Selfwhere
T: Into<UsageExportLocation>,
pub fn set_usage_export_location<T>(self, v: T) -> Selfwhere
T: Into<UsageExportLocation>,
Sets the value of usage_export_location.
§Example
use google_cloud_compute_v1::model::UsageExportLocation;
let x = Project::new().set_usage_export_location(UsageExportLocation::default()/* use setters */);Sourcepub fn set_or_clear_usage_export_location<T>(self, v: Option<T>) -> Selfwhere
T: Into<UsageExportLocation>,
pub fn set_or_clear_usage_export_location<T>(self, v: Option<T>) -> Selfwhere
T: Into<UsageExportLocation>,
Sets or clears the value of usage_export_location.
§Example
use google_cloud_compute_v1::model::UsageExportLocation;
let x = Project::new().set_or_clear_usage_export_location(Some(UsageExportLocation::default()/* use setters */));
let x = Project::new().set_or_clear_usage_export_location(None::<UsageExportLocation>);Sourcepub fn set_vm_dns_setting<T>(self, v: T) -> Selfwhere
T: Into<VmDnsSetting>,
pub fn set_vm_dns_setting<T>(self, v: T) -> Selfwhere
T: Into<VmDnsSetting>,
Sets the value of vm_dns_setting.
§Example
use google_cloud_compute_v1::model::project::VmDnsSetting;
let x0 = Project::new().set_vm_dns_setting(VmDnsSetting::UnspecifiedVmDnsSetting);
let x1 = Project::new().set_vm_dns_setting(VmDnsSetting::ZonalDefault);
let x2 = Project::new().set_vm_dns_setting(VmDnsSetting::ZonalOnly);Sourcepub fn set_or_clear_vm_dns_setting<T>(self, v: Option<T>) -> Selfwhere
T: Into<VmDnsSetting>,
pub fn set_or_clear_vm_dns_setting<T>(self, v: Option<T>) -> Selfwhere
T: Into<VmDnsSetting>,
Sets or clears the value of vm_dns_setting.
§Example
use google_cloud_compute_v1::model::project::VmDnsSetting;
let x0 = Project::new().set_or_clear_vm_dns_setting(Some(VmDnsSetting::UnspecifiedVmDnsSetting));
let x1 = Project::new().set_or_clear_vm_dns_setting(Some(VmDnsSetting::ZonalDefault));
let x2 = Project::new().set_or_clear_vm_dns_setting(Some(VmDnsSetting::ZonalOnly));
let x_none = Project::new().set_or_clear_vm_dns_setting(None::<VmDnsSetting>);Sourcepub fn set_xpn_project_status<T>(self, v: T) -> Selfwhere
T: Into<XpnProjectStatus>,
pub fn set_xpn_project_status<T>(self, v: T) -> Selfwhere
T: Into<XpnProjectStatus>,
Sets the value of xpn_project_status.
§Example
use google_cloud_compute_v1::model::project::XpnProjectStatus;
let x0 = Project::new().set_xpn_project_status(XpnProjectStatus::UnspecifiedXpnProjectStatus);Sourcepub fn set_or_clear_xpn_project_status<T>(self, v: Option<T>) -> Selfwhere
T: Into<XpnProjectStatus>,
pub fn set_or_clear_xpn_project_status<T>(self, v: Option<T>) -> Selfwhere
T: Into<XpnProjectStatus>,
Sets or clears the value of xpn_project_status.
§Example
use google_cloud_compute_v1::model::project::XpnProjectStatus;
let x0 = Project::new().set_or_clear_xpn_project_status(Some(XpnProjectStatus::UnspecifiedXpnProjectStatus));
let x_none = Project::new().set_or_clear_xpn_project_status(None::<XpnProjectStatus>);Trait Implementations§
impl StructuralPartialEq for Project
Auto Trait Implementations§
impl !Freeze for Project
impl RefUnwindSafe for Project
impl Send for Project
impl Sync for Project
impl Unpin for Project
impl UnsafeUnpin for Project
impl UnwindSafe for Project
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request