hanzo_client/models/tls_config.rs
1/*
2 * Hanzo Cloud API
3 *
4 * 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/.
5 *
6 * The version of the OpenAPI document: v1
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct TlsConfig {
16 /// ACMEEmail is the ACME account email. It binds an account for the lifetime of an edge process, so it applies only when the edge (re)starts.
17 #[serde(rename = "acmeEmail", skip_serializing_if = "Option::is_none")]
18 pub acme_email: Option<String>,
19 /// ExtraHosts get certificates without owning a route — at most 256. They feed the ACME HostPolicy and hot-apply on the next reload.
20 #[serde(rename = "extraHosts", skip_serializing_if = "Option::is_none")]
21 pub extra_hosts: Option<Vec<String>>,
22 /// Staging issues from Let's Encrypt's staging directory (untrusted certs, high rate limits). Like ACMEEmail it applies only when the edge (re)starts.
23 #[serde(rename = "staging", skip_serializing_if = "Option::is_none")]
24 pub staging: Option<bool>,
25}
26
27impl TlsConfig {
28 pub fn new() -> TlsConfig {
29 TlsConfig {
30 acme_email: None,
31 extra_hosts: None,
32 staging: None,
33 }
34 }
35}
36