Troubleshooting
Deployment Failures

Deployment Failures

Troubleshoot common deployment issues in OEC.sh. This guide covers build failures, container startup problems, Git errors, and module installation issues.


Build Failures

Symptom

Deployment fails during the build phase with errors in the deployment logs.

Common Causes and Solutions

Python Dependency Conflicts

Symptom: pip install fails with version conflicts or missing packages.

Solution:

  1. Check your requirements.txt for pinned versions
  2. Ensure dependencies are compatible with your Odoo version
  3. Remove conflicting or duplicate packages
# requirements.txt - Pin compatible versions
# For Odoo 17.0
werkzeug==2.0.3
psycopg2-binary==2.9.9
⚠️

Odoo versions have specific dependency requirements. Check the Odoo documentation (opens in a new tab) for your version's requirements.

Insufficient Disk Space

Symptom: Build fails with "no space left on device" error.

Solution:

  1. Go to Server → Metrics to check disk usage
  2. Remove unused environments or old backups
  3. Scale up disk resources if needed: Environment → Settings → Resources

Docker Build Timeout

Symptom: Build hangs or times out without completing.

Solution:

  1. Check server CPU/RAM usage during build
  2. Consider scaling up resources temporarily for large builds
  3. Split large module installations across multiple deployments

Container Startup Issues

Symptom

Container fails to start or crashes immediately after starting.

Common Causes and Solutions

Port Already in Use

Symptom: Error message about port 8069 or 8072 already bound.

Solution:

  1. Check for zombie containers: Go to Environment → ⋮ menu → Force Restart
  2. If issue persists, contact support with the environment ID

Missing Environment Variables

Symptom: Odoo fails to start with configuration errors.

Solution:

  1. Verify required environment variables are set
  2. Go to Environment → Settings → Environment Variables
  3. Ensure database credentials are correct
DB_HOST=localhost
DB_PORT=5432
DB_USER=odoo
DB_PASSWORD=your_password
DB_NAME=your_database

Memory Limit Exceeded

Symptom: Container killed with OOM (Out of Memory) error.

Solution:

  1. Check memory usage: Server → Metrics
  2. Increase RAM allocation: Environment → Settings → Resources
  3. Reduce worker count if running multiple environments

Git Errors

Symptom

Deployment fails when cloning or pulling from Git repository.

Common Causes and Solutions

Authentication Failed

Symptom: "Authentication failed" or "Permission denied" error.

Check Git Connection

Go to Settings → Git Connections and verify the connection status.

Regenerate Token

If using Personal Access Token (PAT), regenerate it with correct scopes:

  • GitHub: repo scope
  • GitLab: read_repository scope

Re-link Connection

Remove and re-add the Git connection if using OAuth.

Branch Not Found

Symptom: "Remote branch not found" error.

Solution:

  1. Verify the branch exists in your repository
  2. Check for typos in branch name
  3. Update branch in Environment → Settings → Branch

Submodule Errors

Symptom: "Could not clone submodule" error.

Solution:

  1. Ensure all submodules are accessible with the same credentials
  2. Check .gitmodules file for correct URLs
  3. Consider using addon repositories instead of submodules

Module Installation Failures

Symptom

Odoo starts but modules fail to install or update.

Common Causes and Solutions

Module Not Found

Symptom: "Module not found" or "Unknown module" error.

Solution:

  1. Verify module is in addon path
  2. Check addon repository configuration: Project → Repositories
  3. Ensure module folder contains __manifest__.py (Odoo 10+) or __openerp__.py (older versions)

Dependency Missing

Symptom: "Unmet module dependency" error.

Solution:

  1. Install the required dependency module first
  2. Check __manifest__.py for the depends list
  3. Add missing dependencies to your addon repositories

Database Migration Error

Symptom: Module update fails during database migration.

Solution:

  1. Check Odoo logs for specific migration errors
  2. Create a backup before retrying
  3. For major version upgrades, consider using the clone with sanitization feature

Best Practice: Always create a backup before module updates. Go to Environment → Backups → Create Backup.


Deployment Timeout

Symptom

Deployment times out before completing.

Common Causes and Solutions

Large Codebase

Symptom: Git clone takes too long for large repositories.

Solution:

  1. Use shallow clone if repository has long history
  2. Consider splitting large monorepos
  3. Move large assets to external storage

Slow Module Installation

Symptom: Module installation takes longer than expected.

Solution:

  1. Install modules in smaller batches
  2. Check for heavy data migration scripts
  3. Scale up resources temporarily for initial setup

Checking Deployment Logs

Access Deployment History

Go to Project → Deployments to see all deployments.

View Detailed Logs

Click on a deployment to see the full log output.

Filter by Status

Use the status filter to find failed deployments quickly.

Download Logs

Click Download to save logs for further analysis or support requests.


Prevention Tips

  1. Test Locally First - Run your code locally before deploying
  2. Use Staging - Deploy to a staging environment before production
  3. Pin Dependencies - Always pin exact versions in requirements.txt
  4. Monitor Resources - Keep an eye on server metrics
  5. Backup Regularly - Always have a recent backup before major changes

Still Having Issues?

If the above solutions don't resolve your problem:

  1. Collect Information:

    • Environment ID
    • Deployment ID
    • Error messages from logs
    • Recent changes made
  2. Contact Support: Email support@oec.sh

⚠️

Pro & Agency Plans include priority support with faster response times.