validate config makes sure ids not empty

This commit is contained in:
mbecker20
2024-08-11 17:09:53 -07:00
parent 31a23dfe2d
commit b754c89118
2 changed files with 22 additions and 16 deletions

View File

@@ -174,10 +174,12 @@ async fn validate_config(
user: &User,
) -> anyhow::Result<()> {
if let Some(builder_id) = &config.builder_id {
let builder = super::get_check_permissions::<Builder>(builder_id, user, PermissionLevel::Read)
.await
.context("cannot create build using this builder. user must have at least read permissions on the builder.")?;
config.builder_id = Some(builder.id)
if !builder_id.is_empty() {
let builder = super::get_check_permissions::<Builder>(builder_id, user, PermissionLevel::Read)
.await
.context("cannot create build using this builder. user must have at least read permissions on the builder.")?;
config.builder_id = Some(builder.id)
}
}
if let Some(build_args) = &mut config.build_args {
build_args.retain(|v| {

View File

@@ -205,20 +205,24 @@ async fn validate_config(
user: &User,
) -> anyhow::Result<()> {
if let Some(server_id) = &config.server_id {
let server = get_check_permissions::<Server>(
server_id,
user,
PermissionLevel::Write,
)
.await
.context("Cannot attach repo to this server. User must have write permissions on the server.")?;
config.server_id = Some(server.id);
if !server_id.is_empty() {
let server = get_check_permissions::<Server>(
server_id,
user,
PermissionLevel::Write,
)
.await
.context("Cannot attach repo to this server. User must have write permissions on the server.")?;
config.server_id = Some(server.id);
}
}
if let Some(builder_id) = &config.builder_id {
let builder = super::get_check_permissions::<Builder>(builder_id, user, PermissionLevel::Read)
.await
.context("Cannot attach repo to this builder. User must have at least read permissions on the builder.")?;
config.builder_id = Some(builder.id)
if !builder_id.is_empty() {
let builder = super::get_check_permissions::<Builder>(builder_id, user, PermissionLevel::Read)
.await
.context("Cannot attach repo to this builder. User must have at least read permissions on the builder.")?;
config.builder_id = Some(builder.id);
}
}
Ok(())
}