gitea_client/models/
create_branch_protection_option.rs

1/*
2 * Gitea API
3 *
4 * This documentation describes the Gitea API.
5 *
6 * The version of the OpenAPI document: 1.22.1
7 * 
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// CreateBranchProtectionOption : CreateBranchProtectionOption options for creating a branch protection
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct CreateBranchProtectionOption {
17    #[serde(rename = "approvals_whitelist_teams", skip_serializing_if = "Option::is_none")]
18    pub approvals_whitelist_teams: Option<Vec<String>>,
19    #[serde(rename = "approvals_whitelist_username", skip_serializing_if = "Option::is_none")]
20    pub approvals_whitelist_username: Option<Vec<String>>,
21    #[serde(rename = "block_on_official_review_requests", skip_serializing_if = "Option::is_none")]
22    pub block_on_official_review_requests: Option<bool>,
23    #[serde(rename = "block_on_outdated_branch", skip_serializing_if = "Option::is_none")]
24    pub block_on_outdated_branch: Option<bool>,
25    #[serde(rename = "block_on_rejected_reviews", skip_serializing_if = "Option::is_none")]
26    pub block_on_rejected_reviews: Option<bool>,
27    /// Deprecated: true
28    #[serde(rename = "branch_name", skip_serializing_if = "Option::is_none")]
29    pub branch_name: Option<String>,
30    #[serde(rename = "dismiss_stale_approvals", skip_serializing_if = "Option::is_none")]
31    pub dismiss_stale_approvals: Option<bool>,
32    #[serde(rename = "enable_approvals_whitelist", skip_serializing_if = "Option::is_none")]
33    pub enable_approvals_whitelist: Option<bool>,
34    #[serde(rename = "enable_merge_whitelist", skip_serializing_if = "Option::is_none")]
35    pub enable_merge_whitelist: Option<bool>,
36    #[serde(rename = "enable_push", skip_serializing_if = "Option::is_none")]
37    pub enable_push: Option<bool>,
38    #[serde(rename = "enable_push_whitelist", skip_serializing_if = "Option::is_none")]
39    pub enable_push_whitelist: Option<bool>,
40    #[serde(rename = "enable_status_check", skip_serializing_if = "Option::is_none")]
41    pub enable_status_check: Option<bool>,
42    #[serde(rename = "ignore_stale_approvals", skip_serializing_if = "Option::is_none")]
43    pub ignore_stale_approvals: Option<bool>,
44    #[serde(rename = "merge_whitelist_teams", skip_serializing_if = "Option::is_none")]
45    pub merge_whitelist_teams: Option<Vec<String>>,
46    #[serde(rename = "merge_whitelist_usernames", skip_serializing_if = "Option::is_none")]
47    pub merge_whitelist_usernames: Option<Vec<String>>,
48    #[serde(rename = "protected_file_patterns", skip_serializing_if = "Option::is_none")]
49    pub protected_file_patterns: Option<String>,
50    #[serde(rename = "push_whitelist_deploy_keys", skip_serializing_if = "Option::is_none")]
51    pub push_whitelist_deploy_keys: Option<bool>,
52    #[serde(rename = "push_whitelist_teams", skip_serializing_if = "Option::is_none")]
53    pub push_whitelist_teams: Option<Vec<String>>,
54    #[serde(rename = "push_whitelist_usernames", skip_serializing_if = "Option::is_none")]
55    pub push_whitelist_usernames: Option<Vec<String>>,
56    #[serde(rename = "require_signed_commits", skip_serializing_if = "Option::is_none")]
57    pub require_signed_commits: Option<bool>,
58    #[serde(rename = "required_approvals", skip_serializing_if = "Option::is_none")]
59    pub required_approvals: Option<i64>,
60    #[serde(rename = "rule_name", skip_serializing_if = "Option::is_none")]
61    pub rule_name: Option<String>,
62    #[serde(rename = "status_check_contexts", skip_serializing_if = "Option::is_none")]
63    pub status_check_contexts: Option<Vec<String>>,
64    #[serde(rename = "unprotected_file_patterns", skip_serializing_if = "Option::is_none")]
65    pub unprotected_file_patterns: Option<String>,
66}
67
68impl CreateBranchProtectionOption {
69    /// CreateBranchProtectionOption options for creating a branch protection
70    pub fn new() -> CreateBranchProtectionOption {
71        CreateBranchProtectionOption {
72            approvals_whitelist_teams: None,
73            approvals_whitelist_username: None,
74            block_on_official_review_requests: None,
75            block_on_outdated_branch: None,
76            block_on_rejected_reviews: None,
77            branch_name: None,
78            dismiss_stale_approvals: None,
79            enable_approvals_whitelist: None,
80            enable_merge_whitelist: None,
81            enable_push: None,
82            enable_push_whitelist: None,
83            enable_status_check: None,
84            ignore_stale_approvals: None,
85            merge_whitelist_teams: None,
86            merge_whitelist_usernames: None,
87            protected_file_patterns: None,
88            push_whitelist_deploy_keys: None,
89            push_whitelist_teams: None,
90            push_whitelist_usernames: None,
91            require_signed_commits: None,
92            required_approvals: None,
93            rule_name: None,
94            status_check_contexts: None,
95            unprotected_file_patterns: None,
96        }
97    }
98}
99