Skip to content

feat(observability): retire Loki and Alloy from Coroot profiles #96

Description

@devantler

🤖 Generated by the Daily AI Engineer (Codex instance)

Evidence

The selectable Coroot profiles delivered under #65 still inherit the legacy Loki and Grafana Alloy controller payload from each provider's default observability stack:

  • Docker Coroot renders HelmRelease/monitoring/loki, HelmRelease/monitoring/alloy, and HelmRelease/monitoring/alloy-audit.
  • Hetzner Coroot renders Loki and the pod-log Alloy collector; its audit Alloy collector was already replaced by audit-log-forwarder in fix(observability): avoid duplicate audit forwarding in Coroot profile #91.
  • kube-prometheus-stack still carries a Grafana Loki datasource in those profiles.
  • The reference Platform's current main has Coroot and the audit-log-forwarder but no Loki or Alloy controller manifests.

Keeping the pair means an operator selecting Coroot still runs a second log backend and collector path, so the profile does not yet deliver the resource reduction or reference-platform parity promised by #65.

Smallest useful change

Retire the coupled Loki + Alloy logging pair from both Coroot profiles only. Preserve the default Docker and Hetzner renders byte-for-byte. Remove the now-dead Grafana Loki datasource and Grafana chart source from the Coroot renders; Tetragon now uses HelmRepository/cilium, so no surviving Coroot-profile release consumes HelmRepository/grafana.

This is intentionally separate from retiring kube-prometheus-stack: metrics and alerting can move in a later independently-proven slice.

Acceptance criteria

  • Default Docker and Hetzner controller renders still contain Loki plus both Alloy releases and HelmRepository/grafana.
  • Docker and Hetzner Coroot controller renders contain no HelmRelease named loki, alloy, or alloy-audit.
  • Coroot-profile Grafana values contain no Loki datasource or loki.monitoring.svc reference.
  • Coroot profiles contain no unconsumed HelmRepository/monitoring/grafana.
  • The Coroot-profile validation fails if either provider loses a deletion, retains the dead source, or if the default profiles change.
  • Both KSail workload validations, naming validation, and the observability-option gate stay green.

Part of #65

Activity

  1. coderabbitai commented on Jul 20, 2026

    @coderabbitai
    🔗 Related PRs

    #62 - feat(coredns): migrate docker-provider CoreDNS from Deployment to HelmRelease [merged]
    #86 - feat(cluster-policies): consume shared helm remediation policy [merged]


    📝 Issue Planner

    Check the box below or use the @coderabbitai plan command to generate an implementation plan and prompts that you can use with your favorite coding assistant.

    • Create Plan

    🧪 Issue enrichment is currently in open beta.

    You can configure auto-planning by selecting labels in the issue_enrichment configuration.

    To disable automatic issue enrichment, add the following to your .coderabbit.yaml:

    issue_enrichment:
      auto_enrich:
        enabled: false

    💬 Have feedback or questions? Drop into our discord!

  2. self-assigned this
    on Jul 20, 2026
  3. moved this to 🏃🏻‍♂️ In Progress in 🌊 Project Boardon Jul 20, 2026
  4. moved this from 🏃🏻‍♂️ In Progress to 👀 In Review in 🌊 Project Boardon Jul 20, 2026
  5. moved this from 👀 In Review to ✅ Done in 🌊 Project Boardon Jul 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Fields

Priority

None yet

Start date

None yet

Target date

None yet

Effort

None yet

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions