Reconcile live Railiance allocation for CUST-WP-0071-T01.
Join scheduler-effective cluster requests with owner/service/tenant. Host and cluster CPUs counted once. Residual millicores are not admission. T02–T05 remain waiting on Vergabe measurements.
This commit is contained in:
parent
8841395b2e
commit
1fff598581
6 changed files with 989 additions and 1 deletions
39
scripts/test_reconcile_railiance_allocation.py
Normal file
39
scripts/test_reconcile_railiance_allocation.py
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
from __future__ import annotations
|
||||
|
||||
import unittest
|
||||
from pathlib import Path
|
||||
|
||||
import yaml
|
||||
|
||||
import reconcile_railiance_allocation as rec
|
||||
|
||||
OWNERS = yaml.safe_load((Path(__file__).resolve().parents[1] / "docs" / "evidence" / "namespace-ownership.yaml").read_text())
|
||||
|
||||
|
||||
class ReconcileTests(unittest.TestCase):
|
||||
def test_unknown_and_pending_are_explicit(self) -> None:
|
||||
observation = {
|
||||
"schema_version": "railiance.cluster-resource-observation.v1",
|
||||
"captured_at": "2026-09-14T00:00:00Z",
|
||||
"capacity": {"totals": {"cpu_millicores": 4000}},
|
||||
"utilization": {"workloads": [
|
||||
{"namespace": "state-hub", "workload": "state-hub", "pods": 2, "requests": {"cpu_millicores": 110, "memory_bytes": 1}},
|
||||
{"namespace": "brand-new", "workload": "x", "pods": 1, "requests": {"cpu_millicores": 0, "memory_bytes": 0}},
|
||||
]},
|
||||
"allocation": {
|
||||
"denominators": {"cpu_requested_millicores": 110},
|
||||
"residual_capacity": {"cpu_millicores": 3890},
|
||||
"pending_unscheduled": {"cpu_millicores": 25, "pods": [{"namespace": "other", "name": "p"}]},
|
||||
},
|
||||
"measurement_gaps": ["pod metrics unavailable"],
|
||||
}
|
||||
report = rec.join(observation, OWNERS)
|
||||
self.assertEqual(["brand-new"], report["unknown_namespaces"])
|
||||
self.assertIn("brand-new/x", report["zero_request_workloads"])
|
||||
self.assertEqual(25, report["pending_unscheduled_cpu_m"])
|
||||
self.assertEqual("state-hub", report["workloads"][0]["owner"])
|
||||
self.assertTrue(report["count_host_and_cluster_cpus_once"])
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
Loading…
Add table
Add a link
Reference in a new issue