NOTE: This plugin is incompatible with version 2.177 of Jenkins. Upgrading to 2.260 solves the issue. Please see #24 for more information.
This plugin listens for comments on pull requests and will trigger a GitHub multibranch job if a comment body matches the configured value, such as "rerun the build". This is implemented as a branch property on multibranch jobs.
For the plugin to work your multibranch job must use one of the "Discover pull requests from..." behaviors. For example:
To enable the plugin's functionality, simply add one or more of the branch properties from this plugin to the multibranch job and configure the regular expression to match against the comment body.
Please ensure that you have a GitHub server properly connected via the Jenkins configuration, or else the plugin will not operate correctly.
The regex is not surrounded with any markers and uses the Pattern.CASE_INSENSITIVE
and Pattern.DOTALL
Java flags.
For example, ^rerun the build$
only matches comments that contain no other text besides "rerun the build" (case insensitive), while rebuild
would match comments such as
Please
rebuild this
and
Commence the rebuilding
If no pattern is provided, ^REBUILD$
is used.
This plugin only triggers builds from trusted users. This is an incompatible change since July 2022 releases of the plugin. If you would like untrusted users to be able to trigger builds, check the "Allow Untrusted Users" checkbox. Use this feature with caution because it may open up security issues with your Jenkins infrastructure.
When using the GitHub organization folders approach to creating multibranch pipeline jobs, the branch properties may not be edited according to design. Instead, use the functionality built into the GitHub Plugin with using the issueCommentTrigger in your pipeline script. This works in a similar way to this plugin. The main advantage of this plugin is that it may be used from the Job DSL plugin to create jobs with this branch property already added (in the case when you don't trust pipeline scripts, etc).
Releases starting with 58.v945be9f1661f
have been moved to incremental versioning. See the release history and log on the releases page.
Add GitHub comment body in the cause object when a build is triggered (thanks to @jebentier for PR #25).
Support newer SCM/branch source plugins. Use this release if you are using the 2.x releases of the SCM API-related plugins.
Add support for building a job when a PR title or body is updated as well by using a separate branch property.
Initial release
Use the instructions found in the Jenkins docs for GitHub releases. The main point here is to make sure the PR that releases a new feature has the "enhancement" label on it, and this will automatically trigger a new release.