Skip to content

feat(blink-lnurl-server): add ingress.annotations passthrough - #9352

Open
pretyflaco wants to merge 1 commit into
blinkbitcoin:mainfrom
pretyflaco:feat/blink-lnurl-server-ingress-annotations
Open

feat(blink-lnurl-server): add ingress.annotations passthrough#9352
pretyflaco wants to merge 1 commit into
blinkbitcoin:mainfrom
pretyflaco:feat/blink-lnurl-server-ingress-annotations

Conversation

@pretyflaco

Copy link
Copy Markdown
Collaborator

Summary

Add an optional ingress.annotations passthrough to the blink-lnurl-server chart so operators can attach nginx ingress annotations via values, without forking the vendored chart.

Motivation

We need to apply path-scoped rate limiting to lnurl.blink.sv/verify/* (see blinkbitcoin/blink-wip#1123 — runaway LUD-21 verify polling from BTCPay plugins). The rate limit is implemented as an ingress-nginx server-snippet annotation on the lnurl-server Ingress, but the chart currently hardcodes its annotations block with no passthrough.

Change

  • templates/ingress.yaml: merge .Values.ingress.annotations under the existing cert-manager.io/cluster-issuer default.
  • values.yaml: document the new ingress.annotations field (default {}).

Fully backward-compatible: when ingress.annotations is unset the rendered manifest is unchanged.

Validation

Rendered locally with helm template:

annotations:
  cert-manager.io/cluster-issuer: letsencrypt-issuer
  nginx.ingress.kubernetes.io/server-snippet: location ~ ^/verify/ { return 429; }

The companion blinkbitcoin/blink-deployments change (staging) wires the actual rate-limit zone + snippet.

Allows attaching nginx ingress annotations (e.g. server-snippet for
path-scoped rate limiting of /verify/*) via values, without forking the
vendored chart. cert-manager.io/cluster-issuer remains the default.
@pretyflaco
pretyflaco requested a review from openoms August 13, 2026 12:42
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