Quick Update Your Environment
Speed up your development workflow with Quick Update - apply code changes without full redeployment.
Why Quick Update?
- Fast iteration on code changes (seconds instead of minutes)
- No database recreation or addon reinstallation
- Keep your session and test data intact
- Three modes for different types of changes
Prerequisites
Before using Quick Update, ensure:
- Environment is running - Quick Update only works on active environments
- Dev mode is enabled - Configure in Settings > Odoo Configuration
Enable Dev Mode
- Open your environment
- Go to Settings > Odoo Configuration
- Enable dev_mode option
- Save and deploy once
Once enabled, the Quick Update button appears in your environment actions.
Step 1: Choose Your Update Mode
Restart Only
When to use: Configuration changes, cache clearing, memory issues
What happens:
- Container stops
- Container starts with same code
- Odoo reloads configuration
Time: ~10 seconds
Best for:
- Testing
odoo.confchanges - Clearing Python bytecode cache
- Recovering from memory issues
- Forcing session reload
Pull & Restart
When to use: Code changes that Odoo hot-reloads automatically
What happens:
- Git pull from your branch
- Container restart
- Odoo loads updated code
Time: ~30 seconds
Best for:
- Python business logic changes
- QWeb template updates
- JavaScript and CSS changes
- Report template changes
- Most day-to-day development
Tip: Odoo automatically reloads Python files in dev mode. Pull & Restart is your go-to for most code changes.
Update All Modules
When to use: Structural changes that require module updates
What happens:
- Git pull from your branch
- Runs
odoo -u all -d database - Container restart
- All modules reloaded
Time: 1-5 minutes (depends on module count)
Best for:
- New model fields
- Modified existing fields
- New models or views
- Security rules (ir.model.access.csv)
- Record rules (ir.rule)
- Manifest changes
- Menu or action changes
Warning: Update All Modules takes longer because it updates every installed module. Use sparingly.
Step 2: Run the Update
- Open your running environment
- Click Quick Update in the actions panel
- Select your update mode
- Click Update
- Wait for completion (watch the status indicator)
Your environment stays at the same URL with your data intact.
Development Workflow Examples
Typical Development Day
Morning: Pull & Restart (get latest from team)
|
Code changes → Pull & Restart
|
Code changes → Pull & Restart
|
Add new field → Update All Modules
|
Code changes → Pull & Restart
|
End of day: Full Redeploy (clean state)Debugging a Bug
- Reproduce the bug
- Add logging/breakpoints
- Pull & Restart to apply
- Test and iterate
- Fix verified? Commit and push
Testing QWeb Changes
- Edit your template file
- Commit and push
- Pull & Restart
- Refresh browser - changes appear immediately
Adding a New Field
- Add field to model
- Add field to view
- Commit and push
- Update All Modules (required for schema change)
- Verify field appears in Odoo
When NOT to Use Quick Update
Use a full Redeploy instead when:
- Adding new addon repositories
- Changing PostgreSQL settings
- Changing resource allocation (CPU/RAM/Disk)
- Running Alembic migrations
- Installing new Python packages
- Switching Git branches
- Major structural changes
Troubleshooting
Quick Update button not visible
Cause: Dev mode not enabled
Fix:
- Go to Settings > Odoo Configuration
- Enable dev_mode
- Redeploy once
- Button will appear
Changes not appearing after Pull & Restart
Cause: Change requires module update (new field, view change)
Fix: Use Update All Modules instead
"Update All Modules" takes too long
Cause: Many modules installed
Tips:
- For development, install only modules you need
- Consider updating specific modules via terminal instead
- Use Pull & Restart for non-structural changes
Git pull fails
Cause: Local changes conflict with remote
Fix:
- Access terminal
- Check
git status - Resolve conflicts or stash changes
- Try Quick Update again
Odoo shows errors after update
Fix options:
- Check logs for specific error
- Try Update All Modules if you used Pull & Restart
- Try full Redeploy for clean state
- Restore from backup if data corrupted
Terminal Alternatives
For more control, you can run updates via the terminal:
# Restart only
supervisorctl restart odoo
# Git pull
cd /opt/odoo && git pull
# Update specific module
odoo -d database -u my_module --stop-after-init
# Update all modules
odoo -d database -u all --stop-after-initBest Practices
For Fast Iteration
- Use Pull & Restart for most changes
- Keep dev environments small (fewer modules)
- Commit frequently to enable quick pulls
For Stability
- End each day with a full Redeploy
- Use Update All Modules after structural changes
- Test on development before staging
For Team Development
- Pull & Restart to get latest team changes
- Communicate when pushing breaking changes
- Use staging for integration testing
What's Next?
- View Logs & Debug - Debug issues after updates
- Clone Environment - Create a test copy
- Daily Operations - Routine maintenance tasks