diff --git a/common/src/models/error.rs b/common/src/models/error.rs index 8be5d9d09..65a3e0439 100644 --- a/common/src/models/error.rs +++ b/common/src/models/error.rs @@ -1,6 +1,6 @@ use std::fmt::{Display, Formatter}; -use crossterm::style::{Color, Stylize}; +use crossterm::style::Stylize; use http::StatusCode; use serde::{Deserialize, Serialize}; use tracing::{error, warn}; @@ -23,7 +23,7 @@ impl Display for ApiError { f, "{}\nMessage: {}", self.status().to_string().bold(), - self.message.to_string().with(Color::Red) + self.message.to_string().red() ) } } diff --git a/gateway/src/auth.rs b/gateway/src/auth.rs index 6a5a0172e..6365978f8 100644 --- a/gateway/src/auth.rs +++ b/gateway/src/auth.rs @@ -5,6 +5,7 @@ use axum::extract::{FromRef, FromRequestParts, Path}; use axum::http::request::Parts; use serde::{Deserialize, Serialize}; use shuttle_common::claims::{Claim, Scope}; +use shuttle_common::models::error::InvalidProjectName; use shuttle_common::models::project::ProjectName; use tracing::{trace, Span}; @@ -80,7 +81,7 @@ where Err(_) => Path::<(ProjectName, String)>::from_request_parts(parts, state) .await .map(|Path((p, _))| p) - .unwrap(), + .map_err(|_| Error::from(ErrorKind::InvalidProjectName(InvalidProjectName)))?, }; if user.projects.contains(&scope) || user.claim.scopes.contains(&Scope::Admin) { diff --git a/gateway/src/service.rs b/gateway/src/service.rs index 91742d369..2ae1e3991 100644 --- a/gateway/src/service.rs +++ b/gateway/src/service.rs @@ -313,7 +313,7 @@ impl GatewayService { .try_get::, _>("project_state") .map(|p| p.0) .unwrap_or_else(|e| { - error!("Failed to deser `project_state`: {:?}", e); + error!(error = ?e, "Failed to deser `project_state`"); Project::Errored(ProjectError::internal( "Error when trying to deserialize state of project.", )) @@ -364,7 +364,7 @@ impl GatewayService { row.try_get::, _>("project_state") .map(|p| p.0) .unwrap_or_else(|e| { - error!("Failed to deser `project_state`: {:?}", e); + error!(error = ?e, "Failed to deser `project_state`"); Project::Errored(ProjectError::internal( "Error when trying to deserialize state of project.", )) @@ -459,7 +459,7 @@ impl GatewayService { .try_get::, _>("project_state") .map(|p| p.0) .unwrap_or_else(|e| { - error!("Failed to deser `project_state`: {:?}", e); + error!(error = ?e, "Failed to deser `project_state`"); Project::Errored(ProjectError::internal( "Error when trying to deserialize state of project.", ))