Creates a set of modules used for handling a version control patform.
auto_awesome What this module does
AI-generated from the code · Odoo 18.0Track code activity from version control platforms (GitHub, GitLab, etc.) inside Odoo: repositories, branches, pull/merge requests, reviews and comments, plus contributor statistics on contacts.
This module brings your version control platform data into Odoo. Users get a new "Version Control Platform" menu with sections for Platforms, Repositories and Pull Requests, a Reporting section, a Technical section (Branches, Repository Branches, Comments, Reviews, Request Labels) and a Settings section (Organizations, Users, Processing Rules, Platform Types).
Records are organised around a platform (one account on a host such as GitHub or GitLab), its repositories, their branches, and the requests made against them. Requests carry status (draft, open, merged, closed), labels, review and comment counts, and are linked to a contributor and an organization, which can be linked to a contact (res.partner).
On contacts, computed counters show merged requests, created requests, comments and reviews for the last twelve months. A contact image can be synchronised from a linked platform user's avatar; only one user may be flagged for this, otherwise an error is raised.
Scheduled jobs refresh platforms, repositories, branches and users, and process branch rules. Processing rules (currently a code-counting analysis) run on matching branches and store counts of code, documentation and empty lines, with failures recorded on the branch.
A pivot and search report, "Management Reporting", summarises requests, reviews and comments by platform, user, organization and repository.
Depends on
Required by other modules
Menus it adds
Models and fields (18)
- vcp.host · new modelname, active, type_id
- vcp.rule · new modelname, paths, active, rule_type, branch_pattern
- vcp.user · new modelname, email, active, company, host_id, avatar_url, partner_id, external_id, user_update_date, sync_image_to_partner
- vcp.branch · new modelname, platform_id (Platform)
- vcp.review · new modelbody, state, user_id, partner_id, request_id, external_id, platform_id, submitted_at, repository_id, organization_id, partner_organization_id (Organization Partner)
- res.partner · extends an existing modelimage_1920, vcp_reviews (Reviews), vcp_comments (Comments), vcp_user_ids, vcp_merged_requests (Merged Requests), vcp_created_requests (Created Requests), vcp_organization_ids
- vcp.comment · new modelbody, user_id, created_at, partner_id, request_id (Request), updated_at, external_id, repository_id, organization_id, partner_organization_id (Organization Partner)
- vcp.request · new modelurl, name, state, number, status, commits, user_id (Contributor), is_draft, additions, branch_id, closed_at, deletions, is_merged, label_ids (Labels), created_at, partner_id, review_ids (Reviews), updated_at, comment_ids (Comments), external_id (Externa ID), review_count, comment_count, repository_id, total_comments, organization_id, review_comments, partner_organization_id (Organization Partner)
- vcp.platform · new modelkind, name, active, host_id, key_ids (API Keys), rule_ids (Processing Rules), branch_ids, local_path, description, last_update, repository_ids, repository_count, short_description, update_interval_days, fetch_repository_fork, fetch_repository_archived, scheduled_information_update, fetch_repository_branch_pattern, default_repository_scheduled_branch_update, default_repository_scheduled_information_update
- vcp.host.type · new modelcode, name, active, code_kind
- vcp.repository · new modelname, active, is_fork, rule_ids (Processing Rules), from_date, branch_ids, created_at, fork_count, local_path, test_field, description, platform_id, request_ids, branch_count, request_count, watchers_count, last_commit_date, stargazers_count, branch_update_date, fetch_branch_pattern, override_parent_rules, scheduled_branch_update, scheduled_information_update
- vcp.organization · new modelname, host_id, partner_id, external_id
- vcp.platform.key · new modelname, platform_id (Platform)
- vcp.request.label · new modelname, color, request_ids (Requests)
- vcp.rule.information · new modelres_id, rule_id, res_model, code_count, empty_count, total_count, scanned_files, documentation_count
- vcp.management.report · new modeldate, user_id, platform_id, review_count, comment_count, repository_id, merged_pr_count, organization_id, created_pr_count
- vcp.repository.branch · new modelrule_ids (Processing Rules), branch_id (Branch), last_commit, platform_id, repository_id, rule_failure_msg, override_parent_rules, update_rule_processing_date
- vcp.rule.information.mixin · new modellocal_path, rule_information_ids
Text generated by AI (DeepSeek) from reading the Odoo 18.0 code on GitHub; it may contain mistakes, so check the code before deciding. The module is very large and only part of the code was read. View the code on GitHub
Availability by version
Reviewed: 2026-11-03Confirmation status: 1 confirmed, 8 with no information of 9 versions.
Sources · Odoo 18.0
Confirmed on 2026-11-03 in branch 18.0 of OCA/version-control-platform.
terminal Installation and usage
OCA documentation · Odoo 18.0Usage
Source · Odoo 18.0Creation
First step is to create a Platform. In the platform we need to set the host (you might need to create it on gitlab) and add some Platform Keys.
This keys will allow us to integrate with the origin system.
Refresh
By default, the system provides some refresh rules for platforms and repositories, however we can deactivate or activate it manualy.
Management of rules
One of the capabilities of this module is the generation of rules.
This rules allow us to know some information of the repository.
By default, the system adds some rules aligned with odoo to make it easier and allows you to see some examples.
In order to launch this rules, the system must download the code locally.
By default the system is using the following main path (in order, the first one not null is selected):
- Parameter vcp_management.source_code_local_path
- In odoo configuration file, the option source_code_local_path
- System parameter SOURCE_CODE_LOCAL_PATH
No verified information in OCA: Installation, Configuration.
Installation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.