Skip to content

Commit 99a4656

Browse files
committed
feat: rename project
1 parent d079732 commit 99a4656

File tree

1 file changed

+13
-2
lines changed

1 file changed

+13
-2
lines changed

src/commands/project/rename.rs

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,29 @@
11
use super::*;
2+
use crate::utils::choice::Choice;
23
use crate::utils::prompt::prompt_text;
34
use crate::{sdk::SDK, utils::config::Config};
45

56
/// Rename a project
67
#[derive(Parser)]
78
pub struct Args {
8-
/// Project name
9+
/// New name for the project
910
#[clap(short, long)]
1011
name: Option<String>,
12+
13+
/// Project ID
14+
#[clap(short, long)]
15+
project_id: Option<String>,
1116
}
1217

1318
pub async fn command(args: Args) -> Result<()> {
1419
let config = Config::get()?;
1520
let key = config.primary_key()?;
21+
let key = key.unlock(&config.primary_key_password()?);
22+
23+
let project_id = Choice::try_project(args.project_id, &key).await?;
24+
let new_name = args.name.unwrap_or_else(|| {
25+
prompt_text("New name for project").expect("Failed to prompt")
26+
});
1627

17-
Ok(())
28+
SDK::rename_project(&project_id, &new_name, &key).await
1829
}

0 commit comments

Comments
 (0)