Creating a premerge CI pipeline with GitHub PR hooks
Required plugins
GitHub Pull Request Builder
A static pipeline is nice, but what we really need is a premerge CI pipeline that is triggered when a PR is created or updated. GitHub triggers a premerge build when a PR is created or updated, Jenkins runs the build, and Jenkins reports the status back to the PR in GitHub:
There are two ways to do this. For the AWS controller, GitHub can push the trigger directly since GitHub can reach the controller over the internet:
The firewalled controller, on the other hand, cannot be reached from GitHub, therefore we need a different way to trigger the build.