Introduction
New WebHook framework using Python payload parsers and reusing agent registration module and PlatformEngine.
Some Benefits are
•Process complex messages like json array
•Use same Platform Engine for Agent and WebHook
•Create Self relationship using relationship metadata
•Possible to capture data using mixture of pull and push mechanism
•Reduce Maintenance effort like auditing
•Easy to configure from UI screen
•Easy for Enhancement, Implementation engineer will modify based on client requirement
•Possible to use multiple field for insightsTimeX calculation like commitTime, UpdatedAt
Prerequisite
Supported from Insights Application version > 8.0
Set up WebHook Subscriber PlatformInsightsWebHook as mention in Installing Webhook Subscriber and Webhook Engine
Daemon Agent should be configured
Make sure that your necessary port are open test following URL from any other system which is outside of network http://<HostIP>/webhook/PlatformInsightsWebHook/insightsDevOpsWebHook?webHookName=git_webhook
Make sure that "webhookHost": updated in uiConfig.json ex: http://<HostIP>/webhook/
Currently WebHook agent supported for both Python2 and Python3
Currently Supported tool
GitHub
GitLabIssue
UI Configuration
Click "Agent Management" under the Admin section.
To configure WebHook, click Add button on the top right corner.
WebHook configuration from Agent Management screen is supported from version v8.0.
Select the OS type, type as WebHook, version and tool for which WebHook needs to be configured.
Add WebHook details and click on add button below to register. Change Dynamic template as per client needs
Once WebHook is registered successfully, then URL for the selected WebHook can be copied by using Copy to Clipboard Icon.
Once the link is copied then it needs to be added in the actual tool’s WebHook.
please refer Agent Management section under 'Configuration' helps to Add / Change Status / Edit / Delete Agents. for more Agent operation.
WebHook Subscriber
Tool WebHook will push data to WebHook Subscriber when an event occurs and WebHook subscriber will publish the received data to the WebHook queue mentioned in WebhookPayloadDataQueue.
WebHook Agent
Registered WebHook agent will consume data from WebhookPayloadDataQueue, processes message according to the dynamic template mentioned in config.json and publish to the data in publish.data queue.
Engine
Platform Engine will consume this message from data queue and store it in neo4j.
Note: Same Platform Engine will be used for both Agent and WebHook Agent.