MCPcopy Create free account
hub / github.com/CodSpeedHQ/codspeed / resolve_selected_profile

Method resolve_selected_profile

src/config.rs:293–334  ·  view source on GitHub ↗
(
        &mut self,
        profile_name: Option<&str>,
        overrides: ConfigOverrides<'_>,
        allow_missing_profile: bool,
    )

Source from the content-addressed store, hash-verified

291 }
292
293 fn resolve_selected_profile(
294 &mut self,
295 profile_name: Option<&str>,
296 overrides: ConfigOverrides<'_>,
297 allow_missing_profile: bool,
298 ) -> Result<()> {
299 let selected_profile_name = match profile_name {
300 Some(name) => name.to_owned(),
301 None => {
302 load_shell_session_profile()?.unwrap_or_else(|| DEFAULT_PROFILE_NAME.to_owned())
303 }
304 };
305 let profile = match self.profile(&selected_profile_name) {
306 Some(profile) => profile.clone(),
307 None if allow_missing_profile => ProfileConfig::default(),
308 None => {
309 bail!(
310 "CodSpeed profile `{selected_profile_name}` does not exist. Run `codspeed profile set {selected_profile_name}` to create it."
311 );
312 }
313 };
314
315 self.selected_profile = selected_profile_name;
316 self.auth = AuthConfig {
317 token: overrides
318 .oauth_token
319 .map(ToOwned::to_owned)
320 .or(profile.auth.token),
321 };
322 self.api_url = overrides
323 .api_url
324 .map(ToOwned::to_owned)
325 .or(profile.api_url)
326 .unwrap_or_else(default_api_url);
327 self.upload_url = overrides
328 .upload_url
329 .map(ToOwned::to_owned)
330 .or(profile.upload_url)
331 .unwrap_or_else(default_upload_url);
332
333 Ok(())
334 }
335}
336
337#[cfg(test)]

Callers 2

load_with_profileMethod · 0.80

Calls 2

profileMethod · 0.80

Tested by 1