Repository navigation
Release cortex 0.7.0 - #1385
Merged
Merged
Release cortex 0.7.0#1385
Conversation
Log the specific reason (with instance UUID) whenever VM creation is skipped, and log successful create/update events in the vm handler so resource processing can be traced. Signed-off-by: Philipp Matthes <p.matthes@sap.com>
Signed-off-by: Philipp Matthes <p.matthes@sap.com>
…ons (#1372) Fixes `CortexNovaCommittedResourceTimeoutsTooHigh` alerts when a batch carries a superseded/expired commitment. Also adds a hang guard for cores commitments --------- Signed-off-by: Marcel <156897072+mblos@users.noreply.github.com>
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Adoption](https://docs.renovatebot.com/merge-confidence/) | [Passing](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | Type | Update | |---|---|---|---|---|---|---|---| | [github.com/cobaltcore-dev/vm-operator](https://redirect.github.com/cobaltcore-dev/vm-operator) | `v0.1.2-0.20261014085525-20c781d5a4eb` → `v0.2.4` |  |  |  |  | require | minor | | [kube-prometheus-stack](https://redirect.github.com/prometheus-operator/kube-prometheus) ([source](https://redirect.github.com/prometheus-community/helm-charts)) | `92.7.0` → `92.9.0` |  |  |  |  | | minor | | [sigs.k8s.io/controller-tools](https://redirect.github.com/kubernetes-sigs/controller-tools) | `v0.22.0` → `v0.23.0` |  |  |  |  | | minor | --- ### Release Notes <details> <summary>cobaltcore-dev/vm-operator (github.com/cobaltcore-dev/vm-operator)</summary> ### [`v0.2.4`](https://redirect.github.com/cobaltcore-dev/vm-operator/releases/tag/v0.2.4) [Compare Source](https://redirect.github.com/cobaltcore-dev/vm-operator/compare/v0.2.3...v0.2.4) #### What's Changed - Bugfixes after initial deployment by [@​PhilippMatthes](https://redirect.github.com/PhilippMatthes) in [#​8](https://redirect.github.com/cobaltcore-dev/vm-operator/pull/8) **Full Changelog**: <cobaltcore-dev/vm-operator@v0.2.3...v0.2.4> ### [`v0.2.3`](https://redirect.github.com/cobaltcore-dev/vm-operator/releases/tag/v0.2.3) [Compare Source](https://redirect.github.com/cobaltcore-dev/vm-operator/compare/v0.2.2...v0.2.3) **Full Changelog**: <cobaltcore-dev/vm-operator@v0.2.2...v0.2.3> ### [`v0.2.2`](https://redirect.github.com/cobaltcore-dev/vm-operator/releases/tag/v0.2.2) [Compare Source](https://redirect.github.com/cobaltcore-dev/vm-operator/compare/v0.2.1...v0.2.2) **Full Changelog**: <cobaltcore-dev/vm-operator@v0.2.1...v0.2.2> ### [`v0.2.1`](https://redirect.github.com/cobaltcore-dev/vm-operator/releases/tag/v0.2.1) [Compare Source](https://redirect.github.com/cobaltcore-dev/vm-operator/compare/v0.2.0...v0.2.1) **Full Changelog**: <cobaltcore-dev/vm-operator@v0.2.0...v0.2.1> </details> <details> <summary>prometheus-community/helm-charts (kube-prometheus-stack)</summary> ### [`v92.9.0`](https://redirect.github.com/prometheus-community/helm-charts/releases/tag/kube-prometheus-stack-92.9.0) [Compare Source](https://redirect.github.com/prometheus-community/helm-charts/compare/kube-prometheus-stack-92.8.0...kube-prometheus-stack-92.9.0) kube-prometheus-stack collects Kubernetes manifests, Grafana dashboards, and Prometheus rules combined with documentation and scripts to provide easy to operate end-to-end Kubernetes cluster monitoring with Prometheus using the Prometheus Operator. ##### What's Changed - \[kube-prometheus-stack] Update grafana Docker tag to v14 by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7380](https://redirect.github.com/prometheus-community/helm-charts/pull/7380) **Full Changelog**: <prometheus-community/helm-charts@kube-prometheus-stack-92.8.0...kube-prometheus-stack-92.9.0> ### [`v92.8.0`](https://redirect.github.com/prometheus-community/helm-charts/releases/tag/kube-prometheus-stack-92.8.0) [Compare Source](https://redirect.github.com/prometheus-community/helm-charts/compare/kube-prometheus-stack-92.7.0...kube-prometheus-stack-92.8.0) kube-prometheus-stack collects Kubernetes manifests, Grafana dashboards, and Prometheus rules combined with documentation and scripts to provide easy to operate end-to-end Kubernetes cluster monitoring with Prometheus using the Prometheus Operator. ##### What's Changed - \[kube-prometheus-stack] Update grafana Docker tag to v13.7.0 by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7379](https://redirect.github.com/prometheus-community/helm-charts/pull/7379) **Full Changelog**: <prometheus-community/helm-charts@prometheus-redis-exporter-6.34.0...kube-prometheus-stack-92.8.0> </details> <details> <summary>kubernetes-sigs/controller-tools (sigs.k8s.io/controller-tools)</summary> ### [`v0.23.0`](https://redirect.github.com/kubernetes-sigs/controller-tools/releases/tag/v0.23.0) [Compare Source](https://redirect.github.com/kubernetes-sigs/controller-tools/compare/v0.22.0...v0.23.0) This is an additional minor release independent of the Kubernetes release cadence to deliver [#​1474](https://redirect.github.com/kubernetes-sigs/controller-tools/pull/1474) because this bug fix is a breaking change so it was not possible to backport it. #### What's Changed - ✨ Add option to omit controller-gen version in generated output by [@​pedjak](https://redirect.github.com/pedjak) in [#​1437](https://redirect.github.com/kubernetes-sigs/controller-tools/pull/1437) - 🐛 Fix +listType marker not working on type alias fields by [@​sivchari](https://redirect.github.com/sivchari) in [#​1359](https://redirect.github.com/kubernetes-sigs/controller-tools/pull/1359) - 🐛 Inject min boundaries for +k8s:required on strings, maps, and slices by [@​lalitc375](https://redirect.github.com/lalitc375) in [#​1458](https://redirect.github.com/kubernetes-sigs/controller-tools/pull/1458) - 🐛 crd: support Kubernetes declarative validation bounds by [@​kannon92](https://redirect.github.com/kannon92) in [#​1474](https://redirect.github.com/kubernetes-sigs/controller-tools/pull/1474) #### Dependency bumps - 🌱 Bump github.com/onsi/gomega from 1.43.1 to 1.44.0 in the all-go-mod-patch-and-minor group by [@​dependabot](https://redirect.github.com/dependabot)\[bot] in [#​1480](https://redirect.github.com/kubernetes-sigs/controller-tools/pull/1480) - 🌱 Bump golang.org/x/tools from 0.50.0 to 0.51.0 in the all-go-mod-patch-and-minor group by [@​dependabot](https://redirect.github.com/dependabot)\[bot] in [#​1487](https://redirect.github.com/kubernetes-sigs/controller-tools/pull/1487) - 🌱 Bump golangci-lint to v2.14.0 and enable promlinter, reassign linters by [@​dongjiang1989](https://redirect.github.com/dongjiang1989) in [#​1488](https://redirect.github.com/kubernetes-sigs/controller-tools/pull/1488) - 🌱 Bump sigs.k8s.io/controller-runtime from v0.24.0 to v0.25.0 by [@​dongjiang1989](https://redirect.github.com/dongjiang1989) in [#​1476](https://redirect.github.com/kubernetes-sigs/controller-tools/pull/1476) - 🌱 Bump softprops/action-gh-release from 3.0.2 to 3.0.3 in the all-github-actions group by [@​dependabot](https://redirect.github.com/dependabot)\[bot] in [#​1475](https://redirect.github.com/kubernetes-sigs/controller-tools/pull/1475) - 🌱 Bump the all-go-mod-patch-and-minor group across 1 directory with 3 updates by [@​dependabot](https://redirect.github.com/dependabot)\[bot] in [#​1478](https://redirect.github.com/kubernetes-sigs/controller-tools/pull/1478) **Full Changelog**: <kubernetes-sigs/controller-tools@v0.22.0...v0.23.0> </details> --- ### Configuration 📅 **Schedule**: (in timezone Europe/Berlin) - Branch creation - "after 6pm every weekday,every weekend,before 8am every weekday" - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/cobaltcore-dev/cortex). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xNjQuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjE2NC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: cortex-ai-agents[bot] <279748396+cortex-ai-agents[bot]@users.noreply.github.com> Co-authored-by: Markus Wieland <SoWieMarkus@users.noreply.github.com> Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Bump vm-operator to v0.2.8 and set the new CortexSpec Explanation and Intent fields when writing the scheduling result. The intent lookup is moved earlier so it can feed both the spec fields and the status condition. --------- Signed-off-by: Philipp Matthes <p.matthes@sap.com>
Fixes a bug that lead to the virtual machine resources never being generated. Signed-off-by: Philipp Matthes <p.matthes@sap.com>
Default the intent to api.CreateIntent instead of Unknown when it cannot be determined, and remove the redundant intent derivation in the pipeline controller that would otherwise override it with Unknown. --------- Signed-off-by: Philipp Matthes <p.matthes@sap.com>
h.Create writes the apiserver response (with an empty status subresource) back into the vm object, overwriting the Scheduled condition set earlier. The subsequent Status().Update then persisted an empty status. Snapshot the conditions before Create and restore them before the status update. Signed-off-by: Philipp Matthes <p.matthes@sap.com>
Explanation is now added to the vm crd. - adjusted the docs - removed history crd - removed history client - added plain explanation generation Signed-off-by: Markus Wieland <markus.wieland@sap.com>
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Adoption](https://docs.renovatebot.com/merge-confidence/) | [Passing](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | Type | Update | |---|---|---|---|---|---|---|---| | [github.com/cobaltcore-dev/vm-operator](https://redirect.github.com/cobaltcore-dev/vm-operator) | `v0.2.8` → `v0.2.9` |  |  |  |  | require | patch | | [github.com/golangci/golangci-lint/v2](https://redirect.github.com/golangci/golangci-lint) | `v2.14.0` → `v2.15.0` |  |  |  |  | | minor | | [kube-prometheus-stack](https://redirect.github.com/prometheus-operator/kube-prometheus) ([source](https://redirect.github.com/prometheus-community/helm-charts)) | `92.9.0` → `92.10.0` |  |  |  |  | | minor | --- ### Release Notes <details> <summary>cobaltcore-dev/vm-operator (github.com/cobaltcore-dev/vm-operator)</summary> ### [`v0.2.9`](https://redirect.github.com/cobaltcore-dev/vm-operator/releases/tag/v0.2.9) [Compare Source](https://redirect.github.com/cobaltcore-dev/vm-operator/compare/v0.2.8...v0.2.9) **Full Changelog**: <cobaltcore-dev/vm-operator@v0.2.8...v0.2.9> </details> <details> <summary>golangci/golangci-lint (github.com/golangci/golangci-lint/v2)</summary> ### [`v2.15.0`](https://redirect.github.com/golangci/golangci-lint/blob/HEAD/CHANGELOG.md#v2150) [Compare Source](https://redirect.github.com/golangci/golangci-lint/compare/v2.14.0...v2.15.0) *Released on 2026-10-16* 1. Linters new features or changes - `errcheck`: from 1.20.0 to 1.30.0 - `exhaustive`: from 0.13.0 to 0.15.0 (⚠️ changes) - `gocognit`: from 1.2.1 to 1.3.0 - `golines`: from 0.15.0 to 0.16.0 - `govet-modernize`: from 0.50.0 to 0.52.0 - `loggercheck`: from 0.12.0 to 0.13.0 - `predeclared`: from 0.2.2 to 0.3.0 - `wrapcheck`: from 2.12.0 to 2.13.0 2. Linters bug fixes - `bidichk`: from 0.3.3 to 0.3.4 - `canonicalheader`: from [`a25c71c`](https://redirect.github.com/golangci/golangci-lint/commit/a25c71c521f6) to [`e18e5c5`](https://redirect.github.com/golangci/golangci-lint/commit/e18e5c5a078f) - `gofumpt`: improve deprecation logs - `gosec`: improve concurrency default value - `iface`: from 1.5.1 to 1.5.3 - `paralleltest`: from 1.0.15 to 1.0.16 - `revive`: from 1.17.0 to 1.17.1 - `revive`: the rules `context-keys-type`, `errorf`, `modifies-value-receiver`, `range-val-address`, `string-of-int`, `time-equal`, `time-naming`, `unexported-return`, `unhandled-error`, `var-declaration` are working (less randomly). - `rowserrcheck`: from [`c5f79b8`](https://redirect.github.com/golangci/golangci-lint/commit/c5f79b8a11ba) to [`e0740d5`](https://redirect.github.com/golangci/golangci-lint/commit/e0740d52dee8) - `staticcheck`: from 0.8.1 to 0.8.2 3. Bug fixes - fix: compute custom version hash with module versions - fix: env vars loading (related to `revive`)⚠️ Changes of the `exhaustive` linter: - The replaced options still exists, and partially works, but they are deprecated. - The options `explicit-exhaustive-switch` and `explicit-exhaustive-map` have been replaced by `explicit-exhaustive`. - The `check` the value `map` has been replaced by `mapliteral`. - The option `ignore-enum-members` (string) has been replaced by `ignore-constants` (slice). - The option `ignore-enum-types` (string) has been replaced by `ignore-types` (slice). - New report messages. - The linter is a now a "slow" linter. </details> <details> <summary>prometheus-community/helm-charts (kube-prometheus-stack)</summary> ### [`v92.10.0`](https://redirect.github.com/prometheus-community/helm-charts/releases/tag/kube-prometheus-stack-92.10.0) kube-prometheus-stack collects Kubernetes manifests, Grafana dashboards, and Prometheus rules combined with documentation and scripts to provide easy to operate end-to-end Kubernetes cluster monitoring with Prometheus using the Prometheus Operator. #### What's Changed - \[kube-prometheus-stack] Update <https://github.com/kubernetes-monitoring/kubernetes-mixin> digest to [`f57ebcd`](https://redirect.github.com/prometheus-community/helm-charts/commit/f57ebcd) by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7382](https://redirect.github.com/prometheus-community/helm-charts/pull/7382) **Full Changelog**: <prometheus-community/helm-charts@kube-prometheus-stack-92.9.0...kube-prometheus-stack-92.10.0> </details> --- ### Configuration 📅 **Schedule**: (in timezone Europe/Berlin) - Branch creation - "after 6pm every weekday,every weekend,before 8am every weekday" - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/cobaltcore-dev/cortex). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xNjQuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjE2NC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Reservations drift from their VM mapping and settle on invalid hosts over time. The syncer now prunes the oldest committed-resource Reservations past a max age (capped per run) before upserting, letting the reconciler rebuild fresh slots. Signed-off-by: Marcel <156897072+mblos@users.noreply.github.com>
…sted (#1381) ## Summary - **Corrects the "Inspecting decisions and descheduling" section** in `docs/02-external-scheduler-api/02-nova-smart-scheduling.md` to reflect that the `Decision` CRD is a transient in-memory object, not persisted to etcd (as documented in `api/v1alpha1/decision_types.go` lines 126-132) - **Replaces the misleading `kubectl get decisions` example** (which would return no results) with a `kubectl get virtualmachines` command showing the `spec.cortex.explanation`, `spec.cortex.intent`, and `spec.cortex.hostCandidates` fields — the actual persisted scheduling results - **Keeps the `kubectl get deschedulings` example** unchanged, since `Descheduling` resources are persisted and the example is accurate ## Test plan - [ ] Verify the renamed heading anchor (`#inspecting-scheduling-results`) does not break any cross-links in the docs (confirmed: no files linked to the old anchor) - [ ] Confirm the `spec.cortex.explanation`, `spec.cortex.hostCandidates`, and `spec.cortex.intent` field paths match the code in `internal/scheduling/nova/vm_handler.go` - [ ] Confirm the `Descheduling` print columns in the kept example still match `api/v1alpha1/descheduling_types.go` - [ ] Read the section in context to verify it flows naturally between "Closing the loop: descheduling" and the closing paragraph / `## Next` 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: cortex-ai-agents[bot] <279748396+cortex-ai-agents[bot]@users.noreply.github.com> Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
…quest (#1379) ## Summary - Fixes a bug where `VirtualMachineHandler.Upsert()` would fail on every initial VM create because it re-called `request.GetIntent()` which returns an error when Nova doesn't set the `_nova_check_type` scheduler hint (the case for initial placements) - The API layer already handles this gracefully by defaulting to `CreateIntent` and storing it on `decision.Spec.Intent` — the VM handler now reads from that field instead of re-deriving - Updates the test helper `vmTestDecision()` to include `Spec.Intent`, matching the real data flow ## Context This was introduced in #1362 (Create VM resources as part of nova pipeline) and partially addressed in #1374 and #1376 (intent fixes), but the VM handler still had its own `GetIntent()` call that didn't benefit from the API's fallback logic. ## Test plan - [ ] Existing `vm_handler_test.go` tests pass with the updated decision helper - [ ] Verify that initial VM creates no longer fail when `VirtualMachineCreation` feature gate is enabled 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: cortex-ai-agents[bot] <279748396+cortex-ai-agents[bot]@users.noreply.github.com> Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Signed-off-by: Markus Wieland <markus.wieland@sap.com>
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [kube-prometheus-stack](https://redirect.github.com/prometheus-operator/kube-prometheus) ([source](https://redirect.github.com/prometheus-community/helm-charts)) | patch | `92.10.0` → `92.10.1` | --- ### Release Notes <details> <summary>prometheus-community/helm-charts (kube-prometheus-stack)</summary> ### [`v92.10.1`](https://redirect.github.com/prometheus-community/helm-charts/releases/tag/kube-prometheus-stack-92.10.1) [Compare Source](https://redirect.github.com/prometheus-community/helm-charts/compare/kube-prometheus-stack-92.10.0...kube-prometheus-stack-92.10.1) kube-prometheus-stack collects Kubernetes manifests, Grafana dashboards, and Prometheus rules combined with documentation and scripts to provide easy to operate end-to-end Kubernetes cluster monitoring with Prometheus using the Prometheus Operator. #### What's Changed - \[kube-prometheus-stack] Update grafana Docker tag to v14.0.1 by [@​renovate](https://redirect.github.com/renovate)\[bot] in [#​7383](https://redirect.github.com/prometheus-community/helm-charts/pull/7383) **Full Changelog**: <prometheus-community/helm-charts@kube-prometheus-stack-92.10.0...kube-prometheus-stack-92.10.1> </details> --- ### Configuration 📅 **Schedule**: (in timezone Europe/Berlin) - Branch creation - "after 6pm every weekday,every weekend,before 8am every weekday" - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/cobaltcore-dev/cortex). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xNjQuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjE2NC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Signed-off-by: Marcel <156897072+mblos@users.noreply.github.com>
juliusclausnitzer
requested review from
PhilippMatthes,
SoWieMarkus,
auhlig,
mblos and
umswmayj
as code owners
October 19, 2026 09:19
Contributor
|
🚀 Release workflow triggered — the release agent is preparing the release for this PR. |
bump app version [skip ci] ``` bumped cortex: sha-01f5a42b -> sha-c6824705 bumped cortex-shim: sha-f73e47fa -> sha-97182126 noop cortex-postgres (sha-dbe244dd) ``` Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Contributor
|
🚀 Release workflow triggered — the release agent is preparing the release for this PR. |
Merged
- Changed the documentation in values.yaml for cortex-nova and cortex-placement-shim to reflect that the Perses dashboard link is emitted as a label instead of an annotation. - Updated the alerts.yaml files in cortex-placement-shim to use the new `persesDashboard` label format for alert definitions, ensuring consistency with the updated values.yaml documentation. Signed-off-by: Markus Wieland <markus.wieland@sap.com>
Contributor
|
🚀 Release workflow triggered — the release agent is preparing the release for this PR. |
bump app version [skip ci] ``` bumped cortex: sha-c6824705 -> sha-b4cf3be3 noop cortex-shim (sha-97182126) noop cortex-postgres (sha-dbe244dd) ``` Signed-off-by: SoWieMarkus <44964229+SoWieMarkus@users.noreply.github.com> Co-authored-by: SoWieMarkus <44964229+SoWieMarkus@users.noreply.github.com>
Contributor
|
🚀 Release workflow triggered — the release agent is preparing the release for this PR. |
## Summary - Release prep for #1385: changelog entry and helm chart version bumps. Merge this before merging #1385. ## Changes - Updated CHANGELOG.md with release notes for cortex 0.7.0 - Bumped helm chart versions across 10 Chart.yaml files in `helm/library` and `helm/bundles` 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: cortex-ai-agents[bot] <279748396+cortex-ai-agents[bot]@users.noreply.github.com> Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Contributor
|
🚀 Release workflow triggered — the release agent is preparing the release for this PR. |
Contributor
Test Coverage ReportTest Coverage 📊: 71.4% |
Closed
2 tasks
mblos
approved these changes
Oct 19, 2026
juliusclausnitzer
enabled auto-merge
October 19, 2026 12:13
SoWieMarkus
approved these changes
Oct 19, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Release cortex 0.7.0
cortex.cloud_historiesCRD and all associated controllers/tasks have been deleted. Any tooling relying onkubectl get historiesor the history client library must migrate tospec.cortex.explanationon theVirtualMachineCRD.DecisionandVirtualMachineCRDs updated with newexplanationandintentfields.Features
createVMgate with aswitchthat logs a specific skip reason (includinginstanceUUID) for each unmet precondition, plus logs successful VM create/update events for end-to-end traceability.vm-operatorto v0.2.8 and writes the newExplanationandIntentfields into theVirtualMachineCRD spec during scheduling, replacing the now-removedHistoryCRD as the explanation surface.Bug Fixes
committedResourceTracking,virtualMachineCreation,virtualMachineCreationMandatory) were incorrectly nested under afeatureGates:block; moved to the correct nesting level.CortexNovaCommittedResourceTimeoutsTooHighalerts. Also adds a generation-advance hang guard and wraps reservation deletes inIgnoreNotFound.Unknown.CreateIntentinstead ofUnknown; removes redundant intent derivation that overrode the fallback.Createand restores them before the status sub-resource update so theScheduledcondition is preserved.decision.Spec.Intent(which already incorporates the API's fallback logic) rather than re-callingGetIntent()on the request, fixing initial VM create failures.Chores & Refactoring
Historycustom resource definition, the history client, and all history cleanup tasks across Nova, Cinder, and Manila schedulers. Explanation data is now embedded directly on theVirtualMachineCRD.Documentation
Decisionis a transient in-memory CRD (not persisted to etcd); replaced the misleadingkubectl get decisionsexample withkubectl get virtualmachinesshowingspec.cortex.*fields.Dependency Updates
vm-operatorkube-prometheus-stackcontroller-toolsgolangci-lintPackage Versions
Operational Notes
CortexNovaCommittedResourceTimeoutsTooHighalert by no longer polling superseded/expired CR transitions.kubectl get historiesor the history client library must migrate tospec.cortex.explanationon theVirtualMachineCRD.Contributors: @PhilippMatthes, @mblos, @SoWieMarkus, @cortex-ai-agents[bot], @renovate[bot], @github-actions[bot]
PR: #1385 | Commits: 20 | Files changed: 91 | Test coverage: 71.4%
Dependencies