Skip to content

Add VMware commitments KPI#701

Open
SoWieMarkus wants to merge 8 commits intomainfrom
hana-unused-crs
Open

Add VMware commitments KPI#701
SoWieMarkus wants to merge 8 commits intomainfrom
hana-unused-crs

Conversation

@SoWieMarkus
Copy link
Copy Markdown
Collaborator

Changes

  • Add new vmware commitments kpi
  • Track unused hana instance commitments
  • Translate unused instance commitments to actual resource usage

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Apr 13, 2026

Warning

Rate limit exceeded

@SoWieMarkus has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 54 minutes and 14 seconds before requesting another review.

Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 54 minutes and 14 seconds.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 77467b5f-e691-42ad-9436-bb86cbf008e4

📥 Commits

Reviewing files that changed from the base of the PR and between ab46ec2 and 3df7e49.

📒 Files selected for processing (1)
  • internal/knowledge/kpis/plugins/compute/resource_commitments_vmware_test.go
📝 Walkthrough

Walkthrough

Adds a new VMware commitments KPI: a Prometheus-backed KPI plugin that queries limes commitments, Nova flavors, and Nova servers to compute unused HANA instance commitments and exposes CPU/RAM/Disk gauges; includes a Kubernetes KPI manifest and registration.

Changes

Cohort / File(s) Summary
KPI Manifest
helm/bundles/cortex-nova/templates/kpis.yaml
Appended new KPI CR vmware-commitments (apiVersion cortex.cloud/v1alpha1) with schedulingDomain: nova, impl: vmware_commitments_kpi, and datasource dependencies: limes-project-commitments, nova-flavors, nova-servers.
KPI Implementation
internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go
Added VMwareResourceCommitmentsKPI: registers cortex_vmware_hana_unused_instance_commitments; queries DB for commitments, flavors, and HANA servers; derives CPU architecture from flavor name; aggregates committed vs running by project/flavor/AZ/arch; computes unused and converts to cpu/ram/disk metrics; logs and aborts on query failures.
KPI Tests
internal/knowledge/kpis/plugins/compute/resource_commitments_vmware_test.go
New unit test TestVMwareResourceCommitmentsKPI_CollectHanaUnusedCommitments: seeds commitments, flavors, and servers across projects/AZs, exercises Collect, and asserts emitted metrics, labels, and values.
KPI Registration
internal/knowledge/kpis/supported_kpis.go
Registered "vmware_commitments_kpi" in supportedKPIs mapped to &compute.VMwareResourceCommitmentsKPI{}.

Sequence Diagram(s)

sequenceDiagram
    participant Collector as KPI Collector
    participant KPI as VMwareResourceCommitmentsKPI
    participant DB as Database
    participant Prometheus as Prometheus

    Collector->>KPI: Collect()
    KPI->>DB: Query limes commitments (resource_name LIKE 'instances_%')
    DB-->>KPI: Commitment rows
    KPI->>DB: Query Nova flavors (vCPUs, RAM, Disk)
    DB-->>KPI: Flavor records
    KPI->>DB: Query Nova servers (flavor_name LIKE 'hana_%', exclude DELETED/ERROR)
    DB-->>KPI: Server records (status, flavor_name, project_id, availability_zone)
    KPI->>KPI: Derive cpu_architecture from flavor_name
    KPI->>KPI: Aggregate committed vs running by (project, flavor, AZ, arch)
    KPI->>KPI: Compute unused = max(0, committed - running)
    KPI->>KPI: Convert unused → cpu/ram/disk using flavor capacities
    KPI->>Prometheus: Emit gauge metrics (cortex_vmware_hana_unused_instance_commitments)
    Prometheus-->>Collector: Metrics recorded
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

Suggested reviewers

  • auhlig
  • juliusclausnitzer
  • umswmayj
  • PhilippMatthes
  • mblos

Poem

🐰 Hopping through rows of commitments I roam,
Counting unused HANA where workloads call home,
Rapids or Cascade, in zones far and near,
I tally spare vCPU, RAM and disk clear,
Metrics sprout like carrots — a rabbit’s small cheer.

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately and concisely describes the main change: adding a new VMware commitments KPI to the codebase.
Description check ✅ Passed The description is clearly related to the changeset, outlining the three main aspects: adding the KPI, tracking unused HANA commitments, and translating them to resource usage.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch hana-unused-crs

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@SoWieMarkus SoWieMarkus marked this pull request as draft April 13, 2026 06:41
Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🧹 Nitpick comments (2)
internal/knowledge/kpis/supported_kpis.go (1)

25-25: Align the registry key with the implementation name.

VMwareResourceCommitmentsKPI.GetName() returns vmware_hana_commitments_kpi, but this registry exposes the same plugin as vmware_commitments_kpi. Keeping two public names for one KPI makes manifests and dashboards harder to reason about and is easy to break later.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@internal/knowledge/kpis/supported_kpis.go` at line 25, The registry key for
the VMware commitments KPI is inconsistent with the implementation: update the
key in the supported_kpis map to match VMwareResourceCommitmentsKPI.GetName()
(change "vmware_commitments_kpi" to "vmware_hana_commitments_kpi") so the public
registry name and the plugin's GetName() are identical; locate the entry
referencing &compute.VMwareResourceCommitmentsKPI{} in supported_kpis and
replace the map key accordingly to avoid dual public names.
helm/bundles/cortex-nova/templates/kpis.yaml (1)

191-199: Make the manifest HANA-specific.

The implementation skips every non-hana_ commitment and exports a cortex_vmware_hana_* metric, so vmware-commitments reads broader than what this KPI actually covers. Narrowing the resource name/description now will avoid misleading dashboards and alerts.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@helm/bundles/cortex-nova/templates/kpis.yaml` around lines 191 - 199, The
manifest currently names the KPI "vmware-commitments" but the implementation
(impl: vmware_commitments_kpi) only processes hana_ commitments and emits
cortex_vmware_hana_* metrics, so rename and reword this resource to be
HANA-specific: change the resource name (vmware-commitments) to something like
vmware-hana-commitments and update the description to explicitly state it only
tracks VMware HANA commitments and unused HANA-specific reservations; leave impl
(vmware_commitments_kpi) and dependencies (limes-project-commitments) intact so
behavior is unchanged.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@helm/bundles/cortex-nova/templates/kpis.yaml`:
- Around line 195-197: The KPI manifest only depends on
limes-project-commitments but the code in
internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go also
queries Nova flavors and servers, so update the kpis.yaml dependencies to
include the Nova datasources (add entries for the datasource names used by Nova:
"nova-flavors" and "nova-servers") alongside "limes-project-commitments" so the
KPI waits for those tables to be populated before running; make sure the
datasource names exactly match the datasource resources registered for flavors
and servers.

In `@internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go`:
- Around line 82-88: The query using k.DB.Select against
nova.Server{}.TableName() currently treats every non-DELETED/ERROR server as
consuming HANA capacity; change the WHERE clause to only include real running
states (e.g., WHERE status IN ('ACTIVE','RESCUED') — add other cluster-specific
running states as needed) so SHUTOFF/SHELVED_OFFLOADED/BUILD do not reduce
unused-commitment; then add a regression test that uses the same selection logic
to assert that SHUTOFF and SHELVED_OFFLOADED servers are not counted toward used
commitments (name the test to reference stopped/shelved regression).

---

Nitpick comments:
In `@helm/bundles/cortex-nova/templates/kpis.yaml`:
- Around line 191-199: The manifest currently names the KPI "vmware-commitments"
but the implementation (impl: vmware_commitments_kpi) only processes hana_
commitments and emits cortex_vmware_hana_* metrics, so rename and reword this
resource to be HANA-specific: change the resource name (vmware-commitments) to
something like vmware-hana-commitments and update the description to explicitly
state it only tracks VMware HANA commitments and unused HANA-specific
reservations; leave impl (vmware_commitments_kpi) and dependencies
(limes-project-commitments) intact so behavior is unchanged.

In `@internal/knowledge/kpis/supported_kpis.go`:
- Line 25: The registry key for the VMware commitments KPI is inconsistent with
the implementation: update the key in the supported_kpis map to match
VMwareResourceCommitmentsKPI.GetName() (change "vmware_commitments_kpi" to
"vmware_hana_commitments_kpi") so the public registry name and the plugin's
GetName() are identical; locate the entry referencing
&compute.VMwareResourceCommitmentsKPI{} in supported_kpis and replace the map
key accordingly to avoid dual public names.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 653be8de-2b01-4620-94b8-271366ad909d

📥 Commits

Reviewing files that changed from the base of the PR and between bc749ea and e72f45d.

📒 Files selected for processing (4)
  • helm/bundles/cortex-nova/templates/kpis.yaml
  • internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go
  • internal/knowledge/kpis/plugins/compute/resource_commitments_vmware_test.go
  • internal/knowledge/kpis/supported_kpis.go

@SoWieMarkus SoWieMarkus marked this pull request as ready for review April 13, 2026 09:04
Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

♻️ Duplicate comments (1)
internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go (1)

82-88: ⚠️ Potential issue | 🟠 Major

Restrict the server filter to states that actually burn HANA commitments.

This query still counts stopped/shelved/transitional VMs as "used", so the KPI underreports unused commitments whenever a HANA server exists but is not actually consuming reserved capacity. Please switch Line 87 to an allowlist of commitment-consuming states and add a stopped/shelved regression case.

Suggested fix
 	if _, err := k.DB.Select(&servers, `
 		SELECT * FROM `+nova.Server{}.TableName()+`
 		WHERE flavor_name LIKE 'hana_%'
