checkId: check.notify.email.configured plugin: stellaops.doctor.notify severity: warn tags: [notify, email, smtp, quick, configuration]
Email Configuration
This Doctor check verifies that the email (SMTP) notification channel is configured completely — host, port, and sender address — before Stella Ops attempts to deliver alerts. It is a fast, local-only configuration check aimed at operators setting up or troubleshooting notifications; for the network probe, see check.notify.email.connectivity.
What It Checks
Verifies that the email (SMTP) notification channel is properly configured. The check reads the Notify:Channels:Email configuration section and validates:
- SMTP host (
SmtpHostorHost): must be set and non-empty. - SMTP port (
SmtpPortorPort): must be a valid number between 1 and 65535. - From address (
FromAddressorFrom): must be set so outbound emails have a valid sender. - Enabled flag (
Enabled): if explicitly set tofalse, reports a warning that the channel is configured but disabled.
The check only runs when the Notify:Channels:Email configuration section exists.
Why It Matters
Email notifications deliver critical alerts for release gate failures, policy violations, and security findings. Without a properly configured SMTP host, no email notifications can be sent, leaving operators blind to events that require immediate action. A missing from-address causes emails to be rejected by receiving mail servers.
Common Causes
- SMTP host not set in configuration
- Missing
Notify:Channels:Email:SmtpHostsetting - SMTP port not specified or set to an invalid value
- From address not configured
- Email channel explicitly disabled in configuration
How to Fix
Docker Compose
Add environment variables to your service definition:
environment:
Notify__Channels__Email__SmtpHost: "smtp.example.com"
Notify__Channels__Email__SmtpPort: "587"
Notify__Channels__Email__FromAddress: "noreply@example.com"
Notify__Channels__Email__UseSsl: "true"
Bare Metal / systemd
Edit appsettings.json:
{
"Notify": {
"Channels": {
"Email": {
"SmtpHost": "smtp.example.com",
"SmtpPort": 587,
"FromAddress": "noreply@example.com",
"UseSsl": true
}
}
}
}
Restart the service:
sudo systemctl restart stellaops-notify
Kubernetes / Helm
Set values in your Helm values.yaml:
notify:
channels:
email:
smtpHost: "smtp.example.com"
smtpPort: 587
fromAddress: "noreply@example.com"
useSsl: true
credentialsSecret: "stellaops-smtp-credentials"
Verification
stella doctor run --check check.notify.email.configured
Related Checks
check.notify.email.connectivity— tests whether the configured SMTP server is reachablecheck.notify.queue.health— verifies the notification delivery queue is healthy
