gitbundle_sdk/models/
stage_model.rs

1/*
2 * GitBundle API
3 *
4 * GitBundle API documentation.
5 *
6 * The version of the OpenAPI document: 3.2.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_reusable")]
32    pub is_reusable: bool,
33    #[serde(rename = "kernel")]
34    pub kernel: String,
35    #[serde(rename = "kind")]
36    pub kind: String,
37    #[serde(rename = "labels")]
38    pub labels: Vec<String>,
39    #[serde(rename = "limit")]
40    pub limit: i64,
41    #[serde(rename = "limit_repo")]
42    pub limit_repo: i64,
43    #[serde(rename = "machine")]
44    pub machine: String,
45    #[serde(rename = "name")]
46    pub name: String,
47    #[serde(rename = "needs")]
48    pub needs: Vec<String>,
49    #[serde(rename = "number")]
50    pub number: i64,
51    #[serde(rename = "on_failure")]
52    pub on_failure: bool,
53    #[serde(rename = "on_success")]
54    pub on_success: bool,
55    #[serde(rename = "os")]
56    pub os: String,
57    #[serde(rename = "outputs", skip_serializing_if = "Option::is_none")]
58    pub outputs: Option<std::collections::HashMap<String, serde_json::Value>>,
59    #[serde(rename = "parent_group_id")]
60    pub parent_group_id: i64,
61    #[serde(
62        rename = "parent_id",
63        default,
64        with = "::serde_with::rust::double_option",
65        skip_serializing_if = "Option::is_none"
66    )]
67    pub parent_id: Option<Option<i64>>,
68    #[serde(rename = "repo_id")]
69    pub repo_id: i64,
70    #[serde(
71        rename = "started",
72        default,
73        with = "::serde_with::rust::double_option",
74        skip_serializing_if = "Option::is_none"
75    )]
76    pub started: Option<Option<i64>>,
77    #[serde(rename = "status")]
78    pub status: models::CiStatus,
79    #[serde(
80        rename = "stopped",
81        default,
82        with = "::serde_with::rust::double_option",
83        skip_serializing_if = "Option::is_none"
84    )]
85    pub stopped: Option<Option<i64>>,
86    #[serde(rename = "type")]
87    pub r#type: String,
88    #[serde(rename = "updated")]
89    pub updated: i64,
90    #[serde(rename = "variant")]
91    pub variant: String,
92    #[serde(rename = "version")]
93    pub version: i64,
94    #[serde(rename = "workflow_id")]
95    pub workflow_id: i64,
96    #[serde(rename = "yaml_provider")]
97    pub yaml_provider: models::WorkflowProvider,
98    #[serde(rename = "yaml_resolved")]
99    pub yaml_resolved: String,
100}
101
102impl StageModel {
103    pub fn new(
104        action_id: i64,
105        arch: String,
106        created: i64,
107        errignore: bool,
108        error: String,
109        exit_code: i64,
110        id: i64,
111        is_reusable: bool,
112        kernel: String,
113        kind: String,
114        labels: Vec<String>,
115        limit: i64,
116        limit_repo: i64,
117        machine: String,
118        name: String,
119        needs: Vec<String>,
120        number: i64,
121        on_failure: bool,
122        on_success: bool,
123        os: String,
124        parent_group_id: i64,
125        repo_id: i64,
126        status: models::CiStatus,
127        r#type: String,
128        updated: i64,
129        variant: String,
130        version: i64,
131        workflow_id: i64,
132        yaml_provider: models::WorkflowProvider,
133        yaml_resolved: String,
134    ) -> StageModel {
135        StageModel {
136            action_id,
137            arch,
138            created,
139            errignore,
140            error,
141            exit_code,
142            id,
143            is_reusable,
144            kernel,
145            kind,
146            labels,
147            limit,
148            limit_repo,
149            machine,
150            name,
151            needs,
152            number,
153            on_failure,
154            on_success,
155            os,
156            outputs: None,
157            parent_group_id,
158            parent_id: None,
159            repo_id,
160            started: None,
161            status,
162            stopped: None,
163            r#type,
164            updated,
165            variant,
166            version,
167            workflow_id,
168            yaml_provider,
169            yaml_resolved,
170        }
171    }
172}