gcloud-sdk 0.30.0

Async Google gRPC/REST APIs and the client implementation hiding complexity of GCP authentication based on Tonic middleware and Reqwest.
Documentation
use serde::{Deserialize, Serialize}; /*
                                      * Compute Engine API
                                      *
                                      * Creates and runs virtual machines on Google Cloud Platform.
                                      *
                                      * The version of the OpenAPI document: v1
                                      *
                                      * Generated by: https://openapi-generator.tech
                                      */

use crate::google_rest_apis::compute_v1::models;

/// Rule : This is deprecated and has no effect. Do not use.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct Rule {
    /// This is deprecated and has no effect. Do not use.
    #[serde(rename = "action", skip_serializing_if = "Option::is_none")]
    pub action: Option<Action>,
    /// This is deprecated and has no effect. Do not use.
    #[serde(rename = "conditions", skip_serializing_if = "Option::is_none")]
    pub conditions: Option<Vec<models::Condition>>,
    /// This is deprecated and has no effect. Do not use.
    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
    pub description: Option<String>,
    /// This is deprecated and has no effect. Do not use.
    #[serde(rename = "ins", skip_serializing_if = "Option::is_none")]
    pub ins: Option<Vec<String>>,
    /// This is deprecated and has no effect. Do not use.
    #[serde(rename = "logConfigs", skip_serializing_if = "Option::is_none")]
    pub log_configs: Option<Vec<models::LogConfig>>,
    /// This is deprecated and has no effect. Do not use.
    #[serde(rename = "notIns", skip_serializing_if = "Option::is_none")]
    pub not_ins: Option<Vec<String>>,
    /// This is deprecated and has no effect. Do not use.
    #[serde(rename = "permissions", skip_serializing_if = "Option::is_none")]
    pub permissions: Option<Vec<String>>,
}

impl Rule {
    /// This is deprecated and has no effect. Do not use.
    pub fn new() -> Rule {
        Rule {
            action: None,
            conditions: None,
            description: None,
            ins: None,
            log_configs: None,
            not_ins: None,
            permissions: None,
        }
    }
}
/// This is deprecated and has no effect. Do not use.
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Action {
    #[serde(rename = "ALLOW")]
    Allow,
    #[serde(rename = "ALLOW_WITH_LOG")]
    AllowWithLog,
    #[serde(rename = "DENY")]
    Deny,
    #[serde(rename = "DENY_WITH_LOG")]
    DenyWithLog,
    #[serde(rename = "LOG")]
    Log,
    #[serde(rename = "NO_ACTION")]
    NoAction,
}

impl Default for Action {
    fn default() -> Action {
        Self::Allow
    }
}