Clone an Environment
Create an exact copy of your environment for testing or staging.
Why Clone?
- ✅ Test changes without risking production
- ✅ Create staging from production data
- ✅ Reproduce bugs in isolation
- ✅ Train users on real data
- ✅ Demo to clients with realistic data
Step 1: Open Clone Dialog
- Open the environment you want to clone
- Click the ⋮ menu (three dots)
- Select Clone
Step 2: Configure the Clone
Basic Settings
- Name: Auto-generated, or customize it
- Type: Development, Staging, or Production
- Server: Same server or different one
Data Sanitization
Choose what to clean from the cloned data:
| Preset | What It Does | Best For |
|---|---|---|
| Recommended | Clears emails, passwords, API keys, cron jobs | Most use cases |
| Minimal | Clears only email queue | Quick testing |
| Full | Clears everything sensitive + resets sequences | Demos, training |
| None | Exact copy, nothing sanitized | Internal staging |
Important: For GDPR compliance, use "Recommended" or higher when cloning production.
Step 3: Start the Clone
- Review your settings
- Click Clone Environment
- Wait for the clone to complete
Status shows 🔵 Cloning during the process.
Step 4: Access Your Clone
Once complete:
- Clone appears in your environment list
- Status shows 🟢 Running
- Click the URL to access
Clone has a new subdomain: project-dev-5678.apps.oec.sh
If the clone fails: The target environment is preserved exactly as it was before the clone started. No partial writes are committed and no data is lost. You can retry the clone immediately.
What Gets Cloned?
| Included | Not Included |
|---|---|
| Database | Scheduled cron runs |
| Filestore | Active user sessions |
| Environment config | Email queue (if sanitized) |
| Addons | External integrations |
Sanitization Details
Recommended Preset
Clears:
- User passwords (reset to default)
- Email queue
- OAuth tokens
- API keys
- Outbound mail server settings
- Scheduled action last runs
Full Preset
Everything in Recommended, plus:
- Partner emails (anonymized)
- Sequences reset to 1
- Audit logs cleared
Clone to Different Server
Want the clone on a different server?
- In clone settings, select Server
- Choose your target server
- Clone will be created on that server
Useful for:
- Geographic distribution
- Load balancing
- Different security zones
Clone Duration
Time depends on database size:
| Database Size | Approximate Time |
|---|---|
| < 1 GB | 2-5 minutes |
| 1-5 GB | 5-15 minutes |
| 5-20 GB | 15-45 minutes |
| > 20 GB | 45+ minutes |
Best Practices
For Testing
- Clone production to staging weekly
- Use "Recommended" sanitization
- Run your tests
- Delete when done
For Demos
- Clone with "Full" sanitization
- Add sample data if needed
- Share URL with client
- Delete after demo
For Development
- Clone production monthly (or as needed)
- Use "Minimal" for quick feedback
- Keep development environments small
Troubleshooting
Clone stuck on "Cloning"
If stuck for more than expected time:
- Check server disk space
- Check network connectivity
- Contact support if over 2x expected time
Clone has permission errors
After cloning, some users may need password resets:
- Use Odoo admin to reset passwords
- Or use "Full" sanitization to reset all
Addons not working in clone
- Check addon dependencies
- Verify Git branch is accessible
- Reinstall addons if needed