fc-common: add GC pinning and machine health infrastructure
Migration 017 adds `builds.keep`, `jobsets.keep_nr`, and health tracking columns to `remote_builders`. Repo layer implements `set_keep`, `list_pinned_ids`, `record_failure` with exponential backoff, `record_success`, and `find_for_system` filtering of disabled builders. GC root cleanup now skips pinned builds. Signed-off-by: NotAShelf <raf@notashelf.dev> Change-Id: Ibba121de3dc42f71204e3a8f5776aa8b6a6a6964
This commit is contained in:
parent
25699e5e97
commit
5b472a2f57
16 changed files with 173 additions and 23 deletions
|
|
@ -50,6 +50,7 @@ async fn create_test_jobset(
|
|||
branch: None,
|
||||
scheduling_shares: None,
|
||||
state: None,
|
||||
keep_nr: None,
|
||||
})
|
||||
.await
|
||||
.expect("create jobset")
|
||||
|
|
@ -193,6 +194,7 @@ async fn test_jobset_crud() {
|
|||
branch: None,
|
||||
scheduling_shares: None,
|
||||
state: None,
|
||||
keep_nr: None,
|
||||
})
|
||||
.await
|
||||
.expect("create jobset");
|
||||
|
|
@ -222,6 +224,7 @@ async fn test_jobset_crud() {
|
|||
branch: None,
|
||||
scheduling_shares: None,
|
||||
state: None,
|
||||
keep_nr: None,
|
||||
})
|
||||
.await
|
||||
.expect("update jobset");
|
||||
|
|
|
|||
|
|
@ -117,6 +117,7 @@ async fn test_build_search_with_filters() {
|
|||
branch: None,
|
||||
scheduling_shares: None,
|
||||
state: None,
|
||||
keep_nr: None,
|
||||
})
|
||||
.await
|
||||
.expect("create jobset");
|
||||
|
|
@ -263,6 +264,7 @@ async fn test_multi_entity_search() {
|
|||
branch: None,
|
||||
scheduling_shares: None,
|
||||
state: None,
|
||||
keep_nr: None,
|
||||
})
|
||||
.await
|
||||
.expect("create jobset");
|
||||
|
|
@ -481,6 +483,7 @@ async fn test_quick_search() {
|
|||
branch: None,
|
||||
scheduling_shares: None,
|
||||
state: None,
|
||||
keep_nr: None,
|
||||
})
|
||||
.await
|
||||
.expect("create jobset");
|
||||
|
|
|
|||
|
|
@ -364,6 +364,7 @@ async fn test_starred_jobs_crud() {
|
|||
branch: None,
|
||||
scheduling_shares: None,
|
||||
state: None,
|
||||
keep_nr: None,
|
||||
})
|
||||
.await
|
||||
.expect("create jobset");
|
||||
|
|
@ -475,6 +476,7 @@ async fn test_starred_jobs_delete_by_job() {
|
|||
branch: None,
|
||||
scheduling_shares: None,
|
||||
state: None,
|
||||
keep_nr: None,
|
||||
})
|
||||
.await
|
||||
.expect("create jobset");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue