Deployment Workflow & Timeline
This section will lay out an overview of private RainMaker's deployment workflow. It includes a short description of what is involved in each step of the process and the respective time required to complete each task. Click on each task to find out the specifics.
Prerequisites
The prerequisites stage of private RainMaker deployment ensures all necessary accounts and access permissions, which vary between the Global and China regions, are set up before proceeding.
The following are the compiled tasks in this section:
Required Accounts (Global & China)
Private RainMaker requires you to manage and maintain specific accounts and tools for full control over data and integrations.
AWS Sign-up & Login (Global & China)
Users will be guided on how to properly access an AWS account for deployment and management.
Deployment Readiness (Global & China)
Supported Regions: AWS regions where RainMaker is available will be specified.
Obtaining SAM Access: A guide on how to obtain RainMaker Serverless Application Model (SAM) repository access in AWS for deployment.
This stage sets the foundation for a smooth private RainMaker deployment by ensuring all required accounts and permissions are in place before deployment.
Pre-Deployment
The pre-deployment stage of private RainMaker involves several key configurations that vary between the Global and China regions. These configurations must be completed before the deployment stage.
The following are the compiled tasks in this section:
Email Service Setup (Global only)
Configure SES (Simple Email Service): This includes verifying email addresses, setting up Domain Key Identified Mail (DKIM), moving out of the SES sandbox, and increasing email sending limits to handle production traffic.
SMS Service Setup (Global only)
Configure SNS (Simple Notification Service): Set up the SMS service by determining the SNS region used by Cognito, moving out of the SMS sandbox, and increasing SMS sending limits.
Lambda Configuration (Global & China)
Increase Lambda concurrency limits: To handle scaling in production, the Lambda concurrency limits need to be increased.
This stage prepares all necessary services (email, SMS, and Lambda) to function at scale and ensures that the environment is ready for deployment.
Deployment
This is the main phase of the workflow, where all modules of private RainMaker are deployed. The duration of this deployment depends on the type of services required for your application.
There are three components available for deployment:
- Backend Services
- Add-On Services
- Voice Assistant (Global Only)
Component | Deployment Duration (in minutes) |
---|---|
Backend Services
| 80 |
Add-On Services
| 50 |
Voice Assistant
| 30 |
Of the three, the Backend Services component is mandatory for deployment. The estimated time needed for deployment is provided.
Voice Assistant deployment and integration are not discussed in this deployment guide. If you require this service and functionality in your application, refer to Voice Assistant Integrations.
Post Deployment
The post deployment stage consists of configurations, licensing, and additional settings for various services based on your application's needs.
The following are the compiled tasks in this section:
Configure Amazon SES for email notifications (Global only)
To bypass Cognito's 50-email-per-day limit and allow for sending verification emails to end users.
Setting up Cognito domains and callback URLs (Global only)
For third-party authentication (Google, Apple) and voice assistant integration.
Enabling Multi-Factor Authentication (MFA) (Global only)
To enhance security for end users.
Configure weather-based automation using OpenWeather API (Global only)
To enable triggers based on weather conditions.
Configure API Gateway endpoints for domain-based access (Global & China)
For domain management, AWS Route 53 can be used to map custom domain names and link hosted zones to external DNS providers.
Configure Domain Name Mapping for RainMaker Dashboard (Global & China)
The RainMaker Dashboard can be linked to a custom domain using CloudFront, ensuring a professional and accessible interface for administrators.
Configure and compile Phone Apps to work with private RainMaker (Global & China)
Details on configuring and compiling phone apps are not discussed in this deployment guide.
Please refer to the Phone App Development Section of Evaluation Hub.
Configure Voice Assistant Services and get it certified (Global only)
Configure the Alexa Smart Home Skill, Google Voice Assistant Actions, and obtain certification if required for your application.
Details of this information will not be discussed in this deployment guide.
For more details, refer to Voice Assistant Service Integrations.
A separate "Works with Alexa" product certification is also required.
Licensing
ESP RainMaker requires a license for private deployments, which can be obtained by esp-rainmaker-support@espressif.com.
Post deployment settings
Deployment settings in ESP RainMaker allow configuration of system-wide options, including OAuth-only deployment for China deployment, which uses Amazon Cognito Identity Pool instead of a User Pool and supports only social logins.
These configurations optimize the private RainMaker deployment for better usability, security, and scalability, making it ready for commercial use.