#[non_exhaustive]pub struct Constraint {
pub name: String,
pub display_name: String,
pub description: String,
pub constraint_default: ConstraintDefault,
pub supports_dry_run: bool,
pub equivalent_constraint: String,
pub supports_simulation: bool,
pub constraint_type: Option<ConstraintType>,
/* private fields */
}Expand description
A constraint describes a way to restrict resource’s configuration. For
example, you could enforce a constraint that controls which Google Cloud
services can be activated across an organization, or whether a Compute Engine
instance can have serial port connections established. Constraints can be
configured by the organization policy administrator to fit the needs of the
organization by setting a policy that includes constraints at different
locations in the organization’s resource hierarchy. Policies are inherited
down the resource hierarchy from higher levels, but can also be overridden.
For details about the inheritance rules, see
Policy.
Constraints have a default behavior determined by the constraint_default
field, which is the enforcement behavior that is used in the absence of a
policy being defined or inherited for the resource in question.
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.name: StringImmutable. The resource name of the constraint. Must be in one of the following forms:
projects/{project_number}/constraints/{constraint_name}folders/{folder_id}/constraints/{constraint_name}organizations/{organization_id}/constraints/{constraint_name}
For example, “/projects/123/constraints/compute.disableSerialPortAccess”.
display_name: StringThe human readable name.
Mutable.
description: StringDetailed description of what this constraint controls as well as how and where it is enforced.
Mutable.
constraint_default: ConstraintDefaultThe evaluation behavior of this constraint in the absence of a policy.
supports_dry_run: boolShows if dry run is supported for this constraint or not.
equivalent_constraint: StringManaged constraint and canned constraint sometimes can have equivalents. This field is used to store the equivalent constraint name.
supports_simulation: boolShows if simulation is supported for this constraint or not.
constraint_type: Option<ConstraintType>The type of restrictions for this Constraint.
Immutable after creation.
Implementations§
Source§impl Constraint
impl Constraint
Sourcepub fn set_display_name<T: Into<String>>(self, v: T) -> Self
pub fn set_display_name<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_description<T: Into<String>>(self, v: T) -> Self
pub fn set_description<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_constraint_default<T: Into<ConstraintDefault>>(self, v: T) -> Self
pub fn set_constraint_default<T: Into<ConstraintDefault>>(self, v: T) -> Self
Sets the value of constraint_default.
§Example
use google_cloud_orgpolicy_v2::model::constraint::ConstraintDefault;
let x0 = Constraint::new().set_constraint_default(ConstraintDefault::Allow);
let x1 = Constraint::new().set_constraint_default(ConstraintDefault::Deny);Sourcepub fn set_supports_dry_run<T: Into<bool>>(self, v: T) -> Self
pub fn set_supports_dry_run<T: Into<bool>>(self, v: T) -> Self
Sourcepub fn set_equivalent_constraint<T: Into<String>>(self, v: T) -> Self
pub fn set_equivalent_constraint<T: Into<String>>(self, v: T) -> Self
Sets the value of equivalent_constraint.
§Example
let x = Constraint::new().set_equivalent_constraint("example");Sourcepub fn set_supports_simulation<T: Into<bool>>(self, v: T) -> Self
pub fn set_supports_simulation<T: Into<bool>>(self, v: T) -> Self
Sets the value of supports_simulation.
§Example
let x = Constraint::new().set_supports_simulation(true);Sourcepub fn set_constraint_type<T: Into<Option<ConstraintType>>>(self, v: T) -> Self
pub fn set_constraint_type<T: Into<Option<ConstraintType>>>(self, v: T) -> Self
Sets the value of constraint_type.
Note that all the setters affecting constraint_type are mutually
exclusive.
§Example
use google_cloud_orgpolicy_v2::model::constraint::ListConstraint;
let x = Constraint::new().set_constraint_type(Some(
google_cloud_orgpolicy_v2::model::constraint::ConstraintType::ListConstraint(ListConstraint::default().into())));Sourcepub fn list_constraint(&self) -> Option<&Box<ListConstraint>>
pub fn list_constraint(&self) -> Option<&Box<ListConstraint>>
The value of constraint_type
if it holds a ListConstraint, None if the field is not set or
holds a different branch.
Sourcepub fn set_list_constraint<T: Into<Box<ListConstraint>>>(self, v: T) -> Self
pub fn set_list_constraint<T: Into<Box<ListConstraint>>>(self, v: T) -> Self
Sets the value of constraint_type
to hold a ListConstraint.
Note that all the setters affecting constraint_type are
mutually exclusive.
§Example
use google_cloud_orgpolicy_v2::model::constraint::ListConstraint;
let x = Constraint::new().set_list_constraint(ListConstraint::default()/* use setters */);
assert!(x.list_constraint().is_some());
assert!(x.boolean_constraint().is_none());Sourcepub fn boolean_constraint(&self) -> Option<&Box<BooleanConstraint>>
pub fn boolean_constraint(&self) -> Option<&Box<BooleanConstraint>>
The value of constraint_type
if it holds a BooleanConstraint, None if the field is not set or
holds a different branch.
Sourcepub fn set_boolean_constraint<T: Into<Box<BooleanConstraint>>>(
self,
v: T,
) -> Self
pub fn set_boolean_constraint<T: Into<Box<BooleanConstraint>>>( self, v: T, ) -> Self
Sets the value of constraint_type
to hold a BooleanConstraint.
Note that all the setters affecting constraint_type are
mutually exclusive.
§Example
use google_cloud_orgpolicy_v2::model::constraint::BooleanConstraint;
let x = Constraint::new().set_boolean_constraint(BooleanConstraint::default()/* use setters */);
assert!(x.boolean_constraint().is_some());
assert!(x.list_constraint().is_none());Trait Implementations§
Source§impl Clone for Constraint
impl Clone for Constraint
Source§fn clone(&self) -> Constraint
fn clone(&self) -> Constraint
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for Constraint
impl Debug for Constraint
Source§impl Default for Constraint
impl Default for Constraint
Source§fn default() -> Constraint
fn default() -> Constraint
Source§impl PartialEq for Constraint
impl PartialEq for Constraint
Source§fn eq(&self, other: &Constraint) -> bool
fn eq(&self, other: &Constraint) -> bool
self and other values to be equal, and is used by ==.