Interrogate list_releases result more closely

This commit is contained in:
2025-06-07 23:15:39 -05:00
parent e8d0d5db74
commit 6bdad44cc6

View File

@@ -23,6 +23,7 @@ pub async fn list_releases(
let request_url = format!("{gitea_url}/api/v1/repos/{repo}/releases/"); let request_url = format!("{gitea_url}/api/v1/repos/{repo}/releases/");
let req = client.get(request_url).send().await; let req = client.get(request_url).send().await;
let response = req.map_err(|reqwest_err| crate::Error::WrappedReqwestErr(reqwest_err))?; let response = req.map_err(|reqwest_err| crate::Error::WrappedReqwestErr(reqwest_err))?;
if response.status().is_success() {
let release_list = response let release_list = response
.json::<Vec<Release>>() .json::<Vec<Release>>()
.await .await
@@ -32,6 +33,16 @@ pub async fn list_releases(
crate::Error::WrappedReqwestErr(reqwest_err) crate::Error::WrappedReqwestErr(reqwest_err)
})?; })?;
return Ok(release_list); return Ok(release_list);
} else if response.status().is_client_error() {
let mesg = response
.json::<ApiError>()
.await
.map_err(|reqwest_err| {
crate::Error::WrappedReqwestErr(reqwest_err)
})?;
return Err(crate::Error::ApiErrorMessage(mesg));
}
panic!("Reached end of list_releases without matching a return pathway.");
} }
#[derive(Debug, Deserialize, Serialize)] #[derive(Debug, Deserialize, Serialize)]