gerrit_to_platform package

Submodules

gerrit_to_platform.change_merged module

Handler for patchset-created events.

gerrit_to_platform.change_merged.change_merged(change: str = <typer.models.OptionInfo object>, change_url: str = <typer.models.OptionInfo object>, change_owner: str = <typer.models.OptionInfo object>, change_owner_username: str = <typer.models.OptionInfo object>, project: str = <typer.models.OptionInfo object>, branch: str = <typer.models.OptionInfo object>, topic: str = <typer.models.OptionInfo object>, submitter: str = <typer.models.OptionInfo object>, submitter_username: str = <typer.models.OptionInfo object>, commit: str = <typer.models.OptionInfo object>, newrev: str = <typer.models.OptionInfo object>)[source]

Handle change-merged hook.

gerrit_to_platform.cli module

CLI main for gerrit_to_platform.

gerrit_to_platform.cli.change_abandoned(change: str = <typer.models.OptionInfo object>, change_url: str = <typer.models.OptionInfo object>, change_owner: str = <typer.models.OptionInfo object>, change_owner_username: str = <typer.models.OptionInfo object>, project: str = <typer.models.OptionInfo object>, branch: str = <typer.models.OptionInfo object>, topic: str = <typer.models.OptionInfo object>, abandoner: str = <typer.models.OptionInfo object>, abandoner_username: str = <typer.models.OptionInfo object>, commit: str = <typer.models.OptionInfo object>, reason: str = <typer.models.OptionInfo object>)[source]

Handle change-abandoned hook.

gerrit_to_platform.cli.change_deleted(change: str = <typer.models.OptionInfo object>, change_url: str = <typer.models.OptionInfo object>, change_owner: str = <typer.models.OptionInfo object>, project: str = <typer.models.OptionInfo object>, branch: str = <typer.models.OptionInfo object>, topic: str = <typer.models.OptionInfo object>, deleter: str = <typer.models.OptionInfo object>)[source]

Handle change-deleted hook.

gerrit_to_platform.cli.change_restored(change: str = <typer.models.OptionInfo object>, change_url: str = <typer.models.OptionInfo object>, change_owner: str = <typer.models.OptionInfo object>, change_owner_username: str = <typer.models.OptionInfo object>, project: str = <typer.models.OptionInfo object>, branch: str = <typer.models.OptionInfo object>, topic: str = <typer.models.OptionInfo object>, restorer: str = <typer.models.OptionInfo object>, restorer_username: str = <typer.models.OptionInfo object>, commit: str = <typer.models.OptionInfo object>, reason: str = <typer.models.OptionInfo object>)[source]

Handle change-restored hook.

gerrit_to_platform.cli.cla_signed(submitter: str = <typer.models.OptionInfo object>, user_id: str = <typer.models.OptionInfo object>, cla_id: str = <typer.models.OptionInfo object>)[source]

Handle cla-signed hook.

gerrit_to_platform.cli.hashtags_changed(added: ~typing.List[str] | None = <typer.models.OptionInfo object>, removed: ~typing.List[str] | None = <typer.models.OptionInfo object>, hashtag: ~typing.List[str] | None = <typer.models.OptionInfo object>, change: str = <typer.models.OptionInfo object>, change_owner: str = <typer.models.OptionInfo object>, change_owner_username: str = <typer.models.OptionInfo object>, project: str = <typer.models.OptionInfo object>, branch: str = <typer.models.OptionInfo object>, editor: str = <typer.models.OptionInfo object>, editor_username: str = <typer.models.OptionInfo object>)[source]

Handle hashtags-changed hook.

–added, –removed, and –hashtag may be provided multiple times

gerrit_to_platform.cli.project_created(project: str = <typer.models.OptionInfo object>, head: str = <typer.models.OptionInfo object>)[source]

Handle project-created hook.

gerrit_to_platform.cli.ref_updated(oldrev: str = <typer.models.OptionInfo object>, newrev: str = <typer.models.OptionInfo object>, refname: str = <typer.models.OptionInfo object>, project: str = <typer.models.OptionInfo object>, submitter: str = <typer.models.OptionInfo object>, submitter_username: str = <typer.models.OptionInfo object>)[source]

Handle ref-updated hook.

gerrit_to_platform.cli.reviewer_added(change: str = <typer.models.OptionInfo object>, change_url: str = <typer.models.OptionInfo object>, change_owner: str = <typer.models.OptionInfo object>, change_owner_username: str = <typer.models.OptionInfo object>, project: str = <typer.models.OptionInfo object>, branch: str = <typer.models.OptionInfo object>, reviewer: str = <typer.models.OptionInfo object>, reviewer_username: str = <typer.models.OptionInfo object>)[source]

Handle reviewer-added hook.

gerrit_to_platform.cli.reviewer_deleted(context: ~typer.models.Context, change: str = <typer.models.OptionInfo object>, change_url: str = <typer.models.OptionInfo object>, change_owner: str = <typer.models.OptionInfo object>, change_owner_username: str = <typer.models.OptionInfo object>, project: str = <typer.models.OptionInfo object>, branch: str = <typer.models.OptionInfo object>, reviewer: str = <typer.models.OptionInfo object>)[source]

