combodo-vcs-integration connects GitHub events to iTop objects through configurable automations.
Main use cases:
- append commit / pull request activity to tickets
- enrich iTop objects with repository events
- monitor webhook synchronization status
Core objects:
VCSConnectorVCSWebhookVCSWebhookPayload(queue for asynchronous processing)VCSEventVCSAutomation(abstract)VCSLogJournalAutomationVCSLogAttributeAutomation
Link objects:
lnkVCSAutomationToVCSWebhooklnkVCSAutomationToVCSEventlnkContactToVCSWebhooklnkDocumentToVCSWebhook
Module dependencies:
itop-structure/3.2.0itop-tickets/2.7.0itop-request-mgmt/3.2.0
Composer dependency:
fastvolt/markdown
- Install the extension package in your iTop instance.
- Ensure dependencies are available in your environment.
- Run iTop setup/upgrade.
- (If installed from sources) install PHP dependencies.
cd /path/to/combodo-vcs-integration
composer installThe module reads the following settings:
webhook_user_id: technical iTop user used by webhook processinguser_resolver_class_name: optional custom resolver class for VCS user -> iTop user mappingsynchro_auto_interval: background synchronization interval (seconds)asynchronous_handler_interval: async payload handler interval (seconds)asynchronous_disabled: iftrue, process payload synchronously ingithub.phpwebhook_host_overload: optional host override used to build webhook callback URLwebhook_scheme_overload: optional scheme override (http/https)
Inbound endpoint:
github.php?webhook=<id>
Processing steps:
- Resolve
VCSWebhookfrom thewebhookquery parameter. - Validate
X-Hub-Signaturewhen a secret is set. - Parse payload (
application/jsonorapplication/x-www-form-urlencoded). - Read event type from
X-Github-Event. - Process immediately or enqueue into
VCSWebhookPayloaddepending onasynchronous_disabled.
Automations are linked to webhooks and events, then executed when conditions match.
- regex condition format:
path=valueRegex - helper expressions supported in conditions:
NOT_NULL(...)IS_KNOWN_USER(...)IS_UNKNOWN_USER(...)
Built-in sample data includes events such as push, pull_request, issues, and example automations.
VCSConnector supports multiple GitHub authentication modes:
personalapp_repositoryapp_userapp_organization
The extension introduces a dedicated rights group/profile for management actions:
- group:
VCS - profile:
VCS Manager
Popup menu actions (synchronize, check synchronization, regenerate token) are restricted to authorized profiles.
module.combodo-vcs-integration.phpdatamodel.combodo-vcs-integration.xmlgithub.phpsrc/Service/AutomationManager.phpsrc/Service/GitHubManager.phpsrc/Service/GitHubAPIService.phpsrc/BackgroundProcess/VCSWebhookSynchroProcess.phpsrc/BackgroundProcess/VCSWebhookAsynchronousHandler.php
Stable packages are available on the iTop Hub Store.
This extension is sponsored, led, and supported by Combodo.