Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package agama for openSUSE:Factory checked in at 2025-08-28 17:20:00 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/agama (Old) and /work/SRC/openSUSE:Factory/.agama.new.1977 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "agama" Thu Aug 28 17:20:00 2025 rev:29 rq:1301796 version:0 Changes: -------- --- /work/SRC/openSUSE:Factory/agama/agama.changes 2025-08-21 16:56:31.434934046 +0200 +++ /work/SRC/openSUSE:Factory/.agama.new.1977/agama.changes 2025-08-28 17:20:41.724312258 +0200 @@ -1,0 +2,11 @@ +Thu Aug 28 10:15:23 UTC 2025 - Imobach Gonzalez Sosa <[email protected]> + +- Update the software cache when the patterns selection changes (bsc#1248826). + +------------------------------------------------------------------- +Thu Aug 28 05:26:06 UTC 2025 - Imobach Gonzalez Sosa <[email protected]> + +- Include the output of the "agama config" commands when + agama-autoinstall fails (related to bsc#1248779). + +------------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ _service ++++++ --- /var/tmp/diff_new_pack.IWM0Bt/_old 2025-08-28 17:20:42.916362216 +0200 +++ /var/tmp/diff_new_pack.IWM0Bt/_new 2025-08-28 17:20:42.920362383 +0200 @@ -8,7 +8,7 @@ <param name="scm">git</param> <!-- the revision might be changed to "release" branch or a git tag by the .github/workflows/obs-staging-shared.yml action when submitting to OBS --> - <param name="revision">master</param> + <param name="revision">SLE-16</param> <param name="subdir">rust</param> <param name="without-version">enable</param> <param name="extract">package/agama.changes</param> ++++++ agama.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/agama-autoinstall/src/auto_loader.rs new/agama/agama-autoinstall/src/auto_loader.rs --- old/agama/agama-autoinstall/src/auto_loader.rs 2025-08-20 10:43:49.000000000 +0200 +++ new/agama/agama-autoinstall/src/auto_loader.rs 2025-08-28 13:52:06.000000000 +0200 @@ -78,7 +78,7 @@ println!("Loading configuration from {url}"); while let Err(error) = loader.load(url).await { eprintln!("Could not load configuration from {url}: {error}"); - if !self.should_retry(url).await? { + if !self.should_retry(url, &error.to_string()).await? { return Err(error); } } @@ -101,13 +101,13 @@ Err(anyhow!("No configuration was found")) } - async fn should_retry(&self, url: &str) -> anyhow::Result<bool> { + async fn should_retry(&self, url: &str, error: &str) -> anyhow::Result<bool> { let msg = format!( r#" It was not possible to load the configuration from {url}. It was unreachable or invalid. Do you want to try again? "# ); - self.questions.should_retry(&msg).await + self.questions.should_retry(&msg, error).await } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/agama-autoinstall/src/questions.rs new/agama/agama-autoinstall/src/questions.rs --- old/agama/agama-autoinstall/src/questions.rs 2025-08-20 10:43:49.000000000 +0200 +++ new/agama/agama-autoinstall/src/questions.rs 2025-08-28 13:52:06.000000000 +0200 @@ -20,6 +20,8 @@ //! This module offers a mechanism to ask questions to users. +use std::collections::HashMap; + use agama_lib::{ http::BaseHTTPClient, questions::{ @@ -40,14 +42,15 @@ } /// Asks the user whether to retry loading the profile. - pub async fn should_retry(&self, text: &str) -> anyhow::Result<bool> { + pub async fn should_retry(&self, text: &str, error: &str) -> anyhow::Result<bool> { + let data = HashMap::from([("error".to_string(), error.to_string())]); let generic = GenericQuestion { id: None, class: "load.retry".to_string(), text: text.to_string(), options: vec!["Yes".to_string(), "No".to_string()], default_option: "No".to_string(), - data: Default::default(), + data, }; let question = Question { generic, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/agama-autoinstall/src/scripts.rs new/agama/agama-autoinstall/src/scripts.rs --- old/agama/agama-autoinstall/src/scripts.rs 2025-08-20 10:43:49.000000000 +0200 +++ new/agama/agama-autoinstall/src/scripts.rs 2025-08-28 13:52:06.000000000 +0200 @@ -99,7 +99,7 @@ let mut file = Self::create_file(&path, 0o700)?; while let Err(error) = Transfer::get(url, &mut file, self.insecure) { eprintln!("Could not load configuration from {url}: {error}"); - if !self.should_retry(&url).await? { + if !self.should_retry(&url, &error.to_string()).await? { return Err(anyhow!(error)); } } @@ -134,13 +134,13 @@ .open(path) } - async fn should_retry(&self, url: &str) -> anyhow::Result<bool> { + async fn should_retry(&self, url: &str, error: &str) -> anyhow::Result<bool> { let msg = format!( r#" It was not possible to load the script from {url}. Do you want to try again? "# ); - self.questions.should_retry(&msg).await + self.questions.should_retry(&msg, error).await } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/agama-lib/share/examples/post-script.jsonnet new/agama/agama-lib/share/examples/post-script.jsonnet --- old/agama/agama-lib/share/examples/post-script.jsonnet 2025-08-20 10:43:49.000000000 +0200 +++ new/agama/agama-lib/share/examples/post-script.jsonnet 2025-08-28 13:52:06.000000000 +0200 @@ -15,7 +15,7 @@ { name: 'enable-sshd', chroot: true, - body: ||| + content: ||| #!/bin/bash systemctl enable sshd |||, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/agama-server/src/software/web.rs new/agama/agama-server/src/software/web.rs --- old/agama/agama-server/src/software/web.rs 2025-08-20 10:43:49.000000000 +0200 +++ new/agama/agama-server/src/software/web.rs 2025-08-28 13:52:06.000000000 +0200 @@ -226,16 +226,41 @@ pub async fn receive_events( mut events: EventsReceiver, products: Arc<RwLock<Vec<Product>>>, + config: Arc<RwLock<Option<SoftwareConfig>>>, client: ProductClient<'_>, ) { while let Ok(event) = events.recv().await { - if let EventPayload::LocaleChanged { locale: _ } = event.payload { - let mut cached_products = products.write().await; - if let Ok(products) = client.products().await { - *cached_products = products; - } else { - tracing::error!("Could not update the products cached"); + match event.payload { + EventPayload::LocaleChanged { locale: _ } => { + let mut cached_products = products.write().await; + if let Ok(products) = client.products().await { + *cached_products = products; + } else { + tracing::error!("Could not update the products cached"); + } } + + EventPayload::SoftwareProposalChanged { patterns } => { + let mut cached_config = config.write().await; + if let Some(config) = cached_config.as_mut() { + tracing::debug!( + "Updating the patterns list in the software configuration cache" + ); + let user_patterns: HashMap<String, bool> = patterns + .into_iter() + .filter_map(|(p, s)| { + if s == SelectedBy::User { + Some((p, true)) + } else { + None + } + }) + .collect(); + config.patterns = Some(user_patterns); + } + } + + _ => {} } } } @@ -283,8 +308,11 @@ }; let cached_products = Arc::clone(&state.products); + let cached_config = Arc::clone(&state.config); let products_client = state.product.clone(); - tokio::spawn(async move { receive_events(events, cached_products, products_client).await }); + tokio::spawn(async move { + receive_events(events, cached_products, cached_config, products_client).await + }); let router = Router::new() .route("/patterns", get(patterns)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/agama/package/agama.changes new/agama/package/agama.changes --- old/agama/package/agama.changes 2025-08-20 10:43:49.000000000 +0200 +++ new/agama/package/agama.changes 2025-08-28 13:52:06.000000000 +0200 @@ -1,4 +1,15 @@ ------------------------------------------------------------------- +Thu Aug 28 10:15:23 UTC 2025 - Imobach Gonzalez Sosa <[email protected]> + +- Update the software cache when the patterns selection changes (bsc#1248826). + +------------------------------------------------------------------- +Thu Aug 28 05:26:06 UTC 2025 - Imobach Gonzalez Sosa <[email protected]> + +- Include the output of the "agama config" commands when + agama-autoinstall fails (related to bsc#1248779). + +------------------------------------------------------------------- Tue Aug 19 12:38:40 UTC 2025 - Imobach Gonzalez Sosa <[email protected]> - Fix software configuration cache (bsc#1247933). ++++++ agama.obsinfo ++++++ --- /var/tmp/diff_new_pack.IWM0Bt/_old 2025-08-28 17:20:43.160372442 +0200 +++ /var/tmp/diff_new_pack.IWM0Bt/_new 2025-08-28 17:20:43.164372611 +0200 @@ -1,5 +1,5 @@ name: agama -version: 17+244.2867e2833 -mtime: 1755679429 -commit: 2867e2833f2710b8fbf1337928c5024ca4e416a4 +version: 17+316.0791f5bbd +mtime: 1756381926 +commit: 0791f5bbd6d170a2649ff582819d639559484e8d
