What Are Environments?
An environment is a separate instance of your Elementum organization where you can develop and test changes in isolation. Each environment:- Has its own subdomain (e.g.,
dev-yourorg.elementum.io) - Requires its own CloudLink configuration to connect to data
- Contains independent copies of deployed apps
- Operates completely separate from production
Safe Development
Build and modify apps without risk to production workflows or data
Isolated Testing
Test changes with real configurations before deploying to production
Team Collaboration
Multiple team members can work in separate environments simultaneously
Controlled Releases
Deploy apps between environments when changes are verified and ready
How Environments Work
Your organization starts with a Production environment - the default, live environment where your business processes run. From Production, you can create additional environments for different purposes:- Development - For building new features and experimenting
- Testing - For QA validation before production release
- Staging - For final verification with production-like data
- Training - For onboarding users without affecting live data
What Is Promotion (Deployment)?
Promotion is the process of copying an app and all its configurations from one environment to another. When you deploy an app:- All app configurations are copied to the target environment
- Associated objects (automations, layouts, flows, approval processes, etc.) are included
- The deployment is tracked with status and history
Deployment copies all app configurations and associated objects to the target environment. This ensures the app works the same way in both environments.
Deployment Direction
You can deploy apps in any direction:- Environment to Production - Push tested changes to your live environment
- Production to Environment - Copy a production app to test modifications
- Environment to Environment - Move apps between development, testing, or staging
What Gets Deployed
When you deploy an app, the following configurations are included:Automations
All automation rules, triggers, and actions configured for the app
Layouts and Forms
Record detail layouts, related views, and form builder configurations
Flows
Workflow stages, transitions, and process definitions
Approval Processes
Approval chains, delegations, and approval configurations
Assignment Rules
Rules for automatically assigning records to users or groups
Reports and Analytics
Report definitions and analytics configurations
Environment Requirements
CloudLink Configuration
Since environments are isolated, they need independent connections to your data warehouse. After creating an environment:- Configure CloudLink with appropriate Snowflake credentials
- Ensure the service account has access to required databases and tables
- Verify the connection before deploying apps
Post-Deployment Configuration
Apps with Tables or Elements linked to Snowflake require additional configuration after deployment:- Database Selection - Choose the database in the new environment’s CloudLink
- Schema Selection - Select the appropriate schema containing your data
- Table Selection - Map to the corresponding table in the new environment
- Field Mapping - Match source fields to target fields for each dataset
Use Cases
Development and Testing Workflow
- Create a “Development” environment from Production
- Deploy an existing app to Development for modifications
- Make and test changes in the Development environment
- When ready, deploy the updated app back to Production
Staging for Quality Assurance
- Create a “Staging” environment that mirrors Production
- Deploy apps from Development to Staging for QA review
- Validate functionality with production-like data
- After approval, deploy from Staging to Production
Training and Sandbox
- Create a “Training” environment for user onboarding
- Deploy apps that users will work with in production
- Allow users to practice without affecting live data
- Update Training environment as Production apps evolve
Best Practices
Environment Naming
Use clear, descriptive names that indicate the environment’s purpose:DevelopmentorDev- For active development workTestingorQA- For quality assurance validationStaging- For pre-production verificationTraining- For user onboarding and practice
CloudLink Management
- Use separate Snowflake service accounts for each environment when possible
- Document which databases and schemas each environment accesses
- Regularly verify CloudLink connections are active and healthy
Deployment Strategy
- Test thoroughly in non-production environments before deploying to Production
- Use consistent naming conventions across environments
- Document deployments and track changes in deployment history
- Deploy one app at a time to isolate issues
Access Control
- Limit who can create environments and deploy apps
- Use separate user accounts for testing in non-production environments
- Review environment access periodically
Next Steps
Environment Setup Guide
Step-by-step instructions for creating environments and deploying apps
CloudLink Setup
Configure CloudLink connections for your environments
Apps Overview
Learn about apps and how they organize your business processes
Snowflake Connection
Detailed guide for connecting Snowflake to Elementum