INNER CODE UNIT · Rust
spawn_shell
kubie-org/kubie · src/shell/mod.rs:48
pub fn spawn_shell(settings: &Settings, config: KubeConfig, session: &Session) -> Result<()> {
let kind = match &settings.shell {
Some(shell) => ShellKind::from_str(shell).ok_or_else(|| anyhow!("Invalid shell setting: {}", shell))?,
None => detect()?,
};
let temp_config_file = tempfile::Builder::new()
.prefix("kubie-config")
.suffix(".yaml")
.tempfile()?;
config.write_to_file(temp_config_file.path())?;
let temp_session_file = tempfile::Builder::new()
.prefix("kubie-session")
.suffix(".json")
.tempfile()?;
session.save(Some(temp_session_file.path()))?;