28 lines
896 B
Rust
28 lines
896 B
Rust
use chrono::{DateTime, Utc};
|
|
use serde::{Deserialize, Serialize};
|
|
use uuid::Uuid;
|
|
|
|
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, sqlx::FromRow)]
|
|
pub struct BranchProtectionRule {
|
|
pub id: Uuid,
|
|
pub repo_id: Uuid,
|
|
pub pattern: String,
|
|
pub require_approvals: i32,
|
|
pub require_status_checks: bool,
|
|
pub required_status_checks: Vec<String>,
|
|
pub require_linear_history: bool,
|
|
pub allow_force_pushes: bool,
|
|
pub allow_deletions: bool,
|
|
pub require_signed_commits: bool,
|
|
pub require_code_owner_review: bool,
|
|
pub dismiss_stale_reviews: bool,
|
|
pub restrict_pushes: bool,
|
|
pub push_allowances: Vec<Uuid>,
|
|
pub restrict_review_dismissal: bool,
|
|
pub dismissal_allowances: Vec<Uuid>,
|
|
pub require_conversation_resolution: bool,
|
|
pub created_by: Option<Uuid>,
|
|
pub created_at: DateTime<Utc>,
|
|
pub updated_at: DateTime<Utc>,
|
|
}
|