CRAVEX Generic workflow integration #345 #381
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Issue: #345
This PR primarily adds new documentation pages covering generic integration with DejaCode using the REST API and Webhooks.
It also includes a few code changes to extend these capabilities, ensuring they offer the same feature support as the existing integration modules (Jira, GitHub, etc.).
Documentation addition:
Changes:
Framework:
The
workflow.integrations.base.BaseIntegration
class serves as the core frameworkfor the five fully supported platforms: Jira, GitHub, GitLab, SourceHut,
and Forgejo.
It centralizes the code and logic shared across these integrations to maximize
reusability and consistency. This includes handling HTTP requests, maintaining a
session, managing logging, and generating the request title and
content.
To add support for a new platform, create a subclass of
BaseIntegration
andimplement the following methods:
get_headers
– Returns the authentication headers required by the target platform.sync
– Creates or updates an external issue to reflect the given request.post_common
– Posts a comment to an external issue.