set pkg to build state when already existing and starting build

add active builds to right cake graph
This commit is contained in:
2023-12-30 10:43:46 +01:00
parent 600c2057fe
commit 695f451763
6 changed files with 55 additions and 16 deletions

View File

@ -28,7 +28,7 @@ pub async fn package_add(
) -> Result<(), BadRequest<String>> {
let db = db as &DatabaseConnection;
let pkt_model = match Packages::find()
let mut pkg_model = match Packages::find()
.filter(packages::Column::Name.eq(input.name.clone()))
.one(db)
.await
@ -37,6 +37,7 @@ pub async fn package_add(
None => {
let new_package = packages::ActiveModel {
name: Set(input.name.clone()),
status: Set(0),
..Default::default()
};
@ -58,7 +59,7 @@ pub async fn package_add(
None => {
let new_version = versions::ActiveModel {
version: Set(pkg.version.clone()),
package_id: Set(pkt_model.id.clone().unwrap()),
package_id: Set(pkg_model.id.clone().unwrap()),
..Default::default()
};
@ -75,6 +76,11 @@ pub async fn package_add(
}
};
if pkg_model.status.unwrap() != 0 {
pkg_model.status = Set(0);
pkg_model.save(db).await.expect("todo error message");
}
let _ = tx.send(Action::Build(
pkg.name,
pkg.version,

View File

@ -12,8 +12,6 @@ use rocket_okapi::{openapi, JsonSchema};
use sea_orm::PaginatorTrait;
use sea_orm::{ColumnTrait, QueryFilter};
use sea_orm::{DatabaseConnection, EntityTrait, FromQueryResult, QuerySelect, RelationTrait};
use std::path::PathBuf;
use std::{fs, io};
#[derive(Serialize, JsonSchema)]
#[serde(crate = "rocket::serde")]