Addon Repositories
Addon repositories let you include extra Odoo modules in your projects. These are Git repositories containing custom addons: your organization's proprietary modules, community addons from OCA, or the official Odoo Enterprise repository.
Addon Tiers
OEC.sh organizes addon repositories in three tiers:
- Platform Addons: Available to all organizations (managed by portal admins)
- Organization Addons: Shared across all projects in your organization
- Project Addons: Specific to a single project
When the same addon exists at multiple levels, project-level takes priority over organization, and organization takes priority over platform.
Adding an Addon Repository
Add Organization Addon Repository
If you have Git connections configured, use the smart selection workflow:
- Go to Settings > Addon Repos tab
- Click Add Repository
- Step 1: Select a Git connection
- Step 2: Select a repository from your connection
- Step 3: Select a branch
- Step 4: Configure details (name is auto-filled)
- Click Save
The slug is automatically generated from the repository name.
Alternative: Enter URL Manually
If you prefer to enter the repository URL directly, or don't have Git connections:
- Click Enter URL manually instead (or if no connections exist, this is shown by default)
- Enter the Git repository URL (e.g.,
https://github.com/org/repo.git) - Enter the Git branch name
- Fill in the name and optional description
- Toggle Public repository if no authentication is needed
- Click Save
Add Project-Specific Addon Repository
- Open your project
- Go to the Settings tab
- Scroll to Project Addons
- Click Add Repository
- Enter the repository details:
- Git URL: The repository URL
- Branch: The Git branch to use
- Priority: Controls loading order (lower = higher priority)
- Click Save
Repository Settings
Each addon repository has these settings:
- Name: A display name for the repository
- Slug: Auto-generated URL-friendly identifier (locked after creation)
- Description: Optional description
- Git URL: The repository URL
- Branch: The Git branch to use
- Priority: Loading order (default: 100, lower values load first)
- Public/Private: Toggle based on repository visibility
- Install Dependencies: Enable to install requirements.txt and apt.txt
Repository Status
Each repository shows a status indicator:
- Active (green dot): Repository is included in deployments
- Disabled (gray dot): Repository is configured but not used
Click the toggle button to enable or disable a repository without deleting it.
Selecting Addons for a Project
Projects can choose which platform and organization addons to include:
- Open your project
- Go to the Settings tab
- Find the Shared Addons section
- Click Browse Addons to open the selection modal
- Use the search and filter options to find addons
- Select the addons you want to include
- Click Apply to save your selections
Selected addons will be included in the next deployment.
How Addons Are Deployed
During deployment, OEC.sh clones all selected addon repositories, installs Python and system packages listed in requirements.txt and apt.txt, and makes the addons available in Odoo's Apps menu.
Per-Environment Addon Overrides
By default, environments inherit all addon repositories configured at the project level. You can customize which addons are included and which branches they use per environment.
Excluding Addons from an Environment
- Go to your Environment > Repositories tab
- Find the addon repository you want to exclude
- Toggle the switch to OFF (disabled state)
- Click Save Changes
- Redeploy the environment for changes to take effect
For example, you might exclude development or testing addons from production, or skip heavy addons on resource-constrained environments.
Branch Overrides per Environment
Override the branch for specific addon repositories per environment:
- Go to your Environment > Repositories tab
- Find the addon repository you want to override
- Click the Branch dropdown
- Select a different branch (e.g.,
19.0-devinstead of19.0) - Click Save Changes
- Redeploy the environment for changes to take effect
Common Scenarios:
- Production: Use stable branches (e.g.,
19.0,main) - Staging: Use release candidate branches (e.g.,
19.0-rc,staging) - Development: Use development branches (e.g.,
19.0-dev,develop)
Branch overrides are specific to each environment. Changing the branch for an addon in one environment does not affect other environments.
Viewing Environment-Specific Configuration
The Repositories tab shows:
- Inherited addons: All project-level addon repositories
- Toggle status: ON (included) or OFF (excluded) per environment
- Branch: Current branch being used (with override indicator if different from default)
- Override badge: Displayed when branch differs from project default
Managing Dependencies
Addon repositories can include dependency files:
- requirements.txt: Python packages to install
- apt.txt: System packages to install
Enable the Install dependencies from this repository option when adding a repository to have these installed automatically during deployment.
Removing an Addon Repository
Remove from Organization
- Go to Settings > Addon Repos
- Find the repository you want to remove
- Click the delete icon
- Confirm the deletion
Remove from Project
- Open your project
- Go to Settings > Project Addons
- Click the delete icon next to the repository
- Confirm the deletion
Note: Removing a repository requires redeployment for changes to take effect. Uninstall any installed addons from Odoo first to avoid errors.
Private Repository Authentication
For private repositories:
- First set up a Git connection in Settings > Git Connections
- When adding the addon repository, the smart selection workflow uses your connection automatically
- For manual entry, disable the "Public repository" toggle and select your connection
- The connection provides authentication during deployment
See the Git Connections guide for details on setting up authentication.