/*
* 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 ArgoSpec {
/// Destination is which cluster and namespace it lands in. Zero-valued on a CD row: this projection reports CD's source, not its destination.
#[serde(rename = "destination", skip_serializing_if = "Option::is_none")]
pub destination: Option<Box<models::ArgoDestination>>,
/// Project is the AppProject this application is grouped and filtered under. For an App CR it is the app.kubernetes.io/part-of label — the IAM project name — falling back to \"default\" when the CR carries no such label.
#[serde(rename = "project", skip_serializing_if = "Option::is_none")]
pub project: Option<String>,
/// Source is where the desired state is declared.
#[serde(rename = "source", skip_serializing_if = "Option::is_none")]
pub source: Option<Box<models::ArgoSource>>,
}
impl ArgoSpec {
pub fn new() -> ArgoSpec {
ArgoSpec {
destination: None,
project: None,
source: None,
}
}
}