Skip to content

feat!: serve health on the main port; metrics port becomes fully optional - #285

Merged
onedr0p merged 1 commit into
mainfrom
feat/port-standard
Jul 4, 2026
Merged

onedr0p merged 1 commit into
mainfrom
feat/port-standard

Conversation

@onedr0p

@onedr0p onedr0p commented Jul 4, 2026

Copy link
Copy Markdown
Contributor

Rollout PR #3 of the org metrics/health standard (primary-HTTP tier + the /healthz+/readyz pair). Prior: home-operations/echo#28, home-operations/chaski#52 (both merged).

What changed

  • /healthz + /readyz (and the legacy /-/health, /-/ready aliases) ride the main port (8080) via a mux overlay in front of the app handler; the chart's probes and the helm-test hook target the http port.
  • The 8081 listener is metrics-only and truly optional — new METRICS_ENABLED toggle (service.metricsEnabled in the chart); disabling removes the listener, container port, and Service port. New chart test pins probes-survive-metrics-off.
  • Bind rule: SERVER_HOST/METRICS_HOST now default to the unspecified address (was 0.0.0.0, which is IPv4-only and breaks IPv6-only clusters); ports render as ":<port>".
  • Names: chart containerPort/Service port health → metrics; env HEALTH_HOST/HEALTH_PORT → METRICS_HOST/METRICS_PORT.
  • e2e harness waits on both the main /healthz and the metrics /metrics before running.

Breaking (hence feat!)

  • HEALTH_HOST/HEALTH_PORT env renamed; :8081/healthz|readyz no longer served (move to the main port).
  • Explicit 0.0.0.0 binds must now be set via env if genuinely wanted.
  • Chart port name health → metrics (external scrape configs referencing the port name update; in-chart ServiceMonitor already used metrics).

Verified

mise run assets + go build, go test -race ./..., tagged e2e suite (mise run test-e2e — required per repo convention for handler changes), helm lint, helm unittest 17/17, docs/schema regenerated, lint clean.

Next in rollout: konflate, then tuppr/litellm-operator/miroir (rule-2), then drm-exporter.

…onal

Adopt the org port standard: /healthz (liveness) and /readyz (readiness) ride
the main port (8080) via a mux overlay, and the chart's probes target the http
port — so the metrics listener (8081) is metrics-only and truly optional.
METRICS_ENABLED=false removes the listener, container port, and Service port
without touching the probes. The /-/health and /-/ready aliases move to the
main port with the rest.

