Moves setup files into embedded package.
This commit is contained in:
51
internal/setup/cluster-services/smtp/README.md
Normal file
51
internal/setup/cluster-services/smtp/README.md
Normal file
@@ -0,0 +1,51 @@
|
||||
# SMTP Configuration Service
|
||||
|
||||
This service configures SMTP settings for Wild Cloud applications to send transactional emails.
|
||||
|
||||
## Overview
|
||||
|
||||
The SMTP service doesn't deploy any Kubernetes resources. Instead, it helps configure global SMTP settings that can be used by Wild Cloud applications like Ghost, Gitea, and others for sending:
|
||||
|
||||
- Password reset emails
|
||||
- User invitation emails
|
||||
- Notification emails
|
||||
- Other transactional emails
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
./setup/cluster-services/smtp/install.sh
|
||||
```
|
||||
|
||||
## Configuration
|
||||
|
||||
The setup script will prompt for:
|
||||
|
||||
- **SMTP Host**: Your email provider's SMTP server (e.g., `email-smtp.us-east-2.amazonaws.com` for AWS SES)
|
||||
- **SMTP Port**: Usually `465` for SSL or `587` for STARTTLS
|
||||
- **SMTP User**: Username or access key for authentication
|
||||
- **From Address**: Default sender email address
|
||||
- **SMTP Password**: Your password, secret key, or API key (entered securely)
|
||||
|
||||
## Supported Providers
|
||||
|
||||
- **AWS SES**: Use your Access Key ID as user and Secret Access Key as password
|
||||
- **Gmail/Google Workspace**: Use your email as user and an App Password as password
|
||||
- **SendGrid**: Use `apikey` as user and your API key as password
|
||||
- **Mailgun**: Use your Mailgun username and password
|
||||
- **Other SMTP providers**: Use your standard SMTP credentials
|
||||
|
||||
## Applications That Use SMTP
|
||||
|
||||
- **Ghost**: User management, password resets, notifications
|
||||
- **Gitea**: User registration, password resets, notifications
|
||||
- **OpenProject**: User invitations, notifications
|
||||
- **Future applications**: Any app that needs to send emails
|
||||
|
||||
## Testing
|
||||
|
||||
After configuration, test SMTP by:
|
||||
|
||||
1. Deploying an application that uses email (like Ghost)
|
||||
2. Using password reset or user invitation features
|
||||
3. Checking application logs for SMTP connection issues
|
||||
36
internal/setup/cluster-services/smtp/wild-manifest.yaml
Normal file
36
internal/setup/cluster-services/smtp/wild-manifest.yaml
Normal file
@@ -0,0 +1,36 @@
|
||||
name: smtp
|
||||
description: SMTP relay service for cluster applications
|
||||
namespace: smtp-system
|
||||
category: infrastructure
|
||||
|
||||
serviceConfig:
|
||||
smtpHost:
|
||||
path: cloud.smtp.host
|
||||
prompt: "Enter SMTP host (e.g., email-smtp.us-east-2.amazonaws.com for AWS SES)"
|
||||
default: ""
|
||||
type: string
|
||||
smtpPort:
|
||||
path: cloud.smtp.port
|
||||
prompt: "Enter SMTP port (usually 465 for SSL, 587 for STARTTLS)"
|
||||
default: "465"
|
||||
type: string
|
||||
smtpUser:
|
||||
path: cloud.smtp.user
|
||||
prompt: "Enter SMTP username/access key"
|
||||
default: ""
|
||||
type: string
|
||||
smtpFrom:
|
||||
path: cloud.smtp.from
|
||||
prompt: "Enter default 'from' email address"
|
||||
default: "no-reply@{{ .cloud.domain }}"
|
||||
type: string
|
||||
smtpTls:
|
||||
path: cloud.smtp.tls
|
||||
prompt: "Enable TLS? (true/false)"
|
||||
default: "true"
|
||||
type: string
|
||||
smtpStartTls:
|
||||
path: cloud.smtp.startTls
|
||||
prompt: "Enable STARTTLS? (true/false)"
|
||||
default: "true"
|
||||
type: string
|
||||
Reference in New Issue
Block a user