libomni/types/db/v1/
build.rs

1use serde::Serialize;
2use chrono::{DateTime, Utc};
3
4#[derive(Debug, sqlx::FromRow, Serialize)]
5pub struct Build {
6    pub id: i64,
7    pub app_id: i64,
8    pub source_version: Option<String>,
9    pub commit_sha: Option<String>,
10    pub commit_message: Option<String>,
11    pub author: Option<String>,
12    pub status: String, // enum: 'pending', 'building', 'succeeded', 'failed', 'canceled'
13    pub build_pack_used: Option<String>,
14    pub build_pack_url: Option<String>,
15    pub build_pack_version: Option<String>,
16    pub build_image: Option<String>,
17    pub build_arguments: Option<serde_json::Value>,
18    pub build_environment: Option<serde_json::Value>,
19    pub build_cache_key: Option<String>,
20    pub log_url: Option<String>,
21    pub artifact_url: Option<String>,
22    pub artifact_checksum: Option<String>,
23    pub artifact_size: Option<i64>,
24    pub error_message: Option<String>,
25    pub started_at: Option<DateTime<Utc>>,
26    pub completed_at: Option<DateTime<Utc>>,
27    pub build_duration: Option<i32>, // in seconds
28    pub created_at: DateTime<Utc>,
29}