scaleway_api_rs 0.1.8

Generated library to interact with Scaleway API.
Documentation
/*
 * Account API
 *
 * # Introduction  The Account API allows you to manage projects. Project is Scaleway’s resource management feature. Designed to help you organize your infrastructure and cloud services, the feature allows resources to be isolated and grouped into specific projects.
 *
 * The version of the OpenAPI document: v2
 *
 * Generated by: https://openapi-generator.tech
 */

#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct SetImageRequest {
    #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
    pub name: Option<String>,
    #[serde(rename = "arch", skip_serializing_if = "Option::is_none")]
    pub arch: Option<crate::models::ScalewayPeriodInstancePeriodV1PeriodArch>,
    /// (RFC 3339 format)
    #[serde(
        rename = "creation_date",
        default,
        with = "::serde_with::rust::double_option",
        skip_serializing_if = "Option::is_none"
    )]
    pub creation_date: Option<Option<String>>,
    /// (RFC 3339 format)
    #[serde(
        rename = "modification_date",
        default,
        with = "::serde_with::rust::double_option",
        skip_serializing_if = "Option::is_none"
    )]
    pub modification_date: Option<Option<String>>,
    #[serde(rename = "default_bootscript", skip_serializing_if = "Option::is_none")]
    pub default_bootscript:
        Option<Box<crate::models::ScalewayPeriodInstancePeriodV1PeriodBootscript>>,
    #[serde(rename = "extra_volumes", skip_serializing_if = "Option::is_none")]
    pub extra_volumes: Option<crate::models::SetImageRequestExtraVolumes>,
    #[serde(rename = "from_server", skip_serializing_if = "Option::is_none")]
    pub from_server: Option<String>,
    #[serde(rename = "organization", skip_serializing_if = "Option::is_none")]
    pub organization: Option<String>,
    #[serde(rename = "public", skip_serializing_if = "Option::is_none")]
    pub public: Option<bool>,
    #[serde(rename = "root_volume", skip_serializing_if = "Option::is_none")]
    pub root_volume: Option<Box<crate::models::ScalewayPeriodInstancePeriodV1PeriodVolumeSummary>>,
    #[serde(rename = "state", skip_serializing_if = "Option::is_none")]
    pub state: Option<crate::models::ScalewayPeriodInstancePeriodV1PeriodImagePeriodState>,
    #[serde(rename = "project", skip_serializing_if = "Option::is_none")]
    pub project: Option<String>,
    #[serde(
        rename = "tags",
        default,
        with = "::serde_with::rust::double_option",
        skip_serializing_if = "Option::is_none"
    )]
    pub tags: Option<Option<crate::models::ScalewayPeriodStdPeriodStringsValue>>,
}

impl SetImageRequest {
    pub fn new() -> SetImageRequest {
        SetImageRequest {
            name: None,
            arch: None,
            creation_date: None,
            modification_date: None,
            default_bootscript: None,
            extra_volumes: None,
            from_server: None,
            organization: None,
            public: None,
            root_volume: None,
            state: None,
            project: None,
            tags: None,
        }
    }
}