Handle reviewer-deleted hook.

Approval scores to remove should be done as –<aproval category id> <score>

Multiple scores may be passed

gerrit_to_platform.cli.topic_changed(change: str = <typer.models.OptionInfo object>, change_owner: str = <typer.models.OptionInfo object>, change_owner_username: str = <typer.models.OptionInfo object>, project: str = <typer.models.OptionInfo object>, branch: str = <typer.models.OptionInfo object>, changer: str = <typer.models.OptionInfo object>, changer_username: str = <typer.models.OptionInfo object>, old_topic: str = <typer.models.OptionInfo object>, new_topic: str = <typer.models.OptionInfo object>)[source]

Handle topic-changed hook.

gerrit_to_platform.comment_added module

Handler for patchset-created events.

gerrit_to_platform.comment_added.comment_added(context: ~typer.models.Context, change: str = <typer.models.OptionInfo object>, change_url: str = <typer.models.OptionInfo object>, change_owner: str = <typer.models.OptionInfo object>, change_owner_username: str = <typer.models.OptionInfo object>, project: str = <typer.models.OptionInfo object>, branch: str = <typer.models.OptionInfo object>, topic: str = <typer.models.OptionInfo object>, author: str = <typer.models.OptionInfo object>, author_username: str = <typer.models.OptionInfo object>, commit: str = <typer.models.OptionInfo object>, comment: str = <typer.models.OptionInfo object>)[source]

Handle comment-added hook.

Approval scores should be added as –<approval category id> <score>

When a score is removed it should be –<approval category id>-oldValue <score>

Multiple scores and old scores may be passed

ex: –Code-Review +1 –Code-Review-oldValue 0

gerrit_to_platform.config module

Configuration subsystem.

class gerrit_to_platform.config.Platform(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: Enum

GITHUB = 'github'
GITLAB = 'gitlab'
class gerrit_to_platform.config.Remote[source]

Bases: TypedDict

Remote Dictionary definition.

owner: str
remotenamestyle: str
repo: str
class gerrit_to_platform.config.ReplicationRemotes[source]

Bases: TypedDict

Platform Dictionary definition.

github: Dict[str, Remote]
gitlab: Dict[str, Remote]
gerrit_to_platform.config.get_config(config_type: str = 'config') ConfigParser[source]

Get the config object.

gerrit_to_platform.config.get_mapping(mapping_section: str) Dict[str, str] | None[source]

Return all of the keyword to job mappings

gerrit_to_platform.config.get_replication_remotes() ReplicationRemotes[source]

Get the replication remotes available.

gerrit_to_platform.config.get_setting(section: str, option: str | None = None) list | str[source]

Get all configuration options from a section, or specific option from a section.

gerrit_to_platform.config.has_section(section: str) bool[source]

Indicate if section exists in config file.

gerrit_to_platform.github module

Github connection module.

gerrit_to_platform.github.dispatch_workflow(owner: str, repository: str, workflow_id: str, ref: str, inputs: Dict[str, str]) Any[source]

Trigger target workflow.

gerrit_to_platform.github.filter_workflows(owner: str, repository: str, search_filter: str) List[Dict[str, str]][source]

Return a case insensitive filtered list of workflows.

gerrit_to_platform.github.get_workflows(owner: str, repository: str) List[Dict[str, str]][source]

Get all active workflows for specific repository.

gerrit_to_platform.helpers module

Common helper functions.

gerrit_to_platform.helpers.choose_dispatch(platform: Platform) Callable | None[source]

Choose platform job dispatcher.

gerrit_to_platform.helpers.choose_filter_workflows(platform: Platform) Callable | None[source]

Choose platform workflow filter.

gerrit_to_platform.helpers.convert_repo_name(remotes: ReplicationRemotes, platform: Platform, remote: str, repository: str) str[source]

Convert the repository name based on the remotenamestyle of the target platform/owner.

gerrit_to_platform.helpers.find_and_dispatch(project: str, workflow_filter: str, inputs: Dict[str, str])[source]

Find relevant workflows and dispatch them.

gerrit_to_platform.helpers.get_change_id(change: str) str[source]

Get the Gerrit change_id from an hook event.

gerrit_to_platform.helpers.get_change_number(change_url: str) str[source]

Get the Gerrit change_number

gerrit_to_platform.helpers.get_change_refspec(change_number: str, patchset: str) str[source]

Return the change refspec from the change number (str) and patch number

gerrit_to_platform.patchset_created module

Handler for patchset-created events.

gerrit_to_platform.patchset_created.patchset_created(change: str = <typer.models.OptionInfo object>, kind: str = <typer.models.OptionInfo object>, change_url: str = <typer.models.OptionInfo object>, change_owner: str = <typer.models.OptionInfo object>, change_owner_username: str = <typer.models.OptionInfo object>, project: str = <typer.models.OptionInfo object>, branch: str = <typer.models.OptionInfo object>, topic: str = <typer.models.OptionInfo object>, uploader: str = <typer.models.OptionInfo object>, uploader_username: str = <typer.models.OptionInfo object>, commit: str = <typer.models.OptionInfo object>, patchset: str = <typer.models.OptionInfo object>)[source]

Handle patcheset-created hook.

Module contents