-		  AND status NOT IN ('DELETED', 'ERROR')
+		  AND status IN ('ACTIVE', 'RESCUED')
 	`); err != nil {
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go`
around lines 82 - 88, The SQL filter currently treats any non-DELETED/ERROR
server as "running" and inflates used HANA commitments; update the WHERE clause
in the k.DB.Select call that queries nova.Server{}.TableName() (the variable
servers) to use an allowlist of states that actually consume commitments (e.g.,
only include states like 'ACTIVE' or the cloud-specific running state(s) rather
than NOT IN ('DELETED','ERROR')), and add a regression test case asserting that
stopped/shelved VMs do not count as used commitments (covering stopped/shelved
transitional states).
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go`:
- Around line 124-127: The subtraction of two uint64s to compute unused (unused
:= total - runningCount[sk]) can underflow when runningCount[sk] > total; change
the logic in the loop over committed to guard the subtraction by first comparing
totals: if runningCount[sk] >= total then set unused = 0 (or skip exporting)
otherwise compute unused = total - runningCount[sk]; update the handling around
serverKey, committed and runningCount to use that guarded path so no uint64
underflow occurs.

---

Duplicate comments:
In `@internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go`:
- Around line 82-88: The SQL filter currently treats any non-DELETED/ERROR
server as "running" and inflates used HANA commitments; update the WHERE clause
in the k.DB.Select call that queries nova.Server{}.TableName() (the variable
servers) to use an allowlist of states that actually consume commitments (e.g.,
only include states like 'ACTIVE' or the cloud-specific running state(s) rather
than NOT IN ('DELETED','ERROR')), and add a regression test case asserting that
stopped/shelved VMs do not count as used commitments (covering stopped/shelved
transitional states).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: af2452c8-f295-4ac3-8c44-ead4af6162b7

📥 Commits

Reviewing files that changed from the base of the PR and between e72f45d and d098470.

📒 Files selected for processing (2)
  • helm/bundles/cortex-nova/templates/kpis.yaml
  • internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go
🚧 Files skipped from review as they are similar to previous changes (1)
  • helm/bundles/cortex-nova/templates/kpis.yaml

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

♻️ Duplicate comments (1)
internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go (1)

82-88: ⚠️ Potential issue | 🟠 Major

Only count states that actually consume HANA commitment capacity.

Line 87 still treats every non-DELETED/ERROR server as used, which includes SHUTOFF, SHELVED_OFFLOADED, BUILD, etc., and underreports unused commitments. Use a positive allowlist of running states instead (e.g., ACTIVE, RESCUED, plus environment-specific running states), and add a stopped/shelved regression test.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go`
around lines 82 - 88, The query in resource_commitments_vmware.go currently
treats any server not in ('DELETED','ERROR') as consuming HANA commitment
capacity; change the WHERE clause in the k.DB.Select call that loads
[]nova.Server (using nova.Server{}.TableName()) to use an explicit allowlist of
running states (e.g., WHERE flavor_name LIKE 'hana_%' AND status IN
('ACTIVE','RESCUED' /* add any env-specific running states here */)) instead of
NOT IN ('DELETED','ERROR'), and add a regression test that creates HANA-flavored
servers in stopped/shelved states (e.g., SHUTOFF, SHELVED_OFFLOADED) to assert
they are not counted as used.
🧹 Nitpick comments (1)
internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go (1)

108-110: Reduce scrape-path log volume for skipped KVM commitments.

Line 109 logs at Info for each skipped commitment on every collection cycle; this can create noisy/high-cardinality logs. Consider Debug level or aggregate one summary log per collect.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go`
around lines 108 - 110, The loop that checks flavors using
strings.HasPrefix(flavorName, "hana_k_") currently calls
slog.Info("unused_commitments: skipping hana kvm commitment", ...) for every
skipped commitment which creates noisy/high-cardinality logs; change that call
to slog.Debug(...) to reduce log volume (or alternatively accumulate a counter
and emit a single Info summary per collection cycle) — update the slog.Info
invocation referencing flavorName and c.ProjectID in
resource_commitments_vmware.go accordingly so skipped hana_k_ KVM commitments
are logged at Debug (or aggregated) instead of Info.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Duplicate comments:
In `@internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go`:
- Around line 82-88: The query in resource_commitments_vmware.go currently
treats any server not in ('DELETED','ERROR') as consuming HANA commitment
capacity; change the WHERE clause in the k.DB.Select call that loads
[]nova.Server (using nova.Server{}.TableName()) to use an explicit allowlist of
running states (e.g., WHERE flavor_name LIKE 'hana_%' AND status IN
('ACTIVE','RESCUED' /* add any env-specific running states here */)) instead of
NOT IN ('DELETED','ERROR'), and add a regression test that creates HANA-flavored
servers in stopped/shelved states (e.g., SHUTOFF, SHELVED_OFFLOADED) to assert
they are not counted as used.

---

Nitpick comments:
In `@internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go`:
- Around line 108-110: The loop that checks flavors using
strings.HasPrefix(flavorName, "hana_k_") currently calls
slog.Info("unused_commitments: skipping hana kvm commitment", ...) for every
skipped commitment which creates noisy/high-cardinality logs; change that call
to slog.Debug(...) to reduce log volume (or alternatively accumulate a counter
and emit a single Info summary per collection cycle) — update the slog.Info
invocation referencing flavorName and c.ProjectID in
resource_commitments_vmware.go accordingly so skipped hana_k_ KVM commitments
are logged at Debug (or aggregated) instead of Info.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: f366f417-b138-454d-b7a1-275e7cf92711

📥 Commits

Reviewing files that changed from the base of the PR and between d098470 and c285a07.

📒 Files selected for processing (1)
  • internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

♻️ Duplicate comments (1)
internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go (1)

84-88: ⚠️ Potential issue | 🟠 Major

Count only capacity-consuming server states in this query.

At Line 87, status NOT IN ('DELETED', 'ERROR') still treats stopped/shelved/transient servers as commitment-consuming, which underreports unused capacity. Please restrict this filter to states that should burn HANA commitments (e.g., ACTIVE plus any environment-specific running equivalents), and add a regression assertion for stopped/shelved states.

Suggested fix
 	if _, err := k.DB.Select(&servers, `
 		SELECT * FROM `+nova.Server{}.TableName()+`
 		WHERE flavor_name LIKE 'hana_%'
