This project is designed to run as an AWS Lambda function (ASP NET Core + AWS Lambda hosting).
- GitHub Actions workflow:
.github/workflows/aws-deploy.yml - IAM policy example (for manual setup):
.github/aws/iam-user-policy.json
- Builds + packages the .NET app for Lambda
- Creates/updates IAM roles
- Deploys the Lambda function
- Creates/updates API Gateway resources + methods
- Configures CORS headers for API Gateway
- Manages API keys / usage plans (if configured in the workflow)
At minimum (depends on your workflow config):
AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY- SMTP secrets:
SMTP_1_PASSWORD,SMTP_1_PASSWORD_TESTSMTP_2_PASSWORD,SMTP_2_PASSWORD_TEST- ...
The file .github/aws/iam-user-policy.json is intentionally broad ("Resource": "*"), because the workflow needs to create/manage multiple AWS resources.
Related: .github/aws/README.md (minimal pointer doc inside that folder).