Skip to content

Conversation

PhilippMatthes
Copy link
Member

@PhilippMatthes PhilippMatthes commented Sep 25, 2025

This contribution adds an api to cortex that describes why a virtual machine has been placed on a specific compute host. It exposes the raw pipeline weights with a kubernetes custom resource, and the associated operator calculates a human-readable description from the provided values. The resource is also connected to the nova visualizer so that decisions can be spectated in the browser removing this dependency on the mqtt broker.

@PhilippMatthes PhilippMatthes changed the title Hackathon Hackathon: add why/why not api Sep 29, 2025

if err := c.Client.Update(context.Background(), &existing); err != nil {
// Check if it's a conflict error (concurrent update)
if attempt < maxRetries-1 {
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this happen? I would have thought that the Update method is threadsafe and consistent with the state in kubernetes. Otherwise we should add a mutex, no?

Copy link
Contributor

github-actions bot commented Oct 2, 2025

Test Coverage Report

Coverage in main module (internal/): 73.3%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:314:								IsUndefined			0.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:324:								IsUndefined			0.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:490:								NewConfig			0.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:507:								newConfigFromMaps		75.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:523:								readRawConfig			75.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:536:								readRawConfigFromBytes		75.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:545:								mergeMaps			100.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:567:								GetChecks			0.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:568:								GetLoggingConfig		100.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:569:								GetDBConfig			100.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:570:								GetSyncConfig			100.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:571:								GetExtractorConfig		100.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:572:								GetSchedulerConfig		100.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:573:								GetDeschedulerConfig		0.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:574:								GetKPIsConfig			100.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:575:								GetMonitoringConfig		100.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:576:								GetMQTTConfig			100.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:577:								GetAPIConfig			100.0%
github.com/cobaltcore-dev/cortex/internal/conf/conf.go:578:								GetKeystoneConfig		0.0%
github.com/cobaltcore-dev/cortex/internal/conf/graph.go:24:								Resolve				100.0%
github.com/cobaltcore-dev/cortex/internal/conf/graph.go:75:								DistinctSubgraphs		100.0%
github.com/cobaltcore-dev/cortex/internal/conf/logging.go:12:								Level				100.0%
github.com/cobaltcore-dev/cortex/internal/conf/logging.go:28:								SetDefaultLogger		100.0%
github.com/cobaltcore-dev/cortex/internal/conf/opts.go:19:								NewRawOpts			100.0%
github.com/cobaltcore-dev/cortex/internal/conf/opts.go:26:								Unmarshal			66.7%
github.com/cobaltcore-dev/cortex/internal/conf/opts.go:35:								UnmarshalJSON			66.7%
github.com/cobaltcore-dev/cortex/internal/conf/opts.go:50:								Load				83.3%
github.com/cobaltcore-dev/cortex/internal/conf/validation.go:36:							validate			85.2%
github.com/cobaltcore-dev/cortex/internal/conf/validation.go:91:							Validate			82.0%
github.com/cobaltcore-dev/cortex/internal/db/db.go:45:									NewPostgresDB			70.8%
github.com/cobaltcore-dev/cortex/internal/db/db.go:96:									CheckLivenessPeriodically	76.5%
github.com/cobaltcore-dev/cortex/internal/db/db.go:122:									SelectTimed			33.3%
github.com/cobaltcore-dev/cortex/internal/db/db.go:134:									CreateTable			70.0%
github.com/cobaltcore-dev/cortex/internal/db/db.go:151:									AddTable			100.0%
github.com/cobaltcore-dev/cortex/internal/db/db.go:162:									TableExists			58.3%
github.com/cobaltcore-dev/cortex/internal/db/db.go:191:									Close				50.0%
github.com/cobaltcore-dev/cortex/internal/db/db.go:198:									ReplaceAll			62.5%
github.com/cobaltcore-dev/cortex/internal/db/db.go:225:									BulkInsert			86.7%
github.com/cobaltcore-dev/cortex/internal/db/migrations.go:33:								TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/db/migrations.go:38:								Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/db/migrations.go:48:								NewMigrater			75.0%
github.com/cobaltcore-dev/cortex/internal/db/migrations.go:69:								Migrate				65.1%
github.com/cobaltcore-dev/cortex/internal/db/monitor.go:17:								NewDBMonitor			100.0%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/cycle_detector.go:24:					NewCycleDetector		100.0%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/cycle_detector.go:28:					Filter				85.0%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/executor.go:32:						NewExecutor			0.0%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/executor.go:50:						Deschedule			84.6%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/executor.go:80:						descheduleVM			67.7%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/monitor.go:24:						NewPipelineMonitor		100.0%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/monitor.go:68:						monitorStep			71.4%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/monitor.go:85:						GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/monitor.go:90:						Init				100.0%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/monitor.go:95:						Run				0.0%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/nova_api.go:51:						NewNovaAPI			100.0%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/nova_api.go:58:						Init				77.8%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/nova_api.go:81:						Get				75.0%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/nova_api.go:90:						LiveMigrate			100.0%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/nova_api.go:101:						GetServerMigrations		74.1%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/pipeline.go:42:						NewDescheduler			0.0%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/pipeline.go:55:						Init				75.0%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/pipeline.go:87:						run				90.9%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/pipeline.go:118:						deduplicate			100.0%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/pipeline.go:134:						DeschedulePeriodically		55.0%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/plugins/base.go:21:						Init				75.0%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/plugins/demo.go:21:						GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/descheduler/nova/plugins/demo.go:25:						Run				0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/monitor.go:31:							NewPipelineMonitor		100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/monitor.go:78:							GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/monitor.go:84:							Triggers			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/monitor.go:90:							Init				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/monitor.go:95:							NeedsUpdate			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/monitor.go:100:							MarkAsUpdated			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/monitor.go:105:							NextPossibleExecution		0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/monitor.go:110:							NotifySkip			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/monitor.go:120:							monitorFeatureExtractor		100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/monitor.go:145:							Extract				90.0%
github.com/cobaltcore-dev/cortex/internal/extractor/pipeline.go:71:							NewPipeline			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/pipeline.go:81:							Init				0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/pipeline.go:87:							initDependencyGraph		88.9%
github.com/cobaltcore-dev/cortex/internal/extractor/pipeline.go:136:							initTriggerExecutionOrder	94.1%
github.com/cobaltcore-dev/cortex/internal/extractor/pipeline.go:171:							ExtractOnTrigger		91.7%
github.com/cobaltcore-dev/cortex/internal/extractor/pipeline.go:200:							extract				81.2%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/base.go:26:							Init				87.5%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/base.go:40:							ExtractSQL			75.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/base.go:50:							Extracted			87.5%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/base.go:66:							NeedsUpdate			80.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/base.go:78:							MarkAsUpdated			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/base.go:83:							NextPossibleExecution		0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/base.go:93:							NotifySkip			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/kvm/node_exporter_host_cpu_usage.go:22:			TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/kvm/node_exporter_host_cpu_usage.go:27:			Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/kvm/node_exporter_host_cpu_usage.go:42:			GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/kvm/node_exporter_host_cpu_usage.go:47:			Triggers			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/kvm/node_exporter_host_cpu_usage.go:57:			Extract				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/kvm/node_exporter_host_memory_active.go:22:			TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/kvm/node_exporter_host_memory_active.go:27:			Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/kvm/node_exporter_host_memory_active.go:42:			GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/kvm/node_exporter_host_memory_active.go:47:			Triggers			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/kvm/node_exporter_host_memory_active.go:57:			Extract				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/netapp/storage_pool_cpu_usage.go:26:			TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/netapp/storage_pool_cpu_usage.go:31:			Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/netapp/storage_pool_cpu_usage.go:50:			GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/netapp/storage_pool_cpu_usage.go:55:			Triggers			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/netapp/storage_pool_cpu_usage.go:67:			Extract				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/sap/host_details.go:42:					TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/sap/host_details.go:47:					Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/sap/host_details.go:65:					GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/sap/host_details.go:70:					Triggers			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/sap/host_details.go:81:					Extract				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_az.go:22:					TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_az.go:27:					Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_az.go:45:					GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_az.go:50:					Triggers			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_az.go:61:					Extract				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_capabilities.go:26:				TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_capabilities.go:31:				Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_capabilities.go:50:				GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_capabilities.go:55:				Triggers			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_capabilities.go:66:				Extract				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_pinned_projects.go:31:				TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_pinned_projects.go:36:				Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_pinned_projects.go:48:				GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_pinned_projects.go:53:				Triggers			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_pinned_projects.go:64:				Extract				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_utilization.go:37:				TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_utilization.go:42:				Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_utilization.go:61:				GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_utilization.go:66:				Triggers			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/host_utilization.go:78:				Extract				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/vm_host_residency.go:44:				TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/vm_host_residency.go:49:				Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/vm_host_residency.go:63:				GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/vm_host_residency.go:68:				Triggers			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/vm_host_residency.go:81:				Extract				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/vm_life_span.go:40:					TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/vm_life_span.go:45:					Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/vm_life_span.go:59:					GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/vm_life_span.go:64:					Triggers			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/shared/vm_life_span.go:76:					Extract				83.3%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_hostsystem_contention_long_term.go:22:		TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_hostsystem_contention_long_term.go:27:		Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_hostsystem_contention_long_term.go:42:		GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_hostsystem_contention_long_term.go:47:		Triggers			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_hostsystem_contention_long_term.go:58:		Extract				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_hostsystem_contention_short_term.go:22:	TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_hostsystem_contention_short_term.go:27:	Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_hostsystem_contention_short_term.go:42:	GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_hostsystem_contention_short_term.go:47:	Triggers			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_hostsystem_contention_short_term.go:58:	Extract				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_hostsystem_resolver.go:23:			TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_hostsystem_resolver.go:28:			Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_hostsystem_resolver.go:48:			Triggers			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_hostsystem_resolver.go:57:			GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_hostsystem_resolver.go:65:			Extract				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_project_noisiness.go:24:			TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_project_noisiness.go:29:			Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_project_noisiness.go:49:			GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_project_noisiness.go:54:			Triggers			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/plugins/vmware/vrops_project_noisiness.go:65:			Extract				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/telemetry.go:27:							GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/telemetry.go:33:							Triggers			100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/telemetry.go:39:							Init				100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/telemetry.go:44:							NeedsUpdate			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/telemetry.go:49:							MarkAsUpdated			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/telemetry.go:54:							NextPossibleExecution		0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/telemetry.go:59:							NotifySkip			0.0%
github.com/cobaltcore-dev/cortex/internal/extractor/telemetry.go:64:							publishTelemetryIfNeeded	100.0%
github.com/cobaltcore-dev/cortex/internal/extractor/telemetry.go:78:							Extract				75.0%
github.com/cobaltcore-dev/cortex/internal/keystone/keystone_api.go:35:							NewKeystoneAPI			100.0%
github.com/cobaltcore-dev/cortex/internal/keystone/keystone_api.go:40:							Authenticate			75.0%
github.com/cobaltcore-dev/cortex/internal/keystone/keystone_api.go:75:							FindEndpoint			0.0%
github.com/cobaltcore-dev/cortex/internal/keystone/keystone_api.go:83:							Client				0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/pipeline.go:45:								NewPipeline			100.0%
github.com/cobaltcore-dev/cortex/internal/kpis/pipeline.go:54:								Describe			100.0%
github.com/cobaltcore-dev/cortex/internal/kpis/pipeline.go:59:								Collect				0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/pipeline.go:66:								Init				83.3%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/base.go:21:							Init				75.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/netapp/storage_pool_cpu.go:25:					GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/netapp/storage_pool_cpu.go:29:					Init				80.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/netapp/storage_pool_cpu.go:46:					Describe			0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/netapp/storage_pool_cpu.go:51:					Collect				90.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/sap/host_available_capacity.go:29:				GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/sap/host_available_capacity.go:33:				Init				83.3%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/sap/host_available_capacity.go:78:				Describe			0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/sap/host_available_capacity.go:84:				Collect				94.9%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/sap/host_running_vms.go:38:					GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/sap/host_running_vms.go:42:					Init				75.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/sap/host_running_vms.go:63:					Describe			0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/sap/host_running_vms.go:67:					Collect				63.6%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/sap/host_total_allocatable_capacity.go:25:			GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/sap/host_total_allocatable_capacity.go:29:			Init				75.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/sap/host_total_allocatable_capacity.go:51:			Describe			0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/sap/host_total_allocatable_capacity.go:55:			Collect				85.7%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/shared/vm_commitments.go:29:					GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/shared/vm_commitments.go:33:					Init				85.7%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/shared/vm_commitments.go:80:					Describe			0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/shared/vm_commitments.go:88:					convertLimesMemory		100.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/shared/vm_commitments.go:105:					Collect				89.5%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/shared/vm_life_span.go:25:					GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/shared/vm_life_span.go:29:					Init				75.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/shared/vm_life_span.go:42:					Describe			0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/shared/vm_life_span.go:46:					Collect				73.9%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/shared/vm_migration_statistics.go:30:				GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/shared/vm_migration_statistics.go:34:				Init				80.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/shared/vm_migration_statistics.go:51:				Describe			0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/shared/vm_migration_statistics.go:56:				Collect				84.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/vmware/host_contention.go:25:					GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/vmware/host_contention.go:29:					Init				80.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/vmware/host_contention.go:46:					Describe			0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/vmware/host_contention.go:51:					Collect				90.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/vmware/project_noisiness.go:24:					GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/vmware/project_noisiness.go:28:					Init				75.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/vmware/project_noisiness.go:40:					Describe			0.0%
github.com/cobaltcore-dev/cortex/internal/kpis/plugins/vmware/project_noisiness.go:44:					Collect				84.6%
github.com/cobaltcore-dev/cortex/internal/monitoring/monitoring.go:23:							NewRegistry			100.0%
github.com/cobaltcore-dev/cortex/internal/monitoring/monitoring.go:35:							Gather				87.5%
github.com/cobaltcore-dev/cortex/internal/mqtt/monitor.go:15:								NewMQTTMonitor			0.0%
github.com/cobaltcore-dev/cortex/internal/mqtt/mqtt.go:38:								NewClient			0.0%
github.com/cobaltcore-dev/cortex/internal/mqtt/mqtt.go:43:								NewClientWithConfig		100.0%
github.com/cobaltcore-dev/cortex/internal/mqtt/mqtt.go:53:								onUnexpectedConnectionLoss	78.9%
github.com/cobaltcore-dev/cortex/internal/mqtt/mqtt.go:83:								Connect				92.3%
github.com/cobaltcore-dev/cortex/internal/mqtt/mqtt.go:127:								Publish				66.7%
github.com/cobaltcore-dev/cortex/internal/mqtt/mqtt.go:135:								publish				76.9%
github.com/cobaltcore-dev/cortex/internal/mqtt/mqtt.go:158:								resubscribeAllTopics		66.7%
github.com/cobaltcore-dev/cortex/internal/mqtt/mqtt.go:170:								Subscribe			75.0%
github.com/cobaltcore-dev/cortex/internal/mqtt/mqtt.go:192:								Disconnect			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/activation.go:12:							NoEffect			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/activation.go:15:							Norm				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/activation.go:21:							Apply				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/api_monitor.go:23:							NewSchedulerMonitor		100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/api_monitor.go:47:							Callback			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/api_monitor.go:53:							Respond				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/cinder/api/http/api.go:34:						NewAPI				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/cinder/api/http/api.go:53:						Init				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/cinder/api/http/api.go:63:						canRunScheduler			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/cinder/api/http/api.go:88:						CinderExternalScheduler		80.5%
github.com/cobaltcore-dev/cortex/internal/scheduler/cinder/api/messages.go:38:						GetSubjects			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/cinder/api/messages.go:45:						GetWeights			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/cinder/api/messages.go:48:						GetTraceLogArgs			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/cinder/api/messages.go:56:						GetPipeline			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/cinder/api/messages.go:59:						WithPipeline			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/cinder/pipeline.go:25:						NewPipeline			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/manila/api/http/api.go:34:						NewAPI				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/manila/api/http/api.go:53:						Init				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/manila/api/http/api.go:59:						canRunScheduler			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/manila/api/http/api.go:84:						ManilaExternalScheduler		80.5%
github.com/cobaltcore-dev/cortex/internal/scheduler/manila/api/messages.go:38:						GetSubjects			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/manila/api/messages.go:45:						GetWeights			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/manila/api/messages.go:48:						GetTraceLogArgs			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/manila/api/messages.go:56:						GetPipeline			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/manila/api/messages.go:59:						WithPipeline			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/manila/pipeline.go:28:						NewPipeline			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/manila/plugins/netapp/cpu_usage_balancing.go:31:			Validate			60.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/manila/plugins/netapp/cpu_usage_balancing.go:49:			GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/manila/plugins/netapp/cpu_usage_balancing.go:54:			Run				93.8%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/api/http/api.go:52:						NewAPI				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/api/http/api.go:87:						Init				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/api/http/api.go:99:						canRunScheduler			86.7%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/api/http/api.go:135:						NovaExternalScheduler		61.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/api/http/api.go:220:						HandleCommitmentChangeRequest	73.1%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/api/http/api.go:436:						HandleListSchedulingDecisions	0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/api/messages.go:52:						GetSubjects			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/api/messages.go:59:						GetWeights			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/api/messages.go:62:						GetTraceLogArgs			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/api/messages.go:74:						GetPipeline			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/api/messages.go:77:						WithPipeline			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/api/messages.go:136:						GetSchedulerHintStr		81.8%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/pipeline.go:73:						NewNovaPipelineConsumer		0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/pipeline.go:88:						Consume				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/pipeline.go:191:						NewPipeline			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/pipeline.go:226:						modify				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/pipeline.go:253:						Run				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/kvm/avoid_overloaded_hosts_cpu.go:31:			Validate			60.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/kvm/avoid_overloaded_hosts_cpu.go:49:			GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/kvm/avoid_overloaded_hosts_cpu.go:54:			Run				94.1%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/kvm/avoid_overloaded_hosts_memory.go:31:		Validate			60.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/kvm/avoid_overloaded_hosts_memory.go:49:		GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/kvm/avoid_overloaded_hosts_memory.go:54:		Run				94.1%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_compute_capabilities.go:22:		GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_compute_capabilities.go:36:		convertToCapabilities		100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_compute_capabilities.go:53:		Run				86.5%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_correct_az.go:20:			GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_correct_az.go:23:			Run				78.6%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_disabled.go:21:				GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_disabled.go:24:				Run				90.9%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_external_customer.go:23:			Validate			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_external_customer.go:35:			GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_external_customer.go:39:			Run				96.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_has_accelerators.go:21:			GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_has_accelerators.go:24:			Run				93.3%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_has_enough_capacity.go:26:		Validate			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_has_enough_capacity.go:35:		Init				20.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_has_enough_capacity.go:58:		GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_has_enough_capacity.go:74:		Run				90.6%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_has_requested_traits.go:19:		GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_has_requested_traits.go:24:		Run				97.3%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_host_instructions.go:19:			GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_host_instructions.go:24:			Run				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_packed_virtqueue.go:21:			GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_packed_virtqueue.go:24:			Run				93.3%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_project_aggregates.go:20:		GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/filter_project_aggregates.go:24:		Run				92.9%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/resource_balancing.go:54:			Validate			68.4%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/resource_balancing.go:96:			GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/shared/resource_balancing.go:101:			Run				95.9%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/vmware/anti_affinity_noisy_projects.go:25:		Validate			66.7%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/vmware/anti_affinity_noisy_projects.go:40:		GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/vmware/anti_affinity_noisy_projects.go:45:		Run				84.6%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/vmware/avoid_long_term_contended_hosts.go:31:		Validate			60.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/vmware/avoid_long_term_contended_hosts.go:49:		GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/vmware/avoid_long_term_contended_hosts.go:54:		Run				94.1%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/vmware/avoid_short_term_contended_hosts.go:31:		Validate			60.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/vmware/avoid_short_term_contended_hosts.go:49:		GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/plugins/vmware/avoid_short_term_contended_hosts.go:54:		Run				94.1%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/scoper.go:27:							GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/scoper.go:32:							GetAlias			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/scoper.go:37:							Init				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/scoper.go:44:							Run				85.7%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/scoper.go:82:							queryHostsInScope		77.3%
github.com/cobaltcore-dev/cortex/internal/scheduler/nova/scoper.go:190:							isSpecInScope			60.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/pipeline.go:54:							SetConsumer			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/pipeline.go:61:							getStepKey			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/pipeline.go:74:							NewPipeline			80.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/pipeline.go:121:							runSteps			81.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/pipeline.go:157:							normalizeInputWeights		100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/pipeline.go:166:							applyStepWeights		87.5%
github.com/cobaltcore-dev/cortex/internal/scheduler/pipeline.go:187:							sortSubjectsByWeights		100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/pipeline.go:216:							Run				90.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/pipeline_monitor.go:37:						NewPipelineMonitor		100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/pipeline_monitor.go:110:						SubPipeline			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/pipeline_monitor.go:117:						observePipelineResult		50.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/scaling.go:7:							clamp				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/scaling.go:22:							MinMaxScale			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/step.go:28:								Validate			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/step.go:62:								Init				80.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/step.go:72:								GetAlias			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/step.go:75:								PrepareResult			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/step.go:85:								PrepareStats			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/step_monitor.go:43:							GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/step_monitor.go:48:							GetAlias			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/step_monitor.go:53:							Init				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/step_monitor.go:58:							MonitorStep			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/step_monitor.go:81:							Run				45.6%
github.com/cobaltcore-dev/cortex/internal/scheduler/step_monitor.go:220:						impact				94.4%
github.com/cobaltcore-dev/cortex/internal/scheduler/step_validation.go:29:						GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/step_validation.go:34:						GetAlias			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/step_validation.go:39:						Init				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/step_validation.go:48:						ValidateStep			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduler/step_validation.go:56:						Run				84.6%
github.com/cobaltcore-dev/cortex/internal/sync/monitor.go:24:								NewSyncMonitor			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/cinder/cinder_api.go:36:					NewCinderAPI			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/cinder/cinder_api.go:44:					Init				77.8%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/cinder/cinder_api.go:65:					GetAllStoragePools		73.3%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/cinder/cinder_sync.go:30:					Init				83.3%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/cinder/cinder_sync.go:43:					Sync				85.7%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/cinder/cinder_sync.go:58:					SyncAllStoragePools		53.8%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/cinder/cinder_types.go:52:					TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/cinder/cinder_types.go:55:					Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/cinder/cinder_types.go:58:					UnmarshalJSON			93.9%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/cinder/cinder_types.go:137:					MarshalJSON			0.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/identity/identity_api.go:33:					NewIdentityAPI			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/identity/identity_api.go:37:					Init				77.8%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/identity/identity_api.go:56:					GetAllDomains			80.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/identity/identity_api.go:74:					GetAllProjects			84.6%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/identity/identity_sync.go:24:					Init				87.5%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/identity/identity_sync.go:39:					Sync				84.6%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/identity/identity_sync.go:61:					SyncDomains			66.7%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/identity/identity_sync.go:72:					SyncProjects			66.7%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/identity/identity_types.go:23:					TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/identity/identity_types.go:26:					Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/identity/identity_types.go:54:					TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/identity/identity_types.go:57:					Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/limes/limes_api.go:44:						NewLimesAPI			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/limes/limes_api.go:49:						Init				77.8%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/limes/limes_api.go:71:						GetAllCommitments		90.3%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/limes/limes_api.go:121:					getCommitments			84.2%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/limes/limes_sync.go:31:					Init				83.3%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/limes/limes_sync.go:44:					Sync				83.3%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/limes/limes_sync.go:57:					SyncCommitments			58.8%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/limes/limes_types.go:77:					TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/limes/limes_types.go:80:					Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/manila/manila_api.go:40:					NewManilaAPI			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/manila/manila_api.go:45:					Init				77.8%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/manila/manila_api.go:66:					GetAllStoragePools		75.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/manila/manila_sync.go:31:					Init				83.3%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/manila/manila_sync.go:44:					Sync				85.7%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/manila/manila_sync.go:59:					SyncAllStoragePools		53.8%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/manila/manila_types.go:53:					UnmarshalJSON			87.5%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/manila/manila_types.go:143:					MarshalJSON			72.1%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/manila/manila_types.go:240:					TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/manila/manila_types.go:243:					Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_api.go:54:						NewNovaAPI			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_api.go:59:						Init				77.8%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_api.go:83:						GetAllServers			68.8%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_api.go:118:						GetDeletedServers		70.6%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_api.go:153:						GetAllHypervisors		69.7%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_api.go:207:						GetAllFlavors			68.8%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_api.go:244:						GetAllMigrations		69.7%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_api.go:297:						GetAllAggregates		0.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_sync.go:32:						Init				93.8%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_sync.go:60:						Sync				41.9%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_sync.go:108:						SyncAllServers			71.4%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_sync.go:122:						SyncDeletedServers		80.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_sync.go:143:						SyncAllHypervisors		71.4%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_sync.go:158:						SyncAllFlavors			71.4%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_sync.go:171:						SyncAllMigrations		71.4%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_sync.go:184:						SyncAllAggregates		71.4%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:42:						UnmarshalJSON			77.8%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:65:						MarshalJSON			0.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:85:						TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:88:						Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:125:					UnmarshalJSON			77.8%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:148:					MarshalJSON			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:168:					TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:171:					Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:204:					UnmarshalJSON			80.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:240:					MarshalJSON			85.7%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:272:					TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:275:					Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:295:					UnmarshalJSON			54.5%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:318:					MarshalJSON			55.6%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:339:					TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:342:					Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:366:					TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:369:					Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:390:					TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/nova/nova_types.go:393:					Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_api.go:47:					NewPlacementAPI			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_api.go:52:					Init				77.8%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_api.go:74:					GetAllResourceProviders		66.7%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_api.go:102:				GetAllTraits			90.3%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_api.go:152:				getTraits			90.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_api.go:176:				GetAllInventoryUsages		71.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_api.go:226:				getInventoryUsages		77.3%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_sync.go:31:				Init				90.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_sync.go:51:				Sync				64.3%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_sync.go:77:				SyncResourceProviders		53.8%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_sync.go:98:				SyncTraits			53.8%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_sync.go:119:				SyncInventoryUsages		53.8%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_types.go:25:				TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_types.go:28:				Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_types.go:39:				TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_types.go:42:				Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_types.go:82:				TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/placement/placement_types.go:85:				Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/sync.go:38:							NewCombinedSyncer		100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/sync.go:96:							Init				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/openstack/sync.go:103:							Sync				60.0%
github.com/cobaltcore-dev/cortex/internal/sync/pipeline.go:21:								Init				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/pipeline.go:28:								SyncPeriodic			80.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/prometheus.go:59:						NewPrometheusAPI		100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/prometheus.go:74:						FetchMetrics			75.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/sync.go:47:							NewCombinedSyncer		91.7%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/sync.go:80:							Init				0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/sync.go:87:							Sync				72.7%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/sync.go:134:							newSyncerOfType			70.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/sync.go:167:							Triggers			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/sync.go:175:							Init				75.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/sync.go:186:							getSyncWindowStart		81.2%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/sync.go:226:							sync				76.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/sync.go:278:							countMetrics			83.3%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/sync.go:297:							Sync				75.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/triggers.go:7:						TriggerMetricAliasSynced	100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/triggers.go:12:						TriggerMetricTypeSynced		100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:64:							TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:65:							Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:66:							GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:67:							GetTimestamp			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:68:							GetValue			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:69:							With				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:119:							TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:120:							Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:121:							GetName				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:122:							GetTimestamp			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:123:							GetValue			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:124:							With				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:144:							TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:145:							Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:146:							GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:147:							GetTimestamp			0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:148:							GetValue			0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:149:							With				0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:185:							TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:186:							Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:187:							GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:188:							GetTimestamp			0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:189:							GetValue			0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:190:							With				0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:216:							TableName			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:217:							Indexes				100.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:218:							GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:219:							GetTimestamp			0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:220:							GetValue			0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:221:							With				0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:256:							TableName			0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:259:							Indexes				0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:260:							GetName				0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:261:							GetTimestamp			0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:262:							GetValue			0.0%
github.com/cobaltcore-dev/cortex/internal/sync/prometheus/types.go:263:							With				0.0%
github.com/cobaltcore-dev/cortex/internal/sync/sso.go:23:								RoundTrip			100.0%
github.com/cobaltcore-dev/cortex/internal/sync/sso.go:30:								NewHTTPClient			100.0%
github.com/cobaltcore-dev/cortex/internal/tools/histogram.go:7:								Histogram			100.0%
total:															(statements)			73.3%
Coverage in reservations module (reservations/internal/): 74.6%
github.com/cobaltcore-dev/cortex/reservations/internal/commitments/client.go:56:	NewCommitmentsClient		100.0%
github.com/cobaltcore-dev/cortex/reservations/internal/commitments/client.go:61:	Init				0.0%
github.com/cobaltcore-dev/cortex/reservations/internal/commitments/client.go:107:	ListFlavorsByName		92.3%
github.com/cobaltcore-dev/cortex/reservations/internal/commitments/client.go:130:	ListProjects			88.9%
github.com/cobaltcore-dev/cortex/reservations/internal/commitments/client.go:148:	ListCommitmentsByID		100.0%
github.com/cobaltcore-dev/cortex/reservations/internal/commitments/client.go:191:	listCommitments			90.5%
github.com/cobaltcore-dev/cortex/reservations/internal/commitments/client.go:228:	ListServersByProjectID		100.0%
github.com/cobaltcore-dev/cortex/reservations/internal/commitments/client.go:268:	listServersForProject		88.9%
github.com/cobaltcore-dev/cortex/reservations/internal/commitments/messages.go:135:	UnmarshalJSON			77.8%
github.com/cobaltcore-dev/cortex/reservations/internal/commitments/messages.go:158:	MarshalJSON			0.0%
github.com/cobaltcore-dev/cortex/reservations/internal/commitments/syncer.go:39:	NewSyncer			0.0%
github.com/cobaltcore-dev/cortex/reservations/internal/commitments/syncer.go:48:	Init				100.0%
github.com/cobaltcore-dev/cortex/reservations/internal/commitments/syncer.go:60:	resolveUnusedCommitments	53.3%
github.com/cobaltcore-dev/cortex/reservations/internal/commitments/syncer.go:158:	SyncReservations		66.7%
github.com/cobaltcore-dev/cortex/reservations/internal/commitments/syncer.go:262:	Run				80.0%
github.com/cobaltcore-dev/cortex/reservations/internal/controller/controller.go:45:	Reconcile			73.8%
github.com/cobaltcore-dev/cortex/reservations/internal/controller/controller.go:158:	SetupWithManager		100.0%
github.com/cobaltcore-dev/cortex/reservations/internal/controller/monitor.go:31:	Init				100.0%
github.com/cobaltcore-dev/cortex/reservations/internal/controller/monitor.go:43:	Describe			100.0%
github.com/cobaltcore-dev/cortex/reservations/internal/controller/monitor.go:49:	Collect				100.0%
total:											(statements)			74.6%

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants