diff --git a/CHANGELOG.md b/CHANGELOG.md index 2ddb49d00..8f94c487d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,47 @@ # Changelog +## 2026-07-03 — [#1009](https://github.com/cobaltcore-dev/cortex/pull/1009) + +### cortex v0.2.2 (sha-f4d7df89) + +Non-breaking changes: +- Include host information in error logs when multicluster connection fails ([#997](https://github.com/cobaltcore-dev/cortex/pull/997)) +- Fix Perses config for local development ([#1007](https://github.com/cobaltcore-dev/cortex/pull/1007)) +- Update `github.com/sapcc/go-bits` ([#1005](https://github.com/cobaltcore-dev/cortex/pull/1005)) +- Update kube-prometheus-stack Docker tag to v87.4.0 ([#998](https://github.com/cobaltcore-dev/cortex/pull/998)) + +### cortex-shim v0.1.5 (sha-c98ddb05) + +Includes updated image sha-c98ddb05. + +### cortex-nova v0.0.79 + +Includes updated charts cortex v0.2.2, cortex-postgres v0.6.8. + +### cortex-cinder v0.0.79 + +Includes updated charts cortex v0.2.2, cortex-postgres v0.6.8. + +### cortex-manila v0.0.79 + +Includes updated charts cortex v0.2.2, cortex-postgres v0.6.8. + +### cortex-crds v0.0.79 + +Includes updated chart cortex v0.2.2. + +### cortex-ironcore v0.0.79 + +Includes updated chart cortex v0.2.2. + +### cortex-pods v0.0.79 + +Includes updated chart cortex v0.2.2. + +### cortex-placement-shim v0.1.5 + +Includes updated chart cortex-shim v0.1.5. + ## 2026-07-01 — [#1001](https://github.com/cobaltcore-dev/cortex/pull/1001) ### cortex v0.2.1 (sha-44b8aab7) diff --git a/go.mod b/go.mod index 97ef930e1..b6b149190 100644 --- a/go.mod +++ b/go.mod @@ -9,7 +9,7 @@ require ( github.com/ironcore-dev/ironcore v0.4.2 github.com/prometheus/client_golang v1.23.2 github.com/prometheus/client_model v0.6.2 - github.com/sapcc/go-bits v0.0.0-20260626143732-3999ce9f8fdc + github.com/sapcc/go-bits v0.0.0-20260702170430-ea66ea5d2790 go.xyrillian.de/gg v1.11.1 k8s.io/api v0.36.2 k8s.io/apimachinery v0.36.2 diff --git a/go.sum b/go.sum index 8941058a5..a14477a0a 100644 --- a/go.sum +++ b/go.sum @@ -204,8 +204,8 @@ github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7 github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/sapcc/go-api-declarations v1.24.0 h1:sGBvOMVSM1olJlyvNoQSk7NX5uatXHKkztGDBPnTWMs= github.com/sapcc/go-api-declarations v1.24.0/go.mod h1:ZWRTijvgF8o8aHg5stgg7u4DF6jFrd0X97le/uGlZsA= -github.com/sapcc/go-bits v0.0.0-20260626143732-3999ce9f8fdc h1:oflzbbZ1C2tc0EMCwf5tETd6nlqA5TMnckihJqz7joU= -github.com/sapcc/go-bits v0.0.0-20260626143732-3999ce9f8fdc/go.mod h1:WIr0qdewi9zEDh4egX9c7zB4e6JwrzTS3AA02y0EVxk= +github.com/sapcc/go-bits v0.0.0-20260702170430-ea66ea5d2790 h1:gqCRgRLvFAfwqhPY3ZtcgGpbSgWOiH+dsRqF2/ENDjM= +github.com/sapcc/go-bits v0.0.0-20260702170430-ea66ea5d2790/go.mod h1:uchHF8FNxncTCoQYDjGSO86AuxSzgIbN5mQzM95RYOA= github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= github.com/spf13/cobra v1.10.2 h1:DMTTonx5m65Ic0GOoRY2c16WCbHxOOw6xxezuLaBpcU= diff --git a/helm/bundles/cortex-cinder/Chart.yaml b/helm/bundles/cortex-cinder/Chart.yaml index dfaa6cdce..bec946fca 100644 --- a/helm/bundles/cortex-cinder/Chart.yaml +++ b/helm/bundles/cortex-cinder/Chart.yaml @@ -5,23 +5,23 @@ apiVersion: v2 name: cortex-cinder description: A Helm chart deploying Cortex for Cinder. type: application -version: 0.0.78 +version: 0.0.79 appVersion: 0.1.0 dependencies: # from: file://../../library/cortex-postgres - name: cortex-postgres repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.6.7 + version: 0.6.8 # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.2.1 + version: 0.2.2 alias: cortex-knowledge-controllers # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.2.1 + version: 0.2.2 alias: cortex-scheduling-controllers # Owner info adds a configmap to the kubernetes cluster with information on diff --git a/helm/bundles/cortex-crds/Chart.yaml b/helm/bundles/cortex-crds/Chart.yaml index 8f6b4cda1..b0402277a 100644 --- a/helm/bundles/cortex-crds/Chart.yaml +++ b/helm/bundles/cortex-crds/Chart.yaml @@ -5,13 +5,13 @@ apiVersion: v2 name: cortex-crds description: A Helm chart deploying Cortex CRDs. type: application -version: 0.0.78 +version: 0.0.79 appVersion: 0.1.0 dependencies: # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.2.1 + version: 0.2.2 # Owner info adds a configmap to the kubernetes cluster with information on # the service owner. This makes it easier to find out who to contact in case diff --git a/helm/bundles/cortex-ironcore/Chart.yaml b/helm/bundles/cortex-ironcore/Chart.yaml index 762ee557c..0b91af43e 100644 --- a/helm/bundles/cortex-ironcore/Chart.yaml +++ b/helm/bundles/cortex-ironcore/Chart.yaml @@ -5,13 +5,13 @@ apiVersion: v2 name: cortex-ironcore description: A Helm chart deploying Cortex for IronCore. type: application -version: 0.0.78 +version: 0.0.79 appVersion: 0.1.0 dependencies: # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.2.1 + version: 0.2.2 # Owner info adds a configmap to the kubernetes cluster with information on # the service owner. This makes it easier to find out who to contact in case diff --git a/helm/bundles/cortex-manila/Chart.yaml b/helm/bundles/cortex-manila/Chart.yaml index 76be70c05..b1f69a0d2 100644 --- a/helm/bundles/cortex-manila/Chart.yaml +++ b/helm/bundles/cortex-manila/Chart.yaml @@ -5,23 +5,23 @@ apiVersion: v2 name: cortex-manila description: A Helm chart deploying Cortex for Manila. type: application -version: 0.0.78 +version: 0.0.79 appVersion: 0.1.0 dependencies: # from: file://../../library/cortex-postgres - name: cortex-postgres repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.6.7 + version: 0.6.8 # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.2.1 + version: 0.2.2 alias: cortex-knowledge-controllers # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.2.1 + version: 0.2.2 alias: cortex-scheduling-controllers # Owner info adds a configmap to the kubernetes cluster with information on diff --git a/helm/bundles/cortex-nova/Chart.yaml b/helm/bundles/cortex-nova/Chart.yaml index b803122b4..ebd6c4de4 100644 --- a/helm/bundles/cortex-nova/Chart.yaml +++ b/helm/bundles/cortex-nova/Chart.yaml @@ -5,23 +5,23 @@ apiVersion: v2 name: cortex-nova description: A Helm chart deploying Cortex for Nova. type: application -version: 0.0.78 +version: 0.0.79 appVersion: 0.1.0 dependencies: # from: file://../../library/cortex-postgres - name: cortex-postgres repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.6.7 + version: 0.6.8 # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.2.1 + version: 0.2.2 alias: cortex-knowledge-controllers # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.2.1 + version: 0.2.2 alias: cortex-scheduling-controllers # Owner info adds a configmap to the kubernetes cluster with information on diff --git a/helm/bundles/cortex-placement-shim/Chart.yaml b/helm/bundles/cortex-placement-shim/Chart.yaml index 95ecb8cec..07e09aab7 100644 --- a/helm/bundles/cortex-placement-shim/Chart.yaml +++ b/helm/bundles/cortex-placement-shim/Chart.yaml @@ -5,13 +5,13 @@ apiVersion: v2 name: cortex-placement-shim description: A Helm chart deploying the Cortex placement shim. type: application -version: 0.1.4 +version: 0.1.5 appVersion: 0.1.0 dependencies: # from: file://../../library/cortex-shim - name: cortex-shim repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.1.4 + version: 0.1.5 # Owner info adds a configmap to the kubernetes cluster with information on # the service owner. This makes it easier to find out who to contact in case # of issues. See: https://github.com/sapcc/helm-charts/pkgs/container/helm-charts%2Fowner-info diff --git a/helm/bundles/cortex-pods/Chart.yaml b/helm/bundles/cortex-pods/Chart.yaml index 6a773d921..6bbcf92ce 100644 --- a/helm/bundles/cortex-pods/Chart.yaml +++ b/helm/bundles/cortex-pods/Chart.yaml @@ -5,13 +5,13 @@ apiVersion: v2 name: cortex-pods description: A Helm chart deploying Cortex for Pods. type: application -version: 0.0.78 +version: 0.0.79 appVersion: 0.1.0 dependencies: # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.2.1 + version: 0.2.2 # Owner info adds a configmap to the kubernetes cluster with information on # the service owner. This makes it easier to find out who to contact in case diff --git a/helm/dev/cortex-prometheus-operator/Chart.yaml b/helm/dev/cortex-prometheus-operator/Chart.yaml index 59859b611..952a9ae01 100644 --- a/helm/dev/cortex-prometheus-operator/Chart.yaml +++ b/helm/dev/cortex-prometheus-operator/Chart.yaml @@ -10,4 +10,4 @@ dependencies: # CRDs of the prometheus operator, such as PrometheusRule, ServiceMonitor, etc. - name: kube-prometheus-stack repository: oci://ghcr.io/prometheus-community/charts - version: 87.3.0 + version: 87.5.1 diff --git a/helm/library/cortex-postgres/Chart.yaml b/helm/library/cortex-postgres/Chart.yaml index 207c80572..b64823e29 100644 --- a/helm/library/cortex-postgres/Chart.yaml +++ b/helm/library/cortex-postgres/Chart.yaml @@ -5,5 +5,5 @@ apiVersion: v2 name: cortex-postgres description: Postgres setup for Cortex. type: application -version: 0.6.7 +version: 0.6.8 appVersion: "sha-af707446" diff --git a/helm/library/cortex-shim/Chart.yaml b/helm/library/cortex-shim/Chart.yaml index f221a68b6..fd97de05f 100644 --- a/helm/library/cortex-shim/Chart.yaml +++ b/helm/library/cortex-shim/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: cortex-shim description: A Helm chart to distribute cortex shims. type: application -version: 0.1.4 -appVersion: "sha-44b8aab7" +version: 0.1.5 +appVersion: "sha-c98ddb05" icon: "https://example.com/icon.png" dependencies: [] diff --git a/helm/library/cortex/Chart.yaml b/helm/library/cortex/Chart.yaml index 5d1b9bdef..ad8649789 100644 --- a/helm/library/cortex/Chart.yaml +++ b/helm/library/cortex/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: cortex description: A Helm chart to distribute cortex. type: application -version: 0.2.1 -appVersion: "sha-44b8aab7" +version: 0.2.2 +appVersion: "sha-f4d7df89" icon: "https://example.com/icon.png" dependencies: [] diff --git a/pkg/multicluster/client.go b/pkg/multicluster/client.go index 6af557598..fcaecaf93 100644 --- a/pkg/multicluster/client.go +++ b/pkg/multicluster/client.go @@ -345,7 +345,8 @@ func (c *Client) Get(ctx context.Context, key client.ObjectKey, obj client.Objec } if !apierrors.IsNotFound(err) { log.Error(err, "error checking for duplicate resource in cluster", - "gvk", gvk, "namespace", key.Namespace, "name", key.Name) + "gvk", gvk, "namespace", key.Namespace, "name", key.Name, + "host", cl.GetConfig().Host) } continue } @@ -357,7 +358,8 @@ func (c *Client) Get(ctx context.Context, key client.ObjectKey, obj client.Objec } if !apierrors.IsNotFound(err) { log.Error(err, "error getting resource from cluster", "gvk", gvk, - "namespace", key.Namespace, "name", key.Name) + "namespace", key.Namespace, "name", key.Name, + "host", cl.GetConfig().Host) } } if !found { @@ -392,7 +394,8 @@ func (c *Client) List(ctx context.Context, list client.ObjectList, opts ...clien for _, cl := range clusters { listCopy := list.DeepCopyObject().(client.ObjectList) if err := cl.GetClient().List(ctx, listCopy, opts...); err != nil { - log.Error(err, "error listing resources from cluster", "gvk", gvk) + log.Error(err, "error listing resources from cluster", + "gvk", gvk, "host", cl.GetConfig().Host) continue } items, err := meta.ExtractList(listCopy) @@ -632,7 +635,7 @@ func (c *subResourceClient) Get(ctx context.Context, obj, subResource client.Obj if !apierrors.IsNotFound(err) { log.Error(err, "error checking for duplicate sub-resource in cluster", "gvk", gvk, "namespace", obj.GetNamespace(), "name", obj.GetName(), - "subresource", c.subResource) + "subresource", c.subResource, "host", cl.GetConfig().Host) } continue } @@ -646,7 +649,7 @@ func (c *subResourceClient) Get(ctx context.Context, obj, subResource client.Obj if !apierrors.IsNotFound(err) { log.Error(err, "error getting sub-resource from cluster", "gvk", gvk, "namespace", obj.GetNamespace(), "name", obj.GetName(), - "subresource", c.subResource) + "subresource", c.subResource, "host", cl.GetConfig().Host) } } if !found { diff --git a/tools/perses/values.yaml b/tools/perses/values.yaml index ec489e2f4..30e68380f 100644 --- a/tools/perses/values.yaml +++ b/tools/perses/values.yaml @@ -4,12 +4,24 @@ sidecar: enabled: true +volumes: + - name: perses-plugins + emptyDir: {} + +volumeMounts: + - name: perses-plugins + mountPath: /etc/perses/plugins + config: provisioning: folders: - /etc/perses/provisioning - /etc/perses/datasources interval: 1m + plugin: + path: /etc/perses/plugins + archive_paths: + - /etc/perses/plugins-archive datasources: - kind: GlobalDatasource