#[non_exhaustive]pub struct DeployPolicy {
pub name: String,
pub uid: String,
pub description: String,
pub annotations: HashMap<String, String>,
pub labels: HashMap<String, String>,
pub create_time: Option<Timestamp>,
pub update_time: Option<Timestamp>,
pub suspended: bool,
pub selectors: Vec<DeployPolicyResourceSelector>,
pub rules: Vec<PolicyRule>,
pub etag: String,
/* private fields */
}
Expand description
A DeployPolicy
resource in the Cloud Deploy API.
A DeployPolicy
inhibits manual or automation-driven actions within a
Delivery Pipeline or Target.
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: String
Output only. Name of the DeployPolicy
. Format is
projects/{project}/locations/{location}/deployPolicies/{deployPolicy}
.
The deployPolicy
component must match [a-z]([a-z0-9-]{0,61}[a-z0-9])?
uid: String
Output only. Unique identifier of the DeployPolicy
.
description: String
Optional. Description of the DeployPolicy
. Max length is 255 characters.
annotations: HashMap<String, String>
Optional. User annotations. These attributes can only be set and used by the user, and not by Cloud Deploy. Annotations must meet the following constraints:
- Annotations are key/value pairs.
- Valid annotation keys have two segments: an optional prefix and name,
separated by a slash (
/
). - The name segment is required and must be 63 characters or less,
beginning and ending with an alphanumeric character (
[a-z0-9A-Z]
) with dashes (-
), underscores (_
), dots (.
), and alphanumerics between. - The prefix is optional. If specified, the prefix must be a DNS subdomain:
a series of DNS labels separated by dots(
.
), not longer than 253 characters in total, followed by a slash (/
).
See https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/#syntax-and-character-set for more details.
labels: HashMap<String, String>
Labels are attributes that can be set and used by both the user and by Cloud Deploy. Labels must meet the following constraints:
- Keys and values can contain only lowercase letters, numeric characters, underscores, and dashes.
- All characters must use UTF-8 encoding, and international characters are allowed.
- Keys must start with a lowercase letter or international character.
- Each resource is limited to a maximum of 64 labels.
Both keys and values are additionally constrained to be <= 128 bytes.
create_time: Option<Timestamp>
Output only. Time at which the deploy policy was created.
update_time: Option<Timestamp>
Output only. Most recent time at which the deploy policy was updated.
suspended: bool
Optional. When suspended, the policy will not prevent actions from occurring, even if the action violates the policy.
selectors: Vec<DeployPolicyResourceSelector>
Required. Selected resources to which the policy will be applied. At least one selector is required. If one selector matches the resource the policy applies. For example, if there are two selectors and the action being attempted matches one of them, the policy will apply to that action.
rules: Vec<PolicyRule>
Required. Rules to apply. At least one rule must be present.
etag: String
The weak etag of the DeployPolicy
resource.
This checksum is computed by the server based on the value of other
fields, and may be sent on update and delete requests to ensure the
client has an up-to-date value before proceeding.
Implementations§
Source§impl DeployPolicy
impl DeployPolicy
pub fn new() -> Self
Sourcepub fn set_description<T: Into<String>>(self, v: T) -> Self
pub fn set_description<T: Into<String>>(self, v: T) -> Self
Sets the value of description.
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.
Sourcepub fn set_labels<T, K, V>(self, v: T) -> Self
pub fn set_labels<T, K, V>(self, v: T) -> Self
Sets the value of labels.
Sourcepub fn set_create_time<T>(self, v: T) -> Self
pub fn set_create_time<T>(self, v: T) -> Self
Sets the value of create_time.
Sourcepub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
Sets or clears the value of create_time.
Sourcepub fn set_update_time<T>(self, v: T) -> Self
pub fn set_update_time<T>(self, v: T) -> Self
Sets the value of update_time.
Sourcepub fn set_or_clear_update_time<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_update_time<T>(self, v: Option<T>) -> Self
Sets or clears the value of update_time.
Sourcepub fn set_suspended<T: Into<bool>>(self, v: T) -> Self
pub fn set_suspended<T: Into<bool>>(self, v: T) -> Self
Sets the value of suspended.
Sourcepub fn set_selectors<T, V>(self, v: T) -> Self
pub fn set_selectors<T, V>(self, v: T) -> Self
Sets the value of selectors.
Trait Implementations§
Source§impl Clone for DeployPolicy
impl Clone for DeployPolicy
Source§fn clone(&self) -> DeployPolicy
fn clone(&self) -> DeployPolicy
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more