linode / linode/apl-core

Everything-is-an-app cutover: Monitoring group (prometheus, grafana, promtail, alertmanager, otel)

Open
#3,578 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

ready-for-agent
Dominant language
Go Template
Stars
2.3k
Forks
186
Avg merge
3d 11h
Merged PRs (30d)
66

Description

## Parent

linode/apl-core#3515

## What to build

Cut the **Monitoring** group of core apps over to the new git-driven layout. These apps are grouped because they share the same cross-cutting managed setting beyond the universal four: alerting / monitoring wiring (`alerts.*`).

Apps in this batch:
- `prometheus`
- `grafana`
- `promtail`
- `alertmanager`
- `otel`

Note: `grafana` is also an OIDC consumer — coordinate its OIDC managed-values wiring with the SSO/OIDC batch. `loki` is handled in the Storage & Database batch.

End-to-end behavior per app: `enabled` in `env/settings/apps.yaml`; vendor-shaped `values.custom.yaml` + operator-rendered `values.managed.yaml` under `env/values///`; multi-source `Application` CR file; legacy `env/apps/.yaml` + inline-values path removed. Any secret material (SMTP/webhook creds, grafana admin) appears only as Secret references — value files stay secret-free.

## Acceptance criteria

- [ ] Each app reconciles Healthy in ArgoCD from its `env/values///{managed,custom}.yaml`.
- [ ] `alerts` / monitoring wiring emitted into `values.managed.yaml`; secrets only as references.
- [ ] grafana also emits OIDC references (cross-dependency with the SSO/OIDC batch noted and handled).
- [ ] Legacy `env/apps/.yaml` entries and inline-values path removed for this batch.
- [ ] Existing `installed:` gating still works from `env/settings/apps.yaml`.

## Blocked by

- linode/apl-core#3571
- linode/apl-core#3572
- linode/apl-core#3573

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with env/settings/apps.yaml and the existing env/values/// layout, then review the parent issue and blocked issues before changing the Monitoring batch. Verify each app's multi-source Application, managed/custom values, installed gating, secret references, and removal of legacy env/apps/.yaml entries by confirming Healthy reconciliation in ArgoCD.

Written by the indexing model from the issue text.

Assessment

Tech stack
grafana, kubernetes, prometheus
Domain
devops, infrastructure, observability-sre
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.