From f0aaf0a7e79a2d4ac51d84e19be55de1fca13777 Mon Sep 17 00:00:00 2001 From: Daan Boerlage Date: Tue, 21 Jan 2025 17:17:53 +0100 Subject: [PATCH] Actually create the ticket when confirming creation --- src/cmd/create.rs | 54 +++++++++++++++++++++++------------------------ 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/src/cmd/create.rs b/src/cmd/create.rs index b4e0151..6d3b289 100644 --- a/src/cmd/create.rs +++ b/src/cmd/create.rs @@ -211,13 +211,13 @@ fn create_temp_markdown(project_key: Option) -> Result Result> { - let _client = reqwest::Client::new(); + let client = reqwest::Client::new(); let mut headers = HeaderMap::new(); headers.insert(CONTENT_TYPE, HeaderValue::from_static("application/json")); @@ -257,32 +257,32 @@ async fn create_jira_issue( let issue = JiraIssueRequest { fields, update }; - println!("{:#?}", issue); - Ok(JiraResponse { - key: format!("{}-1234", project_key), - }) + // println!("{:#?}", issue); + // Ok(JiraResponse { + // key: format!("{}-1234", project_key), + // }) - // let response = client - // .post(format!("{}/rest/api/2/issue", config.url)) - // .basic_auth(&config.email, Some(&config.api_token)) - // .headers(headers) - // .json(&issue) - // .send() - // .await?; - // - // if !response.status().is_success() { - // let error_text = response.text().await?; - // return Err(format!("Failed to create issue: {}", error_text).into()); - // } - // - // let issue_response = response.json::().await?; - // - // // Update status if specified (requires a separate API call) - // if let Some(status) = &metadata.status { - // update_issue_status(config, &issue_response.key, status).await?; - // } - // - // Ok(issue_response) + let response = client + .post(format!("{}/rest/api/2/issue", config.url)) + .basic_auth(&config.email, Some(&config.api_token)) + .headers(headers) + .json(&issue) + .send() + .await?; + + if !response.status().is_success() { + let error_text = response.text().await?; + return Err(format!("Failed to create issue: {}", error_text).into()); + } + + let issue_response = response.json::().await?; + + // Update status if specified (requires a separate API call) + if let Some(status) = &metadata.status { + update_issue_status(config, &issue_response.key, status).await?; + } + + Ok(issue_response) } async fn update_issue_status(