gitbundle_sdk/models/
stage_model.rs

1/*
2 * GitBundle API
3 *
4 * GitBundle API documentation.
5 *
6 * The version of the OpenAPI document: 3.3.0
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct StageModel {
17    #[serde(rename = "action_id")]
18    pub action_id: i64,
19    #[serde(rename = "arch")]
20    pub arch: String,
21    #[serde(rename = "created")]
22    pub created: i64,
23    #[serde(rename = "errignore")]
24    pub errignore: bool,
25    #[serde(rename = "error")]
26    pub error: String,
27    #[serde(rename = "exit_code")]
28    pub exit_code: i64,
29    #[serde(rename = "id")]
30    pub id: i64,
31    #[serde(rename = "is_concurrent")]
32    pub is_concurrent: bool,
33    #[serde(rename = "is_matrix")]
34    pub is_matrix: bool,
35    #[serde(rename = "is_resolved")]
36    pub is_resolved: bool,
37    #[serde(rename = "is_reusable")]
38    pub is_reusable: bool,
39    #[serde(rename = "job_key")]
40    pub job_key: String,
41    #[serde(rename = "kernel")]
42    pub kernel: String,
43    #[serde(rename = "kind")]
44    pub kind: String,
45    #[serde(rename = "labels")]
46    pub labels: Vec<String>,
47    #[serde(rename = "limit")]
48    pub limit: i64,
49    #[serde(rename = "limit_repo")]
50    pub limit_repo: i64,
51    #[serde(rename = "machine")]
52    pub machine: String,
53    #[serde(rename = "name")]
54    pub name: String,
55    #[serde(rename = "needs")]
56    pub needs: Vec<String>,
57    #[serde(rename = "number")]
58    pub number: i64,
59    #[serde(rename = "on_failure")]
60    pub on_failure: bool,
61    #[serde(rename = "on_success")]
62    pub on_success: bool,
63    #[serde(rename = "os")]
64    pub os: String,
65    #[serde(
66        rename = "outputs",
67        default,
68        with = "::serde_with::rust::double_option",
69        skip_serializing_if = "Option::is_none"
70    )]
71    pub outputs: Option<Option<std::collections::HashMap<String, String>>>,
72    #[serde(rename = "parent_group_id")]
73    pub parent_group_id: i64,
74    #[serde(
75        rename = "parent_id",
76        default,
77        with = "::serde_with::rust::double_option",
78        skip_serializing_if = "Option::is_none"
79    )]
80    pub parent_id: Option<Option<i64>>,
81    #[serde(rename = "repo_id")]
82    pub repo_id: i64,
83    #[serde(
84        rename = "started",
85        default,
86        with = "::serde_with::rust::double_option",
87        skip_serializing_if = "Option::is_none"
88    )]
89    pub started: Option<Option<i64>>,
90    #[serde(rename = "status")]
91    pub status: models::CiStatus,
92    #[serde(
93        rename = "stopped",
94        default,
95        with = "::serde_with::rust::double_option",
96        skip_serializing_if = "Option::is_none"
97    )]
98    pub stopped: Option<Option<i64>>,
99    #[serde(rename = "type")]
100    pub r#type: String,
101    #[serde(rename = "updated")]
102    pub updated: i64,
103    #[serde(rename = "variant")]
104    pub variant: String,
105    #[serde(rename = "version")]
106    pub version: i64,
107    #[serde(rename = "workflow_id")]
108    pub workflow_id: i64,
109    #[serde(rename = "yaml_provider")]
110    pub yaml_provider: models::WorkflowProvider,
111    #[serde(rename = "yaml_resolved")]
112    pub yaml_resolved: String,
113    #[serde(
114        rename = "yaml_uses",
115        default,
116        with = "::serde_with::rust::double_option",
117        skip_serializing_if = "Option::is_none"
118    )]
119    pub yaml_uses: Option<Option<String>>,
120}
121
122impl StageModel {
123    pub fn new(
124        action_id: i64,
125        arch: String,
126        created: i64,
127        errignore: bool,
128        error: String,
129        exit_code: i64,
130        id: i64,
131        is_concurrent: bool,
132        is_matrix: bool,
133        is_resolved: bool,
134        is_reusable: bool,
135        job_key: String,
136        kernel: String,
137        kind: String,
138        labels: Vec<String>,
139        limit: i64,
140        limit_repo: i64,
141        machine: String,
142        name: String,
143        needs: Vec<String>,
144        number: i64,
145        on_failure: bool,
146        on_success: bool,
147        os: String,
148        parent_group_id: i64,
149        repo_id: i64,
150        status: models::CiStatus,
151        r#type: String,
152        updated: i64,
153        variant: String,
154        version: i64,
155        workflow_id: i64,
156        yaml_provider: models::WorkflowProvider,
157        yaml_resolved: String,
158    ) -> StageModel {
159        StageModel {
160            action_id,
161            arch,
162            created,
163            errignore,
164            error,
165            exit_code,
166            id,
167            is_concurrent,
168            is_matrix,
169            is_resolved,
170            is_reusable,
171            job_key,
172            kernel,
173            kind,
174            labels,
175            limit,
176            limit_repo,
177            machine,
178            name,
179            needs,
180            number,
181            on_failure,
182            on_success,
183            os,
184            outputs: None,
185            parent_group_id,
186            parent_id: None,
187            repo_id,
188            started: None,
189            status,
190            stopped: None,
191            r#type,
192            updated,
193            variant,
194            version,
195            workflow_id,
196            yaml_provider,
197            yaml_resolved,
198            yaml_uses: None,
199        }
200    }
201}