From 438918125e654759c375eb81179b5ec9234705d8 Mon Sep 17 00:00:00 2001 From: Tif Tran Date: Thu, 8 Jan 2026 18:52:11 -0800 Subject: [PATCH] [Bug 2012025] refactor: nimbus-cli to use rs service --- .../nimbus-cli/src/sources/experiment_list.rs | 28 +++++++++++-------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/components/support/nimbus-cli/src/sources/experiment_list.rs b/components/support/nimbus-cli/src/sources/experiment_list.rs index 6961a3d1d4..214bd7953d 100644 --- a/components/support/nimbus-cli/src/sources/experiment_list.rs +++ b/components/support/nimbus-cli/src/sources/experiment_list.rs @@ -219,24 +219,30 @@ impl TryFrom<&ExperimentListSource> for Value { endpoint, is_preview, } => { - use remote_settings::{RemoteSettings, RemoteSettingsConfig, RemoteSettingsServer}; + use remote_settings::{ + RemoteSettingsConfig2, RemoteSettingsServer, RemoteSettingsService, + }; let collection_name = if *is_preview { "nimbus-preview".to_string() } else { "nimbus-mobile-experiments".to_string() }; - let config = RemoteSettingsConfig { - server: Some(RemoteSettingsServer::Custom { - url: endpoint.clone(), - }), - server_url: None, - bucket_name: None, - collection_name, + + let curr_dir = std::env::current_dir().expect("Current directory not set"); + let rs_dir = curr_dir.join("remote-settings"); + let server = RemoteSettingsServer::Custom { + url: endpoint.clone(), + }; + let config2 = RemoteSettingsConfig2 { + server: Some(server), + ..Default::default() }; - let client = RemoteSettings::new(config)?; + let rs_service = + RemoteSettingsService::new(rs_dir.to_string_lossy().to_string(), config2); - let response = client.get_records_raw()?; - response.json::()? + let client = rs_service.make_client(collection_name); + let response = client.get_records(true); + serde_json::to_value(response)? } ExperimentListSource::FromFile { file } => { let v: Value = value_utils::read_from_file(file)?;