-		  AND status NOT IN ('DELETED', 'ERROR')
+		  AND status IN ('ACTIVE', 'RESCUED')
 	`); err != nil {
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go`
around lines 84 - 88, The SQL in the k.DB.Select call that queries
nova.Server{}.TableName() currently treats any server not DELETED/ERROR as
consuming HANA commitments; change the WHERE clause to only include
capacity-consuming states (e.g., status IN ('ACTIVE') or the project's canonical
running states) instead of status NOT IN ('DELETED','ERROR') so
stopped/shelved/transient servers are excluded; update the query used in the
function where k.DB.Select(&servers, ...) is invoked and add a regression test
asserting that servers with STOPPED/SHELVED (and other non-running states) are
not counted toward HANA commitments.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Duplicate comments:
In `@internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go`:
- Around line 84-88: The SQL in the k.DB.Select call that queries
nova.Server{}.TableName() currently treats any server not DELETED/ERROR as
consuming HANA commitments; change the WHERE clause to only include
capacity-consuming states (e.g., status IN ('ACTIVE') or the project's canonical
running states) instead of status NOT IN ('DELETED','ERROR') so
stopped/shelved/transient servers are excluded; update the query used in the
function where k.DB.Select(&servers, ...) is invoked and add a regression test
asserting that servers with STOPPED/SHELVED (and other non-running states) are
not counted toward HANA commitments.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 5d78d40b-3a9b-4581-bcbe-987565127873

📥 Commits

Reviewing files that changed from the base of the PR and between c285a07 and ab46ec2.

📒 Files selected for processing (2)
  • internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go
  • internal/knowledge/kpis/plugins/compute/resource_commitments_vmware_test.go

@github-actions
Copy link
Copy Markdown
Contributor

Test Coverage Report

