Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The GitHub component interacts with the GitHub API by encapsulating egit-github. It currently provides polling for new pull requests, pull request comments, tags, and commits.  It is also able to produce comments on pull requests, as well as close the pull request entirely.

Rather than webhooks, this endpoint relies on simple polling. Reasons include:

  • Concern for reliability/stability
  • The types of payloads we're polling aren't typically large (plus, paging is available in the API)
  • The need to support apps running somewhere not publicly accessible where a webhook would fail

Note that the GitHub API is fairly expansive.  Therefore, this component could be easily expanded to provide additional interactions.

...

URI format

Code Block
languagetext
gihubgithub://endpoint[?options]

Mandatory Options:

...

Producer Endpoints:

Endpoint

Body Type

Required Message Headers

pullRequestComment

String (comment text)

  • GitHubPullRequest (integer) (REQUIRED): Pull request number.
  • GitHubInResponseTo (integer): Required if responding to another inline comment on the pull request diff. If left off, a general comment on the pull request discussion is assumed.

closePullRequest

none

  • GitHubPullRequest (integer) (REQUIRED): Pull request number.

createIssue (From Camel 2.18)

String (issue body text)

  • GitHubIssueTitle (String) (REQUIRED): Issue Title.

URI Options

Name

Default Value

Description

delay

60

in seconds