hanzo-client 8.5.156

Generated client for the Hanzo API — every service, one crate.
Documentation
/*
 * Hanzo Cloud API
 *
 * The Hanzo Cloud API as a customer calls it: every operation under /v1/ except the operator's admin product, relay routes, legacy spellings and capabilities still reached by flag. Tagged by product: the first path segment after /v1/.
 *
 * The version of the OpenAPI document: v1
 * 
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ProjectsComplete {
    /// Bytes is their total size in bytes.
    #[serde(rename = "bytes", skip_serializing_if = "Option::is_none")]
    pub bytes: Option<i32>,
    /// Commit is the revision that was built, recorded on the deployment.
    #[serde(rename = "commit", skip_serializing_if = "Option::is_none")]
    pub commit: Option<String>,
    /// Files is how many objects CI published.
    #[serde(rename = "files", skip_serializing_if = "Option::is_none")]
    pub files: Option<i32>,
    /// ID is the queued deployment to complete, from the path.
    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
    pub id: Option<String>,
    /// Keys is the manifest CI just uploaded, RELATIVE to the deployment prefix. It is what replaces `aws s3 sync --delete`: an upload grant authorizes writes only, so CI cannot remove a file, and cloud reconciles the prefix against this list instead (grant.go). Omit it and nothing is deleted — the prefix only grows, which is the old pre-grant behaviour and a safe default.
    #[serde(rename = "keys", skip_serializing_if = "Option::is_none")]
    pub keys: Option<Vec<String>>,
    /// LiveURL is a HINT at the address the site should serve at. The public host is claimed by cloud first, so this can refine the URL a deployment reports but can never assert a subdomain another tenant holds.
    #[serde(rename = "liveUrl", skip_serializing_if = "Option::is_none")]
    pub live_url: Option<String>,
    /// Message is what happened, in words — on an error completion, why it failed.
    #[serde(rename = "message", skip_serializing_if = "Option::is_none")]
    pub message: Option<String>,
    /// Slug is the project the deployment belongs to, from the path.
    #[serde(rename = "slug", skip_serializing_if = "Option::is_none")]
    pub slug: Option<String>,
    /// Status is how the build ended: `live` if it succeeded, `error` if it did not. Nothing else is accepted.
    #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
    pub status: Option<String>,
}

impl ProjectsComplete {
    pub fn new() -> ProjectsComplete {
        ProjectsComplete {
            bytes: None,
            commit: None,
            files: None,
            id: None,
            keys: None,
            live_url: None,
            message: None,
            slug: None,
            status: None,
        }
    }
}