BREAKING CHANGE: HEALTH_HOST/HEALTH_PORT are renamed METRICS_HOST/METRICS_PORT,
and the metrics listener no longer serves the health endpoints — external
probe/scrape configs pointing at :8081/healthz or :8081/readyz must move to the
main port. Bind hosts now default to the unspecified address (was 0.0.0.0,
which is IPv4-only and breaks IPv6-only clusters); set SERVER_HOST/METRICS_HOST
to restore an explicit bind. The chart's containerPort/Service port name
`health` becomes `metrics`.
@onedr0p
onedr0p merged commit 948cab4 into main Jul 4, 2026
6 checks passed
@onedr0p
onedr0p deleted the feat/port-standard branch July 4, 2026 16:21
eleboucher pushed a commit to eleboucher/homelab that referenced this pull request Jul 5, 2026
…0.14.12 ➔ 0.15.0) (#1424)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [ghcr.io/home-operations/charts/kromgo](https://github.com/home-operations/kromgo) | minor | `0.14.12` → `0.15.0` |

---

### Release Notes

<details>
<summary>home-operations/kromgo (ghcr.io/home-operations/charts/kromgo)</summary>

### [`v0.15.0`](https://github.com/home-operations/kromgo/blob/HEAD/CHANGELOG.md#0150-2026-07-04)

[Compare Source](home-operations/kromgo@0.14.12...0.15.0)

##### ⚠ BREAKING CHANGES

- drop the legacy /-/health and /-/ready aliases ([#&#8203;288](home-operations/kromgo#288))
- prefix all environment variables with KROMGO\_ ([#&#8203;286](home-operations/kromgo#286))
- serve health on the main port; metrics port becomes fully optional ([#&#8203;285](home-operations/kromgo#285))

##### Features

- drop the legacy /-/health and /-/ready aliases ([#&#8203;288](home-operations/kromgo#288)) ([c6fe382](home-operations/kromgo@c6fe382))
- prefix all environment variables with KROMGO\_ ([#&#8203;286](home-operations/kromgo#286)) ([340c62d](home-operations/kromgo@340c62d))
- serve health on the main port; metrics port becomes fully optional ([#&#8203;285](home-operations/kromgo#285)) ([948cab4](home-operations/kromgo@948cab4))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, 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 has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMDEuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEwMS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZS9jb250YWluZXIiLCJ0eXBlL21pbm9yIl19-->

Reviewed-on: https://git.erwanleboucher.dev/eleboucher/homelab/pulls/1424
ajgon pushed a commit to deedee-ops/home-ops that referenced this pull request Jul 5, 2026
…0.14.11 ➔ 0.15.0) (#232)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [ghcr.io/home-operations/charts/kromgo](https://github.com/home-operations/kromgo) | minor | `0.14.11` → `0.15.0` |

---

### Release Notes

<details>
<summary>home-operations/kromgo (ghcr.io/home-operations/charts/kromgo)</summary>

### [`v0.15.0`](https://github.com/home-operations/kromgo/blob/HEAD/CHANGELOG.md#0150-2026-07-04)

[Compare Source](home-operations/kromgo@0.14.12...0.15.0)

##### ⚠ BREAKING CHANGES

- drop the legacy /-/health and /-/ready aliases ([#&#8203;288](home-operations/kromgo#288))
- prefix all environment variables with KROMGO\_ ([#&#8203;286](home-operations/kromgo#286))
- serve health on the main port; metrics port becomes fully optional ([#&#8203;285](home-operations/kromgo#285))

##### Features

- drop the legacy /-/health and /-/ready aliases ([#&#8203;288](home-operations/kromgo#288)) ([c6fe382](home-operations/kromgo@c6fe382))
- prefix all environment variables with KROMGO\_ ([#&#8203;286](home-operations/kromgo#286)) ([340c62d](home-operations/kromgo@340c62d))
- serve health on the main port; metrics port becomes fully optional ([#&#8203;285](home-operations/kromgo#285)) ([948cab4](home-operations/kromgo@948cab4))

### [`v0.14.12`](https://github.com/home-operations/kromgo/blob/HEAD/CHANGELOG.md#01412-2026-07-03)

[Compare Source](home-operations/kromgo@0.14.11...0.14.12)

##### Features

- **deps:** update module github.com/google/cel-go (v0.28.1 → v0.29.1) ([#&#8203;284](home-operations/kromgo#284)) ([683a3c6](home-operations/kromgo@683a3c6))

##### Bug Fixes

- **deps:** update dependency simple-icons (16.24.0 → 16.24.1) ([#&#8203;280](home-operations/kromgo#280)) ([cd07474](home-operations/kromgo@cd07474))

##### Miscellaneous Chores

- **mise:** Update tool node (24.17.0 → v24.18.0) ([#&#8203;279](home-operations/kromgo#279)) ([7722f4a](home-operations/kromgo@7722f4a))
- **mise:** Update tool npm (11.17.0 → 11.18.0) ([#&#8203;282](home-operations/kromgo#282)) ([1c7d7e9](home-operations/kromgo@1c7d7e9))
- **mise:** Update tool oxfmt (0.56.0 → 0.57.0) ([#&#8203;283](home-operations/kromgo#283)) ([f819988](home-operations/kromgo@f819988))
- **renovate:** inherit shared toolchain + chart-docs presets ([#&#8203;277](home-operations/kromgo#277)) ([56e0934](home-operations/kromgo@56e0934))

</details>

---

### Configuration

📅 **Schedule**: (in timezone Europe/Warsaw)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, 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 has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNTEuMyIsInVwZGF0ZWRJblZlciI6IjQzLjI1MS4zIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvbWlub3IiXX0=-->

Reviewed-on: https://git.ajgon.casa/deedee/mark13/pulls/232
doonga pushed a commit to greyrock-labs/home-ops that referenced this pull request Jul 6, 2026
… ➔ 0.15.0) (#458)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [ghcr.io/home-operations/kromgo](https://github.com/home-operations/kromgo) | minor | `0.14.11` → `0.15.0` |

---

### Release Notes

<details>
<summary>home-operations/kromgo (ghcr.io/home-operations/kromgo)</summary>

### [`v0.15.0`](https://github.com/home-operations/kromgo/blob/HEAD/CHANGELOG.md#0150-2026-07-04)

[Compare Source](home-operations/kromgo@0.14.12...0.15.0)

##### ⚠ BREAKING CHANGES

- drop the legacy /-/health and /-/ready aliases ([#&#8203;288](home-operations/kromgo#288))
- prefix all environment variables with KROMGO\_ ([#&#8203;286](home-operations/kromgo#286))
- serve health on the main port; metrics port becomes fully optional ([#&#8203;285](home-operations/kromgo#285))

##### Features

- drop the legacy /-/health and /-/ready aliases ([#&#8203;288](home-operations/kromgo#288)) ([c6fe382](home-operations/kromgo@c6fe382))
- prefix all environment variables with KROMGO\_ ([#&#8203;286](home-operations/kromgo#286)) ([340c62d](home-operations/kromgo@340c62d))
- serve health on the main port; metrics port becomes fully optional ([#&#8203;285](home-operations/kromgo#285)) ([948cab4](home-operations/kromgo@948cab4))

### [`v0.14.12`](https://github.com/home-operations/kromgo/blob/HEAD/CHANGELOG.md#01412-2026-07-03)

[Compare Source](home-operations/kromgo@0.14.11...0.14.12)

##### Features

- **deps:** update module github.com/google/cel-go (v0.28.1 → v0.29.1) ([#&#8203;284](home-operations/kromgo#284)) ([683a3c6](home-operations/kromgo@683a3c6))

##### Bug Fixes

- **deps:** update dependency simple-icons (16.24.0 → 16.24.1) ([#&#8203;280](home-operations/kromgo#280)) ([cd07474](home-operations/kromgo@cd07474))

##### Miscellaneous Chores

- **mise:** Update tool node (24.17.0 → v24.18.0) ([#&#8203;279](home-operations/kromgo#279)) ([7722f4a](home-operations/kromgo@7722f4a))
- **mise:** Update tool npm (11.17.0 → 11.18.0) ([#&#8203;282](home-operations/kromgo#282)) ([1c7d7e9](home-operations/kromgo@1c7d7e9))
- **mise:** Update tool oxfmt (0.56.0 → 0.57.0) ([#&#8203;283](home-operations/kromgo#283)) ([f819988](home-operations/kromgo@f819988))
- **renovate:** inherit shared toolchain + chart-docs presets ([#&#8203;277](home-operations/kromgo#277)) ([56e0934](home-operations/kromgo@56e0934))

</details>

---

### Configuration

📅 **Schedule**: (in timezone America/New_York)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these updates again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNDcuMCIsInVwZGF0ZWRJblZlciI6IjQzLjI0Ny4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZS9jb250YWluZXIiLCJ0eXBlL21pbm9yIl19-->

Reviewed-on: https://git.greyrock.io/greyrock-labs/home-ops/pulls/458
ajgon pushed a commit to deedee-ops/home-ops that referenced this pull request Jul 20, 2026
…0.14.11 ➔ 0.15.0) (#232)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [ghcr.io/home-operations/charts/kromgo](https://github.com/home-operations/kromgo) | minor | `0.14.11` → `0.15.0` |

---

### Release Notes

<details>
<summary>home-operations/kromgo (ghcr.io/home-operations/charts/kromgo)</summary>

### [`v0.15.0`](https://github.com/home-operations/kromgo/blob/HEAD/CHANGELOG.md#0150-2026-07-04)

[Compare Source](home-operations/kromgo@0.14.12...0.15.0)

##### ⚠ BREAKING CHANGES

- drop the legacy /-/health and /-/ready aliases ([#&#8203;288](home-operations/kromgo#288))
- prefix all environment variables with KROMGO\_ ([#&#8203;286](home-operations/kromgo#286))
- serve health on the main port; metrics port becomes fully optional ([#&#8203;285](home-operations/kromgo#285))

##### Features

- drop the legacy /-/health and /-/ready aliases ([#&#8203;288](home-operations/kromgo#288)) ([c6fe382](home-operations/kromgo@c6fe382))
- prefix all environment variables with KROMGO\_ ([#&#8203;286](home-operations/kromgo#286)) ([340c62d](home-operations/kromgo@340c62d))
- serve health on the main port; metrics port becomes fully optional ([#&#8203;285](home-operations/kromgo#285)) ([948cab4](home-operations/kromgo@948cab4))

### [`v0.14.12`](https://github.com/home-operations/kromgo/blob/HEAD/CHANGELOG.md#01412-2026-07-03)

[Compare Source](home-operations/kromgo@0.14.11...0.14.12)

##### Features

- **deps:** update module github.com/google/cel-go (v0.28.1 → v0.29.1) ([#&#8203;284](home-operations/kromgo#284)) ([683a3c6](home-operations/kromgo@683a3c6))

##### Bug Fixes

- **deps:** update dependency simple-icons (16.24.0 → 16.24.1) ([#&#8203;280](home-operations/kromgo#280)) ([cd07474](home-operations/kromgo@cd07474))

##### Miscellaneous Chores

- **mise:** Update tool node (24.17.0 → v24.18.0) ([#&#8203;279](home-operations/kromgo#279)) ([7722f4a](home-operations/kromgo@7722f4a))
- **mise:** Update tool npm (11.17.0 → 11.18.0) ([#&#8203;282](home-operations/kromgo#282)) ([1c7d7e9](home-operations/kromgo@1c7d7e9))
- **mise:** Update tool oxfmt (0.56.0 → 0.57.0) ([#&#8203;283](home-operations/kromgo#283)) ([f819988](home-operations/kromgo@f819988))
- **renovate:** inherit shared toolchain + chart-docs presets ([#&#8203;277](home-operations/kromgo#277)) ([56e0934](home-operations/kromgo@56e0934))

</details>

---

### Configuration

📅 **Schedule**: (in timezone Europe/Warsaw)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, 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 has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNTEuMyIsInVwZGF0ZWRJblZlciI6IjQzLjI1MS4zIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvbWlub3IiXX0=-->

Reviewed-on: https://git.ajgon.casa/deedee/mark13/pulls/232
ajgon pushed a commit to deedee-ops/home-ops that referenced this pull request Jul 28, 2026
…0.14.11 ➔ 0.15.0) (#232)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [ghcr.io/home-operations/charts/kromgo](https://github.com/home-operations/kromgo) | minor | `0.14.11` → `0.15.0` |

---

### Release Notes

<details>
<summary>home-operations/kromgo (ghcr.io/home-operations/charts/kromgo)</summary>

### [`v0.15.0`](https://github.com/home-operations/kromgo/blob/HEAD/CHANGELOG.md#0150-2026-07-04)

[Compare Source](home-operations/kromgo@0.14.12...0.15.0)

##### ⚠ BREAKING CHANGES

- drop the legacy /-/health and /-/ready aliases ([#&#8203;288](home-operations/kromgo#288))
- prefix all environment variables with KROMGO\_ ([#&#8203;286](home-operations/kromgo#286))
- serve health on the main port; metrics port becomes fully optional ([#&#8203;285](home-operations/kromgo#285))

##### Features

- drop the legacy /-/health and /-/ready aliases ([#&#8203;288](home-operations/kromgo#288)) ([c6fe382](home-operations/kromgo@c6fe382))
- prefix all environment variables with KROMGO\_ ([#&#8203;286](home-operations/kromgo#286)) ([340c62d](home-operations/kromgo@340c62d))
- serve health on the main port; metrics port becomes fully optional ([#&#8203;285](home-operations/kromgo#285)) ([948cab4](home-operations/kromgo@948cab4))

### [`v0.14.12`](https://github.com/home-operations/kromgo/blob/HEAD/CHANGELOG.md#01412-2026-07-03)

[Compare Source](home-operations/kromgo@0.14.11...0.14.12)

##### Features

- **deps:** update module github.com/google/cel-go (v0.28.1 → v0.29.1) ([#&#8203;284](home-operations/kromgo#284)) ([683a3c6](home-operations/kromgo@683a3c6))

##### Bug Fixes

- **deps:** update dependency simple-icons (16.24.0 → 16.24.1) ([#&#8203;280](home-operations/kromgo#280)) ([cd07474](home-operations/kromgo@cd07474))

##### Miscellaneous Chores

- **mise:** Update tool node (24.17.0 → v24.18.0) ([#&#8203;279](home-operations/kromgo#279)) ([7722f4a](home-operations/kromgo@7722f4a))
- **mise:** Update tool npm (11.17.0 → 11.18.0) ([#&#8203;282](home-operations/kromgo#282)) ([1c7d7e9](home-operations/kromgo@1c7d7e9))
- **mise:** Update tool oxfmt (0.56.0 → 0.57.0) ([#&#8203;283](home-operations/kromgo#283)) ([f819988](home-operations/kromgo@f819988))
- **renovate:** inherit shared toolchain + chart-docs presets ([#&#8203;277](home-operations/kromgo#277)) ([56e0934](home-operations/kromgo@56e0934))

</details>

---

### Configuration

📅 **Schedule**: (in timezone Europe/Warsaw)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, 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 has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNTEuMyIsInVwZGF0ZWRJblZlciI6IjQzLjI1MS4zIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvbWlub3IiXX0=-->

Reviewed-on: https://git.ajgon.casa/deedee/mark13/pulls/232
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