If you’re running Astronomer Enterprise with publicSignups
disabled, you’ll most likely need to enable SMTP as a way for your users to receive and accept invites to the platform via email.
Read below for the 2 methods you can use to do this.
In your config.yaml (plain-text)
For users getting started, the easiest way to set SMTP is to include existing credentials (in the form of an SMTP URI) in plain-text in your config.yaml
. Take a look at the example below:
#################################
### SMTP configuration
#################################
astronomer:
houston:
config:
email:
enabled: true
smtpUrl: YOUR_URI_HERE
For teams concerned about keeping this value in plain-text, follow the next section for guidelines on how to set it up as a secret.
In your values.yaml (as a Kubernetes Secret)
To more securely pass SMTP creds to Astronomer, you can:
1. Create a secret in your Astronomer platform namespace
To create a secret, run the following:
kubectl create secret generic my-secret --from-literal=connection=smtps://USERNAME:PW@HOST/?pool=true
2. Reference your secret in .Values.astronomer.houston.secret
In your values.yaml
, you can reference that secret as an Environment Variable:
# secret:
# - envName: "EMAIL__SMTP_URL"
# secretName: "my-scret"
# secretKey: "connection"
3. Run helm upgrade
to deploy the platform with your changes
Two additional notes:
- If you set this secret, you’re free to comment out the SMTP section of your global
config.yaml
. - If you’re using Amazon SES, your URL will look like the following:
smtpUrl: smtp://USERNAME:PW@HOST/?requireTLS=true
. If there are/
or other escape characters in your username or password, you may need to URL encode those characters.