Skip to content

Documentation / Code and addons

Addon Repositories

Connect GitHub repositories containing Odoo addons.

Addon repositories are GitHub repositories that contain one or more Odoo addons. By connecting a repository to calmo.cloud, you make its addons available for deployment to your services.

Connecting a repository #

1. Set up GitHub integration #

Before connecting repositories, you need to install the calmo.cloud GitHub App on the GitHub account or organization that owns them:

  1. In the sidebar, open Developer → GitHub Installations and click Connect GitHub.
  2. GitHub asks which account to install the app on and which repositories it may access. Pick the repositories with your addons and confirm.
  3. You are sent back to calmo.cloud, where the installation is verified and listed. Repeat for every GitHub account or organization you deploy from.

If the app was installed on GitHub already, use Add Manually and enter its installation ID instead.

2. Add a repository #

Go to Addon Repositories in the sidebar and click New Repository.

3. Select the repository #

Choose a repository from your GitHub organization. calmo.cloud will scan it for Odoo addons.

4. Review discovered addons #

calmo.cloud will list all addons found in the repository, including:

  • Addon name and description
  • Supported Odoo versions
  • Dependencies

Syncing repositories #

When you push new commits to your GitHub repository, you can sync the changes in calmo.cloud to discover new addons or updated versions. calmo.cloud tracks:

  • Commit SHAs — Which exact version of the code is deployed
  • Addon versions — Per Odoo version compatibility
  • External dependencies — Python packages or system libraries required

Custom branch names per Odoo version #

By default, calmo.cloud assumes a repository uses the Odoo version number as the branch name — for example, 18.0 for Odoo 18 and 19.0 for Odoo 19. Most repositories (including OCA) follow this convention.

Some teams use different branch names — for example v18 and v19, or 18 and 19. To make calmo.cloud sync and deploy from those branches, configure the branch name per Odoo version on the repository.

On the repository edit page, in the Branch names per Odoo version section, enter the branch that this repository uses for each Odoo version. Leave a field blank to fall back to the Odoo version itself (e.g. 18.0).

Example: a repository whose Odoo 18 branch is named v18 and Odoo 19 branch is named v19 would set:

  • Odoo 18.0 branch: v18
  • Odoo 19.0 branch: v19

After saving, the next sync will look for addons on the configured branches and deployments will use those branches by default.

Per-service or per-addon branch overrides (used for feature branches and preview deployments) still take precedence over the repository default — the per-version setting only changes what calmo.cloud falls back to when no override is set.

Managing repositories #

From the repository detail page, you can:

  • View all addons in the repository
  • See which services have addons from this repository deployed
  • Sync to pick up the latest changes from GitHub
  • Remove the repository if it's no longer needed