gitea_client/models/
create_repo_option.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct CreateRepoOption {
17 #[serde(rename = "auto_init", skip_serializing_if = "Option::is_none")]
19 pub auto_init: Option<bool>,
20 #[serde(rename = "default_branch", skip_serializing_if = "Option::is_none")]
22 pub default_branch: Option<String>,
23 #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
25 pub description: Option<String>,
26 #[serde(rename = "gitignores", skip_serializing_if = "Option::is_none")]
28 pub gitignores: Option<String>,
29 #[serde(rename = "issue_labels", skip_serializing_if = "Option::is_none")]
31 pub issue_labels: Option<String>,
32 #[serde(rename = "license", skip_serializing_if = "Option::is_none")]
34 pub license: Option<String>,
35 #[serde(rename = "name")]
37 pub name: String,
38 #[serde(rename = "object_format_name", skip_serializing_if = "Option::is_none")]
40 pub object_format_name: Option<ObjectFormatName>,
41 #[serde(rename = "private", skip_serializing_if = "Option::is_none")]
43 pub private: Option<bool>,
44 #[serde(rename = "readme", skip_serializing_if = "Option::is_none")]
46 pub readme: Option<String>,
47 #[serde(rename = "template", skip_serializing_if = "Option::is_none")]
49 pub template: Option<bool>,
50 #[serde(rename = "trust_model", skip_serializing_if = "Option::is_none")]
52 pub trust_model: Option<TrustModel>,
53}
54
55impl CreateRepoOption {
56 pub fn new(name: String) -> CreateRepoOption {
58 CreateRepoOption {
59 auto_init: None,
60 default_branch: None,
61 description: None,
62 gitignores: None,
63 issue_labels: None,
64 license: None,
65 name,
66 object_format_name: None,
67 private: None,
68 readme: None,
69 template: None,
70 trust_model: None,
71 }
72 }
73}
74#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
76pub enum ObjectFormatName {
77 #[serde(rename = "sha1")]
78 Sha1,
79 #[serde(rename = "sha256")]
80 Sha256,
81}
82
83impl Default for ObjectFormatName {
84 fn default() -> ObjectFormatName {
85 Self::Sha1
86 }
87}
88#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
90pub enum TrustModel {
91 #[serde(rename = "default")]
92 Default,
93 #[serde(rename = "collaborator")]
94 Collaborator,
95 #[serde(rename = "committer")]
96 Committer,
97 #[serde(rename = "collaboratorcommitter")]
98 Collaboratorcommitter,
99}
100
101impl Default for TrustModel {
102 fn default() -> TrustModel {
103 Self::Default
104 }
105}
106