20260616 增加产品UI查询服务
This commit is contained in:
59
src/audit.rs
59
src/audit.rs
@@ -41,6 +41,63 @@ pub struct AuditWarning {
|
||||
pub context: Option<String>,
|
||||
}
|
||||
|
||||
#[derive(Clone, Debug, PartialEq, Eq, Serialize)]
|
||||
#[serde(rename_all = "camelCase")]
|
||||
pub struct QueryAuditManifest {
|
||||
pub schema_version: u32,
|
||||
pub status: String,
|
||||
pub events_path: String,
|
||||
pub events_count: u64,
|
||||
pub events_sha256: String,
|
||||
pub writer_version: u32,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub error: Option<String>,
|
||||
}
|
||||
|
||||
#[derive(Clone, Debug, Default, PartialEq, Eq, Serialize)]
|
||||
#[serde(rename_all = "camelCase")]
|
||||
pub struct ValidationEventCounts {
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub objects: Option<u64>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub warnings: Option<u64>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub vrps: Option<u64>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub aspas: Option<u64>,
|
||||
}
|
||||
|
||||
#[derive(Clone, Debug, PartialEq, Eq, Serialize)]
|
||||
#[serde(rename_all = "camelCase")]
|
||||
pub struct ValidationEvent {
|
||||
pub schema_version: u32,
|
||||
pub seq: u64,
|
||||
pub event_type: String,
|
||||
pub validation_time: String,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub pp_node_id: Option<u64>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub pp_manifest_uri: Option<String>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub pp_rsync_base_uri: Option<String>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub repo_sync_phase: Option<String>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub repo_terminal_state: Option<String>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub object_uri: Option<String>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub sha256: Option<String>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub object_type: Option<AuditObjectKind>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub result: Option<AuditObjectResult>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub reason: Option<String>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub counts: Option<ValidationEventCounts>,
|
||||
}
|
||||
|
||||
impl From<&crate::report::Warning> for AuditWarning {
|
||||
fn from(w: &crate::report::Warning) -> Self {
|
||||
Self {
|
||||
@@ -222,6 +279,8 @@ pub struct AuditReportV2 {
|
||||
pub downloads: Vec<AuditDownloadEvent>,
|
||||
pub download_stats: AuditDownloadStats,
|
||||
pub repo_sync_stats: AuditRepoSyncStats,
|
||||
#[serde(rename = "queryAudit", skip_serializing_if = "Option::is_none")]
|
||||
pub query_audit: Option<QueryAuditManifest>,
|
||||
}
|
||||
|
||||
#[derive(Clone, Debug, PartialEq, Eq, Serialize)]
|
||||
|
||||
Reference in New Issue
Block a user