Test Coverage 📊: 69.2%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/monitor.go:21:							NewMonitor					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/monitor.go:39:							Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/monitor.go:45:							Collect						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/cinder/cinder_api.go:37:			NewCinderAPI					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/cinder/cinder_api.go:45:			Init						81.8%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/cinder/cinder_api.go:68:			GetAllStoragePools				73.3%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/cinder/cinder_sync.go:27:			Init						83.3%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/cinder/cinder_sync.go:40:			Sync						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/cinder/cinder_sync.go:51:			SyncAllStoragePools				53.8%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/cinder/cinder_types.go:46:			TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/cinder/cinder_types.go:49:			Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/cinder/cinder_types.go:52:			UnmarshalJSON					93.9%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/cinder/cinder_types.go:131:			MarshalJSON					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/controller.go:70:				Reconcile					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/controller.go:272:				predicateIgnoreStatusConditions			100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/controller.go:290:				SetupWithManager				0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/identity/identity_api.go:35:			NewIdentityAPI					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/identity/identity_api.go:39:			Init						80.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/identity/identity_api.go:59:			GetAllDomains					66.7%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/identity/identity_api.go:83:			GetAllProjects					72.2%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/identity/identity_sync.go:26:			Init						85.7%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/identity/identity_sync.go:41:			Sync						83.3%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/identity/identity_sync.go:54:			SyncDomains					53.8%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/identity/identity_sync.go:74:			SyncProjects					53.8%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/identity/identity_types.go:16:		TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/identity/identity_types.go:19:		Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/identity/identity_types.go:47:		TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/identity/identity_types.go:50:		Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/limes/limes_api.go:45:			NewLimesAPI					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/limes/limes_api.go:50:			Init						81.8%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/limes/limes_api.go:74:			GetAllCommitments				90.3%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/limes/limes_api.go:124:			getCommitments					86.4%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/limes/limes_sync.go:28:			Init						83.3%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/limes/limes_sync.go:41:			Sync						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/limes/limes_sync.go:52:			SyncCommitments					63.2%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/limes/limes_types.go:69:			TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/limes/limes_types.go:72:			Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/manila/manila_api.go:41:			NewManilaAPI					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/manila/manila_api.go:46:			Init						81.8%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/manila/manila_api.go:69:			GetAllStoragePools				75.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/manila/manila_sync.go:28:			Init						83.3%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/manila/manila_sync.go:41:			Sync						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/manila/manila_sync.go:52:			SyncAllStoragePools				53.8%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/manila/manila_types.go:47:			UnmarshalJSON					87.5%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/manila/manila_types.go:137:			MarshalJSON					72.1%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/manila/manila_types.go:234:			TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/manila/manila_types.go:237:			Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_api.go:54:				NewNovaAPI					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_api.go:59:				Init						81.8%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_api.go:85:				GetAllServers					82.1%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_api.go:153:				GetDeletedServers				82.1%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_api.go:216:				GetAllHypervisors				82.1%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_api.go:278:				GetAllFlavors					68.8%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_api.go:315:				GetAllMigrations				82.1%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_api.go:376:				GetAllAggregates				0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_sync.go:29:				Init						90.9%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_sync.go:53:				Sync						50.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_sync.go:75:				SyncAllServers					57.1%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_sync.go:98:				SyncDeletedServers				64.7%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_sync.go:128:			SyncAllHypervisors				57.1%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_sync.go:152:			SyncAllFlavors					57.1%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_sync.go:174:			SyncAllMigrations				57.1%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_sync.go:196:			SyncAllAggregates				57.1%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:36:			UnmarshalJSON					77.8%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:59:			MarshalJSON					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:79:			TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:82:			Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:134:			UnmarshalJSON					52.9%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:173:			MarshalJSON					88.9%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:210:			TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:213:			Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:246:			UnmarshalJSON					80.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:282:			MarshalJSON					85.7%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:314:			TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:317:			Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:359:			GetHypervisorType				71.4%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:385:			UnmarshalJSON					54.5%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:408:			MarshalJSON					55.6%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:429:			TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:432:			Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:456:			TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:459:			Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:480:			TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/nova/nova_types.go:483:			Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_api.go:48:		NewPlacementAPI					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_api.go:53:		Init						81.8%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_api.go:77:		GetAllResourceProviders				66.7%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_api.go:105:		GetAllTraits					90.3%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_api.go:155:		getTraits					90.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_api.go:179:		GetAllInventoryUsages				71.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_api.go:229:		getInventoryUsages				77.3%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_sync.go:28:		Init						87.5%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_sync.go:46:		Sync						71.4%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_sync.go:62:		SyncResourceProviders				53.8%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_sync.go:83:		SyncTraits					57.9%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_sync.go:112:		SyncInventoryUsages				57.9%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_types.go:17:		TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_types.go:20:		Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_types.go:31:		TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_types.go:34:		Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_types.go:74:		TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/placement/placement_types.go:77:		Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/openstack/supported_syncers.go:22:			getSupportedSyncer				0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/controller.go:51:				Reconcile					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/controller.go:201:				SetupWithManager				0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/sync.go:32:					newTypedSyncer					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/sync.go:100:					fetch						79.2%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/sync.go:205:					getSyncWindowStart				81.2%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/sync.go:245:					sync						68.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/sync.go:295:					Sync						70.6%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/triggers.go:7:				TriggerMetricAliasSynced			0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/triggers.go:12:				TriggerMetricTypeSynced				0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:42:					TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:43:					Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:44:					GetName						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:45:					GetTimestamp					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:46:					GetValue					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:47:					With						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:90:					TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:91:					Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:92:					GetName						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:93:					GetTimestamp					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:94:					GetValue					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:95:					With						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:145:				TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:146:				Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:147:				GetName						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:148:				GetTimestamp					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:149:				GetValue					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:150:				With						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:170:				TableName					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:171:				Indexes						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:172:				GetName						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:173:				GetTimestamp					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:174:				GetValue					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:175:				With						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:211:				TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:212:				Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:213:				GetName						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:214:				GetTimestamp					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:215:				GetValue					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:216:				With						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:242:				TableName					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:243:				Indexes						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:244:				GetName						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:245:				GetTimestamp					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:246:				GetValue					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:247:				With						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:282:				TableName					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:285:				Indexes						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:286:				GetName						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:287:				GetTimestamp					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:288:				GetValue					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/datasources/plugins/prometheus/types.go:289:				With						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/db/db.go:51:								FromSecretRef					6.1%
github.com/cobaltcore-dev/cortex/internal/knowledge/db/db.go:133:								SelectTimed					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/db/db.go:142:								CreateTable					63.6%
github.com/cobaltcore-dev/cortex/internal/knowledge/db/db.go:161:								AddTable					66.7%
github.com/cobaltcore-dev/cortex/internal/knowledge/db/db.go:172:								TableExists					58.3%
github.com/cobaltcore-dev/cortex/internal/knowledge/db/db.go:201:								ReplaceAll					62.5%
github.com/cobaltcore-dev/cortex/internal/knowledge/db/db.go:230:								BulkInsert					91.1%
github.com/cobaltcore-dev/cortex/internal/knowledge/db/monitor.go:21:								newMonitor					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/db/monitor.go:63:								Describe					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/db/monitor.go:73:								Collect						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/db/testing/containers/postgres.go:21:					GetPort						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/db/testing/containers/postgres.go:25:					Init						70.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/db/testing/containers/postgres.go:69:					Close						50.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/db/testing/env.go:24:							SetupDBEnv					59.1%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/controller.go:46:							Reconcile					55.2%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/controller.go:238:						SetupWithManager				0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/monitor.go:26:							NewMonitor					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/monitor.go:44:							Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/monitor.go:50:							Collect						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/monitor.go:69:							Init						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/monitor.go:78:							monitorFeatureExtractor				100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/monitor.go:97:							Extract						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/base.go:28:						Init						87.5%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/base.go:45:						ExtractSQL					83.3%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/base.go:58:						Extracted					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute/flavor_groups.go:50:				HasFixedRamCoreRatio				100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute/flavor_groups.go:79:				Extract						82.4%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute/host_az.go:31:					Extract						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute/host_capabilities.go:35:				Extract						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute/host_details.go:59:				Extract						87.2%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute/host_pinned_projects.go:45:			Extract						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute/host_utilization.go:47:				Extract						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute/libvirt_domain_cpu_steal_pct.go:35:		Extract						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute/vm_host_residency.go:53:				Extract						85.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute/vm_life_span.go:52:				extractHistogramBuckets				89.5%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute/vm_life_span.go:97:				Extract						88.9%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute/vrops_hostsystem_contention_long_term.go:39:	Extract						82.1%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute/vrops_hostsystem_contention_short_term.go:39:	Extract						82.1%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute/vrops_hostsystem_resolver.go:33:			Extract						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute/vrops_project_noisiness.go:33:			Extract						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/storage/storage_pool_cpu_usage.go:35:			Extract						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/trigger.go:42:							Reconcile					77.8%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/trigger.go:95:							findDependentKnowledge				96.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/trigger.go:142:							triggerKnowledgeReconciliation			100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/trigger.go:175:							enqueueKnowledgeReconciliation			81.8%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/trigger.go:201:							getResourceType					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/trigger.go:213:							mapDatasourceToKnowledge			100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/trigger.go:234:							mapKnowledgeToKnowledge				100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/trigger.go:255:							SetupWithManager				0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/controller.go:53:							Reconcile					42.3%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/controller.go:107:							InitAllKPIs					83.3%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/controller.go:147:							getJointDB					27.8%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/controller.go:185:							handleKPIChange					52.5%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/controller.go:310:							handleDatasourceChange				0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/controller.go:335:							handleDatasourceCreated				0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/controller.go:345:							handleDatasourceUpdated				0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/controller.go:363:							handleDatasourceDeleted				0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/controller.go:375:							handleKnowledgeChange				0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/controller.go:400:							handleKnowledgeCreated				0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/controller.go:410:							handleKnowledgeUpdated				0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/controller.go:428:							handleKnowledgeDeleted				0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/controller.go:438:							SetupWithManager				0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/logger.go:21:								Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/logger.go:26:								Collect						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/logger.go:32:								Init						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/logger.go:37:								GetName						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/base.go:24:							Init						80.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/flavor_running_vms.go:32:				GetName						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/flavor_running_vms.go:36:				Init						75.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/flavor_running_vms.go:54:				Describe					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/flavor_running_vms.go:58:				Collect						71.4%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/host_contention.go:28:					GetName						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/host_contention.go:32:					Init						80.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/host_contention.go:49:					Describe					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/host_contention.go:54:					Collect						82.6%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/host_running_vms.go:42:				GetName						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/host_running_vms.go:46:				Init						75.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/host_running_vms.go:69:				Describe					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/host_running_vms.go:73:				Collect						66.7%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/project_noisiness.go:27:				GetName						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/project_noisiness.go:31:				Init						75.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/project_noisiness.go:43:				Describe					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/project_noisiness.go:47:				Collect						75.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_capacity_kvm.go:27:				getBuildingBlock				75.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_capacity_kvm.go:48:				GetName						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_capacity_kvm.go:52:				Init						80.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_capacity_kvm.go:94:				Describe					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_capacity_kvm.go:101:				aggregateReservationsByHost			92.1%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_capacity_kvm.go:170:				Collect						88.5%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_capacity_kvm.go:266:				hostLabelsFromHypervisor			100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_capacity_kvm.go:298:				emitTotal					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_capacity_kvm.go:316:				emitUsage					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_capacity_vmware.go:29:			GetName						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_capacity_vmware.go:33:			Init						80.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_capacity_vmware.go:75:			Describe					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_capacity_vmware.go:80:			Collect						67.6%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_capacity_vmware.go:153:			exportCapacityMetricVMware			92.3%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go:26:			GetName						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go:30:			Init						75.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go:47:			Describe					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go:51:			Collect						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/resource_commitments_vmware.go:55:			collectUnusedCommitments			83.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_commitments.go:30:					GetName						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_commitments.go:34:					Init						85.7%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_commitments.go:81:					Describe					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_commitments.go:89:					convertLimesMemory				100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_commitments.go:106:					Collect						89.5%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_faults.go:35:					GetName						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_faults.go:40:					Init						75.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_faults.go:53:					Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_faults.go:57:					Collect						91.3%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_life_span.go:29:					GetName						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_life_span.go:33:					Init						75.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_life_span.go:46:					Describe					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_life_span.go:50:					Collect						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_life_span.go:57:					collectVMBuckets				71.4%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_migration_statistics.go:28:				GetName						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_migration_statistics.go:32:				Init						75.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_migration_statistics.go:45:				Describe					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/compute/vm_migration_statistics.go:49:				Collect						69.2%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/datasource_state.go:47:				GetName						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/datasource_state.go:52:				Init						80.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/datasource_state.go:71:				Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/datasource_state.go:78:				Collect						90.5%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/decision_state.go:32:				GetName						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/decision_state.go:35:				Init						75.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/decision_state.go:49:				Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/decision_state.go:52:				Collect						94.1%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/knowledge_state.go:32:				GetName						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/knowledge_state.go:35:				Init						75.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/knowledge_state.go:49:				Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/knowledge_state.go:52:				Collect						85.7%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/kpi_state.go:32:					GetName						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/kpi_state.go:35:					Init						75.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/kpi_state.go:49:					Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/kpi_state.go:52:					Collect						92.9%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/pipeline_state.go:32:				GetName						100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/pipeline_state.go:35:				Init						75.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/pipeline_state.go:49:				Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/deployment/pipeline_state.go:52:				Collect						92.9%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/storage/storage_pool_cpu.go:28:				GetName						0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/storage/storage_pool_cpu.go:32:				Init						80.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/storage/storage_pool_cpu.go:49:				Describe					0.0%
github.com/cobaltcore-dev/cortex/internal/knowledge/kpis/plugins/storage/storage_pool_cpu.go:54:				Collect						82.6%
github.com/cobaltcore-dev/cortex/internal/knowledge/math/histogram.go:7:							Histogram					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/cinder/e2e_checks.go:21:							RunChecks					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/cinder/e2e_checks.go:26:							checkCinderSchedulerReturnsValidHosts		0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/cinder/external_scheduler_api.go:42:					NewAPI						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/cinder/external_scheduler_api.go:50:					Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/cinder/external_scheduler_api.go:57:					canRunScheduler					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/cinder/external_scheduler_api.go:80:					inferPipelineName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/cinder/external_scheduler_api.go:90:					CinderExternalScheduler				68.8%
github.com/cobaltcore-dev/cortex/internal/scheduling/cinder/filter_weigher_pipeline_controller.go:48:				PipelineType					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/cinder/filter_weigher_pipeline_controller.go:53:				Reconcile					83.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/cinder/filter_weigher_pipeline_controller.go:73:				ProcessNewDecisionFromAPI			92.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/cinder/filter_weigher_pipeline_controller.go:105:				process						80.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/cinder/filter_weigher_pipeline_controller.go:135:				InitPipeline					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/cinder/filter_weigher_pipeline_controller.go:148:				SetupWithManager				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/cinder/history_cleanup.go:30:						HistoryCleanup					76.4%
github.com/cobaltcore-dev/cortex/internal/scheduling/cinder/pipeline_webhook.go:15:						NewPipelineWebhook				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/external/nova.go:29:							NewNovaReader					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/external/nova.go:34:							GetAllServers					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/external/nova.go:44:							GetAllFlavors					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/external/nova.go:54:							GetAllHypervisors				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/external/nova.go:64:							GetAllMigrations				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/external/nova.go:74:							GetAllAggregates				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/external/nova.go:85:							GetServerByID					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/external/nova.go:99:							GetFlavorByName					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/external/postgres.go:33:							NewPostgresReader				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/external/postgres.go:48:							DB						0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/external/postgres.go:67:							Select						0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/activation.go:12:							NoEffect					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/activation.go:15:							Norm						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/activation.go:21:							Apply						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/api_monitor.go:22:							NewSchedulerMonitor				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/api_monitor.go:32:							Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/api_monitor.go:36:							Collect						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/api_monitor.go:50:							Callback					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/api_monitor.go:56:							Respond						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/detector.go:53:							Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/detector.go:64:							Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/detector.go:75:							CheckKnowledges					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/detector_monitor.go:26:						NewDetectorPipelineMonitor			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/detector_monitor.go:46:						SubPipeline					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/detector_monitor.go:52:						Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/detector_monitor.go:58:						Collect						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/detector_monitor.go:76:						monitorDetector					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/detector_monitor.go:99:						Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/detector_monitor.go:107:						Validate					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/detector_monitor.go:112:						Run						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/detector_pipeline.go:33:						Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/detector_pipeline.go:63:						Run						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/detector_pipeline.go:98:						Combine						97.2%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/detector_step_opts.go:15:						Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter.go:31:								Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_monitor.go:23:							monitorFilter					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_monitor.go:36:							Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_monitor.go:41:							Validate					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_monitor.go:46:							Run						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_validation.go:22:						Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_validation.go:28:						Validate					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_validation.go:33:						validateFilter					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_validation.go:38:						Run						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline.go:45:						InitNewFilterWeigherPipeline			86.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline.go:138:					runFilters					75.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline.go:170:					runWeighers					81.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline.go:210:					normalizeInputWeights				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline.go:219:					applyWeights					80.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline.go:255:					sortHostsByWeights				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline.go:265:					Run						96.7%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline_monitor.go:36:					NewPipelineMonitor				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline_monitor.go:90:					SubPipeline					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline_monitor.go:97:					observePipelineResult				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline_monitor.go:118:				Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline_monitor.go:130:				Collect						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline_step.go:48:					Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline_step.go:63:					Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline_step.go:75:					IncludeAllHostsFromRequest			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline_step.go:85:					PrepareStats					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline_step_monitor.go:42:				monitorStep					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline_step_monitor.go:65:				RunWrapped					48.6%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline_step_monitor.go:215:				impact						94.4%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/filter_weigher_pipeline_step_opts.go:15:				Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/history_client.go:32:							joinHostsCapped					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/history_client.go:39:							getName						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/history_client.go:46:							generateExplanation				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/history_client.go:132:							CreateOrUpdateHistory				70.6%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/history_client.go:281:							Delete						80.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/pipeline_controller.go:38:						InitAllPipelines				93.8%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/pipeline_controller.go:63:						handlePipelineChange				77.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/pipeline_controller.go:176:						HandlePipelineCreated				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/pipeline_controller.go:190:						HandlePipelineUpdated				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/pipeline_controller.go:203:						HandlePipelineDeleted				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/pipeline_controller.go:215:						handleKnowledgeChange				71.4%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/pipeline_controller.go:248:						HandleKnowledgeCreated				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/pipeline_controller.go:261:						HandleKnowledgeUpdated				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/pipeline_controller.go:283:						HandleKnowledgeDeleted				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/pipeline_webhook.go:38:						ValidateCreate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/pipeline_webhook.go:47:						ValidateUpdate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/pipeline_webhook.go:56:						ValidateDelete					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/pipeline_webhook.go:65:						validatePipeline				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/pipeline_webhook.go:149:						SetupWebhookWithManager				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/scaling.go:7:								clamp						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/scaling.go:22:								MinMaxScale					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/weigher.go:35:								Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/weigher.go:40:								Validate					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/weigher.go:45:								CheckKnowledges					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/weigher_monitor.go:23:							monitorWeigher					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/weigher_monitor.go:36:							Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/weigher_monitor.go:41:							Validate					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/weigher_monitor.go:46:							Run						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/weigher_validation.go:22:						Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/weigher_validation.go:28:						Validate					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/weigher_validation.go:33:						validateWeigher					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/lib/weigher_validation.go:38:						Run						81.8%
github.com/cobaltcore-dev/cortex/internal/scheduling/machines/filter_weigher_pipeline_controller.go:52:				PipelineType					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/machines/filter_weigher_pipeline_controller.go:56:				Reconcile					83.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/machines/filter_weigher_pipeline_controller.go:76:				ProcessNewMachine				92.9%
github.com/cobaltcore-dev/cortex/internal/scheduling/machines/filter_weigher_pipeline_controller.go:126:			process						70.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/machines/filter_weigher_pipeline_controller.go:177:			InitPipeline					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/machines/filter_weigher_pipeline_controller.go:190:			handleMachine					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/machines/filter_weigher_pipeline_controller.go:222:			SetupWithManager				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/machines/pipeline_webhook.go:15:						NewPipelineWebhook				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/machines/plugins/filters/filter_noop.go:21:				Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/machines/plugins/filters/filter_noop.go:25:				Validate					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/machines/plugins/filters/filter_noop.go:34:				Run						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/machines/plugins/filters/filter_noop.go:44:				init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/e2e_checks.go:34:							RunChecks					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/e2e_checks.go:39:							checkManilaSchedulerReturnsValidHosts		0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/external_scheduler_api.go:42:					NewAPI						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/external_scheduler_api.go:50:					Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/external_scheduler_api.go:57:					canRunScheduler					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/external_scheduler_api.go:80:					inferPipelineName				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/external_scheduler_api.go:90:					ManilaExternalScheduler				68.8%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/filter_weigher_pipeline_controller.go:48:				PipelineType					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/filter_weigher_pipeline_controller.go:53:				Reconcile					83.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/filter_weigher_pipeline_controller.go:73:				ProcessNewDecisionFromAPI			92.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/filter_weigher_pipeline_controller.go:105:				process						80.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/filter_weigher_pipeline_controller.go:135:				InitPipeline					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/filter_weigher_pipeline_controller.go:148:				SetupWithManager				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/history_cleanup.go:32:						HistoryCleanup					77.6%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/pipeline_webhook.go:15:						NewPipelineWebhook				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/plugins/weighers/netapp_cpu_usage_balancing.go:35:			Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/plugins/weighers/netapp_cpu_usage_balancing.go:53:			Init						60.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/plugins/weighers/netapp_cpu_usage_balancing.go:64:			Run						88.9%
github.com/cobaltcore-dev/cortex/internal/scheduling/manila/plugins/weighers/netapp_cpu_usage_balancing.go:110:			init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/candidate_gatherer.go:29:						MutateWithAllCandidates				94.1%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/deschedulings_cleanup.go:24:						Start						82.4%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/deschedulings_cleanup.go:63:						Reconcile					70.6%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/deschedulings_cleanup.go:95:						SetupWithManager				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/deschedulings_executor.go:45:						Reconcile					68.2%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/deschedulings_executor.go:256:					SetupWithManager				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/detector_cycle_breaker.go:17:						Filter						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/detector_pipeline_controller.go:42:					PipelineType					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/detector_pipeline_controller.go:47:					InitPipeline					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/detector_pipeline_controller.go:65:					CreateDeschedulingsPeriodically			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/detector_pipeline_controller.go:126:					Reconcile					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/detector_pipeline_controller.go:131:					SetupWithManager				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/e2e_checks.go:61:							getHypervisors					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/e2e_checks.go:104:							prepare						0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/e2e_checks.go:257:							randomRequest					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/e2e_checks.go:330:							checkNovaSchedulerReturnsValidHosts		0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/e2e_checks.go:360:							RunChecks					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/external_scheduler_api.go:54:						NewAPI						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/external_scheduler_api.go:63:						Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/external_scheduler_api.go:70:						canRunScheduler					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/external_scheduler_api.go:93:						inferPipelineName				93.8%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/external_scheduler_api.go:127:					shuffleTopHosts					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/external_scheduler_api.go:153:					limitHostsToRequest				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/external_scheduler_api.go:175:					NovaExternalScheduler				68.5%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/filter_weigher_pipeline_controller.go:51:				PipelineType					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/filter_weigher_pipeline_controller.go:56:				Reconcile					91.7%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/filter_weigher_pipeline_controller.go:76:				ProcessNewDecisionFromAPI			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/filter_weigher_pipeline_controller.go:106:				upsertHistory					81.8%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/filter_weigher_pipeline_controller.go:127:				process						82.9%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/filter_weigher_pipeline_controller.go:186:				InitPipeline					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/filter_weigher_pipeline_controller.go:199:				SetupWithManager				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/history_cleanup.go:30:						HistoryCleanup					79.4%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/hypervisor_overcommit_controller.go:48:				Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/hypervisor_overcommit_controller.go:82:				Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/hypervisor_overcommit_controller.go:111:				Reconcile					93.9%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/hypervisor_overcommit_controller.go:178:				handleRemoteHypervisor				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/hypervisor_overcommit_controller.go:207:				predicateRemoteHypervisor			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/hypervisor_overcommit_controller.go:220:				SetupWithManager				23.1%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/nova_client.go:80:							NewNovaClient					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/nova_client.go:84:							Init						0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/nova_client.go:132:							Get						75.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/nova_client.go:141:							LiveMigrate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/nova_client.go:152:							GetServerMigrations				70.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/nova_client.go:195:							ListProjectServers				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/pipeline_webhook.go:16:						NewPipelineWebhook				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/detectors/avoid_high_steal_pct.go:26:				Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/detectors/avoid_high_steal_pct.go:39:				Init						80.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/detectors/avoid_high_steal_pct.go:49:				Run						86.7%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/detectors/avoid_high_steal_pct.go:85:				init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_aggregate_metadata.go:22:			Run						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_aggregate_metadata.go:68:			init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_allowed_projects.go:22:			Run						87.5%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_allowed_projects.go:54:			init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_capabilities.go:25:				hvToNovaCapabilities				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_capabilities.go:48:				Run						83.7%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_capabilities.go:130:				init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_correct_az.go:21:				Run						91.7%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_correct_az.go:65:				init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_exclude_hosts.go:28:				Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_exclude_hosts.go:30:				Run						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_exclude_hosts.go:43:				init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_external_customer.go:23:			Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_external_customer.go:36:			Run						94.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_external_customer.go:86:			init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_has_accelerators.go:21:			Run						91.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_has_accelerators.go:55:			init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_has_enough_capacity.go:31:			Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_has_enough_capacity.go:51:			Run						77.9%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_has_enough_capacity.go:335:			init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_has_requested_traits.go:24:			Run						95.5%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_has_requested_traits.go:97:			init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_host_instructions.go:21:			Run						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_host_instructions.go:44:			init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_instance_group_affinity.go:19:			Run						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_instance_group_affinity.go:54:			init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_instance_group_anti_affinity.go:22:		Run						88.4%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_instance_group_anti_affinity.go:99:		init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_live_migratable.go:22:				checkHasSufficientFeatures			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_live_migratable.go:51:				Run						94.4%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_live_migratable.go:112:			init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_requested_destination.go:26:			processRequestedAggregates			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_requested_destination.go:79:			processRequestedHost				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_requested_destination.go:103:			Run						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_requested_destination.go:128:			init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_status_conditions.go:23:			Run						93.1%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/filters/filter_status_conditions.go:88:			init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/vm_detection.go:17:						GetResource					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/vm_detection.go:18:						GetReason					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/vm_detection.go:19:						GetHost						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/vm_detection.go:20:						WithReason					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/kvm_binpack.go:29:					Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/kvm_binpack.go:72:					Run						90.9%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/kvm_binpack.go:141:					calcVMResources					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/kvm_binpack.go:154:					init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/kvm_failover_evacuation.go:26:			Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/kvm_failover_evacuation.go:30:			GetFailoverHostWeight				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/kvm_failover_evacuation.go:37:			GetDefaultHostWeight				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/kvm_failover_evacuation.go:54:			Run						93.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/kvm_failover_evacuation.go:116:			init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/kvm_instance_group_soft_affinity.go:29:		Run						94.6%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/kvm_instance_group_soft_affinity.go:85:		init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/kvm_prefer_smaller_hosts.go:29:			Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/kvm_prefer_smaller_hosts.go:60:			Run						92.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/kvm_prefer_smaller_hosts.go:157:			init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_anti_affinity_noisy_projects.go:29:		Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_anti_affinity_noisy_projects.go:44:		Init						80.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_anti_affinity_noisy_projects.go:55:		Run						81.2%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_anti_affinity_noisy_projects.go:93:		init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_avoid_long_term_contended_hosts.go:35:	Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_avoid_long_term_contended_hosts.go:53:	Init						80.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_avoid_long_term_contended_hosts.go:64:	Run						88.9%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_avoid_long_term_contended_hosts.go:111:	init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_avoid_short_term_contended_hosts.go:35:	Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_avoid_short_term_contended_hosts.go:53:	Init						80.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_avoid_short_term_contended_hosts.go:64:	Run						88.9%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_avoid_short_term_contended_hosts.go:111:	init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_binpack.go:32:				Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_binpack.go:75:				Init						0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_binpack.go:88:				Run						80.9%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_binpack.go:165:				calcHostCapacity				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_binpack.go:177:				calcHostAllocation				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_binpack.go:187:				calcVMResources					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/nova/plugins/weighers/vmware_binpack.go:200:				init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/filter_weigher_pipeline_controller.go:51:				PipelineType					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/filter_weigher_pipeline_controller.go:55:				Reconcile					83.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/filter_weigher_pipeline_controller.go:75:				ProcessNewPod					92.9%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/filter_weigher_pipeline_controller.go:126:				process						71.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/filter_weigher_pipeline_controller.go:189:				InitPipeline					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/filter_weigher_pipeline_controller.go:202:				handlePod					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/filter_weigher_pipeline_controller.go:234:				SetupWithManager				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/helpers/resources.go:12:						GetPodResourceRequests				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/helpers/resources.go:31:						AddResourcesInto				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/helpers/resources.go:41:						MaxResourcesInto				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/pipeline_webhook.go:15:						NewPipelineWebhook				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_affinity.go:22:				Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_affinity.go:26:				Validate					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_affinity.go:30:				Run						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_affinity.go:43:				matchesNodeAffinity				88.9%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_affinity.go:62:				matchesNodeSelectorTerm				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_affinity.go:71:				matchesNodeSelectorRequirement			90.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_affinity.go:124:				init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_available.go:21:				Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_available.go:25:				Validate					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_available.go:29:				Run						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_available.go:42:				isNodeHealthy					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_available.go:70:				isNodeSchedulable				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_available.go:74:				init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_capacity.go:22:				Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_capacity.go:26:				Validate					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_capacity.go:30:				Run						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_capacity.go:45:				hasCapacityForPod				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_node_capacity.go:60:				init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_noop.go:21:					Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_noop.go:25:					Validate					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_noop.go:34:					Run						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_noop.go:44:					init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_taint.go:21:					Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_taint.go:25:					Validate					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_taint.go:29:					Run						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_taint.go:42:					canScheduleOnNode				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_taint.go:53:					hasToleration					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/filters/filter_taint.go:67:					init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/weighers/binpack.go:21:					Validate					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/weighers/binpack.go:34:					Run						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/weighers/binpack.go:48:					calculateBinpackScore				85.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/pods/plugins/weighers/binpack.go:83:					init						50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api.go:52:					NewAPI						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api.go:58:					NewAPIWithConfig				50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api.go:77:					Init						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api.go:94:					handleProjectEndpoint				60.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_change_commitments.go:28:			sortedKeys					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_change_commitments.go:45:			HandleChangeCommitments				78.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_change_commitments.go:133:			processCommitmentChanges			80.6%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_change_commitments.go:325:			watchReservationsUntilReady			74.4%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_change_commitments_metrics.go:14:		recordMetrics					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_change_commitments_metrics.go:36:		countCommitments				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_change_commitments_monitor.go:21:		NewChangeCommitmentsAPIMonitor			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_change_commitments_monitor.go:58:		Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_change_commitments_monitor.go:66:		Collect						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_info.go:28:					HandleInfo					96.7%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_info.go:80:					recordInfoMetrics				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_info.go:100:					buildServiceInfo				90.9%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_info_monitor.go:19:				NewInfoAPIMonitor				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_info_monitor.go:44:				Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_info_monitor.go:50:				Collect						0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_quota.go:19:					HandleQuota					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_report_capacity.go:21:			HandleReportCapacity				72.2%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_report_capacity.go:83:			recordCapacityMetrics				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_report_capacity_monitor.go:19:		NewReportCapacityAPIMonitor			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_report_capacity_monitor.go:44:		Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_report_capacity_monitor.go:50:		Collect						0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_report_usage.go:24:				HandleReportUsage				64.4%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_report_usage.go:94:				recordUsageMetrics				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_report_usage.go:104:				extractProjectIDFromPath			77.8%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_report_usage_monitor.go:19:			NewReportUsageAPIMonitor			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_report_usage_monitor.go:44:			Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/api_report_usage_monitor.go:50:			Collect						0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/capacity.go:22:					NewCapacityCalculator				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/capacity.go:30:					CalculateCapacity				94.1%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/capacity.go:85:					copyAZCapacity					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/capacity.go:99:					calculateAZCapacity				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/client.go:43:					NewCommitmentsClient				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/client.go:47:					Init						0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/client.go:106:					ListProjects					90.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/client.go:125:					ListCommitmentsByID				79.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/client.go:169:					listCommitments					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/config.go:70:					ApplyDefaults					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/config.go:100:					DefaultConfig					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/context.go:20:					WithNewGlobalRequestID				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/context.go:26:					WithGlobalRequestID				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/context.go:33:					LoggerFromContext				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/controller.go:56:					Reconcile					54.9%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/controller.go:344:				reconcileAllocations				59.5%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/controller.go:553:				getPipelineForFlavorGroup			66.7%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/controller.go:569:				Init						35.7%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/controller.go:635:				SetupWithManager				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/e2e_checks.go:32:					CheckCommitmentsInfoEndpoint			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/e2e_checks.go:73:					RunCommitmentsE2EChecks				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/flavor_group_eligibility.go:15:			FlavorGroupAcceptsCommitments			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/flavor_group_eligibility.go:21:			FlavorGroupCommitmentRejectionReason		0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/messages.go:135:					UnmarshalJSON					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/messages.go:158:					MarshalJSON					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/reservation_manager.go:39:			NewReservationManager				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/reservation_manager.go:60:			ApplyCommitmentState				90.5%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/reservation_manager.go:217:			syncReservationMetadata				93.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/reservation_manager.go:261:			newReservation					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/state.go:33:					ResourceNameRAM					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/state.go:39:					ResourceNameCores				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/state.go:45:					ResourceNameInstances				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/state.go:52:					getFlavorGroupNameFromResource			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/state.go:99:					FromCommitment					72.2%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/state.go:147:					FromChangeCommitmentTargetState			90.5%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/state.go:221:					NewCommitmentStateWithUsage			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/state.go:231:					AssignVM					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/state.go:241:					HasRemainingCapacity				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/state.go:246:					FromReservations				95.5%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/syncer.go:33:					DefaultSyncerConfig				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/syncer.go:40:					ApplyDefaults					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/syncer.go:59:					NewSyncer					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/syncer.go:67:					Init						75.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/syncer.go:84:					getCommitmentStates				65.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/syncer.go:198:					SyncReservations				66.1%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/syncer_monitor.go:37:				NewSyncerMonitor				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/syncer_monitor.go:88:				RecordSyncRun					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/syncer_monitor.go:93:				RecordSyncError					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/syncer_monitor.go:98:				RecordCommitmentSeen				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/syncer_monitor.go:103:				RecordCommitmentProcessed			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/syncer_monitor.go:108:				RecordCommitmentSkipped				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/syncer_monitor.go:113:				RecordReservationsCreated			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/syncer_monitor.go:118:				RecordReservationsDeleted			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/syncer_monitor.go:123:				RecordReservationsRepaired			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/syncer_monitor.go:128:				Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/syncer_monitor.go:140:				Collect						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/usage.go:49:					NewUsageCalculator				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/usage.go:57:					CalculateUsage					83.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/usage.go:107:					azFlavorGroupKey				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/usage.go:113:					buildCommitmentCapacityMap			83.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/usage.go:180:					getProjectVMs					87.9%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/usage.go:271:					sortVMsForUsageCalculation			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/usage.go:290:					sortCommitmentsForAssignment			92.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/usage.go:318:					assignVMsToCommitments				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/usage.go:363:					buildUsageResponse				96.4%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/usage.go:496:					buildVMAttributes				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/usage.go:523:					countCommitmentStates				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/usage_db.go:20:					NewDBUsageClient				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/usage_db.go:40:					ListProjectVMs					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/utils.go:13:					GetMaxSlotIndex					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/utils.go:30:					GetNextSlotIndex				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/commitments/utils.go:36:					extractCommitmentUUID				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/context.go:20:						WithGlobalRequestID				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/context.go:26:						WithRequestID					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/context.go:32:						GlobalRequestIDFromContext			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/context.go:43:						RequestIDFromContext				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/config.go:83:					intPtr						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/config.go:88:					ApplyDefaults					87.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/config.go:126:					DefaultConfig					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/context.go:15:					WithNewGlobalRequestID				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/context.go:22:					LoggerFromContext				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/controller.go:48:					NewFailoverReservationController		100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/controller.go:69:					Reconcile					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/controller.go:104:					reconcileValidateAndAcknowledge			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/controller.go:180:					validateReservation				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/controller.go:245:					ReconcilePeriodic				76.4%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/controller.go:358:					reconcileRemoveInvalidVMFromReservations	96.9%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/controller.go:417:					reconcileRemoveNoneligibleVMFromReservations	93.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/controller.go:477:					reconcileRemoveEmptyReservations		70.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/controller.go:501:					selectVMsToProcess				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/controller.go:545:					sortVMsByMemory					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/controller.go:559:					reconcileCreateAndAssignReservations		78.6%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/controller.go:674:					calculateVMsMissingFailover			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/controller.go:725:					getRequiredFailoverCount			81.8%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/controller.go:747:					patchReservationStatus				50.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/controller.go:781:					SetupWithManager				0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/controller.go:803:					Start						0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/helpers.go:18:					getFailoverAllocations				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/helpers.go:26:					filterFailoverReservations			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/helpers.go:37:					countReservationsForVM				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/helpers.go:50:					addVMToReservation				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/helpers.go:76:					ValidateFailoverReservationResources		0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/helpers.go:93:					newFailoverReservation				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/reservation_eligibility.go:39:			IsVMEligibleForReservation			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/reservation_eligibility.go:64:			CheckVMsStillEligible				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/reservation_eligibility.go:105:			FindEligibleReservations			93.8%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/reservation_eligibility.go:139:			reservationKey					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/reservation_eligibility.go:144:			newBaseDependencyGraph				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/reservation_eligibility.go:174:			newDependencyGraph				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/reservation_eligibility.go:190:			ensureVMInMaps					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/reservation_eligibility.go:199:			ensureResInMaps					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/reservation_eligibility.go:206:			addVMToReservation				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/reservation_eligibility.go:216:			removeVMFromReservation				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/reservation_eligibility.go:223:			checkAllVMConstraints				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/reservation_eligibility.go:282:			isVMEligibleForReservation			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/reservation_eligibility.go:292:			doesVMFitInReservation				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/reservation_scheduling.go:33:			queryHypervisorsFromScheduler			86.2%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/reservation_scheduling.go:121:			tryReuseExistingReservation			83.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/reservation_scheduling.go:179:			validateVMViaSchedulerEvacuation		0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/reservation_scheduling.go:260:			scheduleAndBuildNewFailoverReservation		75.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/vm_source.go:58:					NewDBVMSource					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/vm_source.go:63:					ListVMs						78.6%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/vm_source.go:146:					parseExtraSpecs					28.6%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/vm_source.go:161:					truncateString					0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/vm_source.go:170:					GetVM						86.7%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/vm_source.go:220:					ListVMsOnHypervisors				27.3%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/vm_source.go:264:					buildVMsFromHypervisors				66.7%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/vm_source.go:333:					filterVMsOnKnownHypervisors			100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/failover/vm_source.go:402:					warnUnknownVMsOnHypervisors			0.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/flavor_groups.go:25:						Get						85.7%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/flavor_groups.go:46:						GetAllFlavorGroups				85.7%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/monitor.go:32:						NewMonitor					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/monitor.go:47:						Describe					100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/monitor.go:53:						Collect						100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/scheduler_client.go:25:					loggerFromContext				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/scheduler_client.go:44:					NewSchedulerClient				100.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/scheduler_client.go:92:					ScheduleReservation				73.0%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/scheduler_client.go:204:					getSchedulerHints				66.7%
github.com/cobaltcore-dev/cortex/internal/scheduling/reservations/scheduler_client.go:212:					isEvacuation					66.7%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_allocation_candidates.go:37:					HandleListAllocationCandidates			100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_allocations.go:27:						HandleManageAllocations				100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_allocations.go:45:						HandleListAllocations				100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_allocations.go:68:						HandleUpdateAllocations				100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_allocations.go:85:						HandleDeleteAllocations				100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_reshaper.go:27:							HandlePostReshaper				100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_classes.go:19:						HandleListResourceClasses			100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_classes.go:33:						HandleCreateResourceClass			100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_classes.go:45:						HandleShowResourceClass				85.7%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_classes.go:64:						HandleUpdateResourceClass			85.7%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_classes.go:82:						HandleDeleteResourceClass			85.7%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_provider_aggregates.go:25:				HandleListResourceProviderAggregates		100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_provider_aggregates.go:46:				HandleUpdateResourceProviderAggregates		100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_provider_allocations.go:20:				HandleListResourceProviderAllocations		100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_provider_inventories.go:21:				HandleListResourceProviderInventories		100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_provider_inventories.go:42:				HandleUpdateResourceProviderInventories		100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_provider_inventories.go:62:				HandleDeleteResourceProviderInventories		100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_provider_inventories.go:80:				HandleShowResourceProviderInventory		90.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_provider_inventories.go:105:				HandleUpdateResourceProviderInventory		90.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_provider_inventories.go:128:				HandleDeleteResourceProviderInventory		90.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_provider_traits.go:19:					HandleListResourceProviderTraits		100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_provider_traits.go:40:					HandleUpdateResourceProviderTraits		100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_provider_traits.go:60:					HandleDeleteResourceProviderTraits		100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_provider_usages.go:20:					HandleListResourceProviderUsages		100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_providers.go:25:					HandleListResourceProviders			100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_providers.go:44:					HandleCreateResourceProvider			100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_providers.go:59:					HandleShowResourceProvider			100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_providers.go:77:					HandleUpdateResourceProvider			100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_resource_providers.go:94:					HandleDeleteResourceProvider			100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_root.go:20:							HandleGetRoot					100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_traits.go:23:							HandleListTraits				100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_traits.go:34:							HandleShowTrait					85.7%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_traits.go:51:							HandleUpdateTrait				85.7%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_traits.go:68:							HandleDeleteTrait				85.7%
github.com/cobaltcore-dev/cortex/internal/shim/placement/handle_usages.go:24:							HandleListUsages				100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/shim.go:45:								validate					0.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/shim.go:66:								Start						0.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/shim.go:120:								Reconcile					0.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/shim.go:126:								handleRemoteHypervisor				0.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/shim.go:134:								predicateRemoteHypervisor			0.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/shim.go:150:								SetupWithManager				0.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/shim.go:181:								forward						61.8%
github.com/cobaltcore-dev/cortex/internal/shim/placement/shim.go:241:								RegisterRoutes					100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/validation.go:16:							requiredPathParam				100.0%
github.com/cobaltcore-dev/cortex/internal/shim/placement/validation.go:28:							requiredUUIDPathParam				85.7%
total:																(statements)					69.2%

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.

1 participant