/*
* 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 ProjectsDeployStart {
/// Commit is the git sha this build was produced from, recorded on the deployment so a released site can be traced back to its source. Optional. It is the ONLY field here, and deliberately: the predecessor also accepted `source` and `branch`. `source` was the Content-Type discriminator this split removed. `branch` was accepted and DISCARDED — there is no branch column on a deployment, and the lifecycle event derives the branch from the project's own linked one — so declaring it would publish a settable field that does nothing into the document, every generated SDK and the MCP input schema. A field that is read by nothing is not described as if it were. `url:\"-\"` because zip binds the query string OVER a decoded body, so without it a `?commit=` the caller never sent would outrank the one it did.
#[serde(rename = "commit", skip_serializing_if = "Option::is_none")]
pub commit: Option<String>,
/// Slug is the site to deploy, from the path.
#[serde(rename = "slug", skip_serializing_if = "Option::is_none")]
pub slug: Option<String>,
}
impl ProjectsDeployStart {
pub fn new() -> ProjectsDeployStart {
ProjectsDeployStart {
commit: None,
slug: None,
}
}
}