Hello,
Here are my notes for deployment
First download these files
https://gist.github.com/tarbib/61354c766b01cc9c64675d6ad7679cdc
Then
- Fetch Addons and Repositories
Use a setup script to clone the required OCA repositories and symlink the modules into your addons directory.
Requirements:
OCA Repositories: module-composition-analysis, web, queue, connector, server-tools.
Branch: Use the 18.0 branch for all repositories.
Run ./setup_addons.sh
It will :
1. Clone repos into ./oca_repos
2. Symlink modules from ./oca_repos to ./addons
- Docker Environment Configuration
Dockerfile
Build a custom image to include required system packages and Python libraries:
System Dependencies: git is mandatory for repository scanning.
Python Libraries: openupgradelib, gitpython, odoo-addons-parser, oca-port, pyyaml, and cachetools.
Storage Path: Create /mnt/mca-data and set ownership to odoo:odoo.
Docker Compose
Define your services, ensuring the mca-data volume is persistent and the configuration is mapped:
Mount ./addons to /mnt/extra-addons.
Mount ./oca_repos to /mnt/oca_repos.
Mount a volume for MCA data to /mnt/mca-data.
- Server Configuration (odoo.conf)
Adjust these settings to handle long-running analysis jobs:
Addons Path: Include /mnt/extra-addons and /mnt/oca_repos.
Server Wide Modules: Must include base,web,queue_job.
Workers & Limits: Enable at least 2-4 workers and increase timeouts for repository processing:
limit_time_cpu = 9000
limit_time_real = 10800
Queue Job Channels: Configure specific channels for repository scanning (see https://gist.github.com/tarbib/61354c766b01cc9c64675d6ad7679cdc#file-odoo-conf-L69).
- UI Setup & Post-Installation
After starting Odoo, complete the following in the web interface:
Storage: Set the Storage local path to /mnt/mca-data/.
Authentication: Configure a GitHub Classic Token (starting with ghp_) for repository access.
Versions: Unarchive the source version (e.g., 14.0).
Migration Path: Create a path from the source (e.g., 14.0) to the target (18.0).
Execution: Manually trigger the MCA scheduled actions to start the analysis.
Hello,
Here are my notes for deployment
First download these files
https://gist.github.com/tarbib/61354c766b01cc9c64675d6ad7679cdc
Then
Use a setup script to clone the required OCA repositories and symlink the modules into your addons directory.
Requirements:
OCA Repositories: module-composition-analysis, web, queue, connector, server-tools.
Branch: Use the 18.0 branch for all repositories.
Run ./setup_addons.sh
It will :
1. Clone repos into ./oca_repos
2. Symlink modules from ./oca_repos to ./addons
Dockerfile
Build a custom image to include required system packages and Python libraries:
System Dependencies: git is mandatory for repository scanning.
Python Libraries: openupgradelib, gitpython, odoo-addons-parser, oca-port, pyyaml, and cachetools.
Storage Path: Create /mnt/mca-data and set ownership to odoo:odoo.
Docker Compose
Define your services, ensuring the mca-data volume is persistent and the configuration is mapped:
Mount ./addons to /mnt/extra-addons.
Mount ./oca_repos to /mnt/oca_repos.
Mount a volume for MCA data to /mnt/mca-data.
Adjust these settings to handle long-running analysis jobs:
Addons Path: Include /mnt/extra-addons and /mnt/oca_repos.
Server Wide Modules: Must include base,web,queue_job.
Workers & Limits: Enable at least 2-4 workers and increase timeouts for repository processing:
limit_time_cpu = 9000
limit_time_real = 10800
Queue Job Channels: Configure specific channels for repository scanning (see https://gist.github.com/tarbib/61354c766b01cc9c64675d6ad7679cdc#file-odoo-conf-L69).
After starting Odoo, complete the following in the web interface:
Storage: Set the Storage local path to /mnt/mca-data/.
Authentication: Configure a GitHub Classic Token (starting with ghp_) for repository access.
Versions: Unarchive the source version (e.g., 14.0).
Migration Path: Create a path from the source (e.g., 14.0) to the target (18.0).
Execution: Manually trigger the MCA scheduled actions to start the analysis.