Add a metadata module and initialize it

This commit is contained in:
Thorsten Sommer 2025-05-02 22:26:23 +02:00
parent 4626c26a41
commit e616139767
Signed by: tsommer
GPG Key ID: 371BBA77A02C0108
3 changed files with 36 additions and 1 deletions

View File

@ -9,4 +9,5 @@ pub mod secret;
pub mod clipboard;
pub mod runtime_api;
pub mod certificate;
pub mod file_data;
pub mod file_data;
pub mod metadata;

View File

@ -10,6 +10,7 @@ use mindwork_ai_studio::certificate::{generate_certificate};
use mindwork_ai_studio::dotnet::start_dotnet_server;
use mindwork_ai_studio::environment::is_dev;
use mindwork_ai_studio::log::init_logging;
use mindwork_ai_studio::metadata::{MetaData, META_DATA};
use mindwork_ai_studio::runtime_api::start_runtime_api;
#[tokio::main]
@ -28,6 +29,21 @@ async fn main() {
let architecture = metadata_lines.next().unwrap();
let pdfium_version = metadata_lines.next().unwrap();
let metadata = MetaData {
architecture: architecture.to_string(),
app_commit_hash: app_commit_hash.to_string(),
app_version: app_version.to_string(),
build_number: build_number.to_string(),
build_time: build_time.to_string(),
dotnet_sdk_version: dotnet_sdk_version.to_string(),
dotnet_version: dotnet_version.to_string(),
mud_blazor_version: mud_blazor_version.to_string(),
rust_version: rust_version.to_string(),
tauri_version: tauri_version.to_string(),
};
*META_DATA.lock().unwrap() = Some(metadata);
init_logging();
info!("Starting MindWork AI Studio:");

18
runtime/src/metadata.rs Normal file
View File

@ -0,0 +1,18 @@
use std::sync::Mutex;
use once_cell::sync::Lazy;
pub static META_DATA: Lazy<Mutex<Option<MetaData>>> = Lazy::new(|| Mutex::new(None));
#[derive(Clone)]
pub struct MetaData {
pub app_version: String,
pub build_time: String,
pub build_number: String,
pub dotnet_sdk_version: String,
pub dotnet_version: String,
pub rust_version: String,
pub mud_blazor_version: String,
pub tauri_version: String,
pub app_commit_hash: String,
pub architecture: String,
}