Skip to main content

dtz_containers/models/
service.rs

1/*
2 * DTZ Containers
3 *
4 * a generated client for the DTZ Containers API
5 *
6 * Contact: jens@apimeister.com
7 * Generated by: https://openapi-generator.tech
8 */
9
10#[allow(unused_imports)]
11use crate::models;
12#[allow(unused_imports)]
13use serde::{Deserialize, Serialize};
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct Service {
17    #[serde(rename = "contextId")]
18    pub context_id: dtz_identifier::ContextId,
19    /// whether this service is active and should be propagated to ingress
20    #[serde(rename = "enabled")]
21    pub enabled: bool,
22    /// by default this property is empty, this property is only populated if it was part of the service creation.
23    #[serde(rename = "domain", skip_serializing_if = "Option::is_none")]
24    pub domain: Option<Vec<String>>,
25    #[serde(rename = "serviceId")]
26    pub service_id: dtz_identifier::ServiceId,
27    #[serde(rename = "created")]
28    pub created: String,
29    #[serde(rename = "updated", skip_serializing_if = "Option::is_none")]
30    pub updated: Option<String>,
31    #[serde(rename = "prefix")]
32    pub prefix: String,
33    #[serde(rename = "containerImage")]
34    pub container_image: String,
35    #[serde(rename = "containerImageVersion", skip_serializing_if = "Option::is_none")]
36    pub container_image_version: Option<String>,
37    /// Optional port to expose externally; when omitted the first open container port is exposed automatically.
38    #[serde(rename = "containerPort", skip_serializing_if = "Option::is_none")]
39    pub container_port: Option<i32>,
40    #[serde(rename = "containerPullUser", skip_serializing_if = "Option::is_none")]
41    pub container_pull_user: Option<String>,
42    #[serde(rename = "containerPullPwd", skip_serializing_if = "Option::is_none")]
43    pub container_pull_pwd: Option<String>,
44    #[serde(rename = "envVariables", skip_serializing_if = "Option::is_none")]
45    pub env_variables: Option<std::collections::HashMap<String, models::JobResponseEnvVariablesValue>>,
46    #[serde(rename = "rewrite", skip_serializing_if = "Option::is_none")]
47    pub rewrite: Option<Box<models::ServiceRewrite>>,
48    #[serde(rename = "login", skip_serializing_if = "Option::is_none")]
49    pub login: Option<Box<models::ServiceLogin>>,
50    #[serde(rename = "mounts", skip_serializing_if = "Option::is_none")]
51    pub mounts: Option<Vec<models::VolumeMount>>,
52}
53
54impl Service {
55    pub fn new(context_id: dtz_identifier::ContextId, enabled: bool, service_id: dtz_identifier::ServiceId, created: String, prefix: String, container_image: String) -> Service {
56        Service {
57            context_id,
58            enabled,
59            domain: None,
60            service_id,
61            created,
62            updated: None,
63            prefix,
64            container_image,
65            container_image_version: None,
66            container_port: None,
67            container_pull_user: None,
68            container_pull_pwd: None,
69            env_variables: None,
70            rewrite: None,
71            login: None,
72            mounts: None,
73        }
74    }
75}
76