Notifications & alerts
Events out, webhooks in.
The notification-controller handles events in both directions. Outbound: it sends alerts about reconciliation events (a Kustomization failed, a HelmRelease succeeded) to Slack, Teams, Discord, or a generic webhook, filtered by source and severity — so your team hears about deploy failures without watching the CLI. You define a Provider (where to send) and an Alert (what events, at what level) as CRDs.
apiVersion: notification.toolkit.fluxcd.io/v1beta3kind: Alertmetadata: { name: on-call, namespace: flux-system }spec:providerRef: { name: slack }eventSeverity: erroreventSources:- { kind: Kustomization, name: "*" }- { kind: HelmRelease, name: "*" }
Inbound webhooks for instant sync
Inbound: a Receiver exposes a webhook endpoint so your Git provider or registry can notify Flux the instant something changes, triggering an immediate reconcile instead of waiting for the poll interval. This makes deploys feel instant while keeping the pull model — Git still drives, the webhook just says “look now.” The webhook is authenticated with a secret token, so only your provider can trigger it.
apiVersion: notification.toolkit.fluxcd.io/v1kind: Receivermetadata: { name: github, namespace: flux-system }spec:type: githubsecretRef: { name: webhook-token } # authenticates the incoming callresources: [{ kind: GitRepository, name: fleet }]# expose the receiver URL to your Git provider’s webhook config