This plugin creates links from integrates Jenkins to with Github projects.
The plugin currently has two major functionalities:
- Create hyperlinks between your Jenkins projects and GitHub
- Trigger a job when you push to the repository by groking HTTP POSTs from post-receive hook and optionally auto-managing the hook setup.
Hyperlinks between changes
The Github plugin decorates Jenkins "Changes" pages to create links to your Github commit and issue pages.
It adds a sidebar link that links back to the Github project page.
When creating a job, specify that is connects to git. Under "Github project", put in: email@example.com:Person/Project.git Under "Source Code Management" select Git, and put in firstname.lastname@example.org:Person/_Project._git
Trigger a build when a change is pushed to GitHub
To use this feature, first go to the global configuration and choose the mode in which Jenkins manages post-receive hooks in your GitHub repositories.
This plugin adds "Build when a change is pushed to GitHub" under "Build Triggers". When you check it, every new push to the repository automatically triggers a new build.
So how do that work? This plugin creates an HTTP endpoint that understands HTTP POSTs from GitHub post-receive hook.
Possible Issues between Jenkins and GitHub
- In windows, Jenkins will use the the SSH key of the user it is running as, which is located in the %USERPROFILE%\.ssh folder ( on XP, that would be C:\Documents and Settinsusername\.ssh, and on 7 it would be C:\Usersusername\.ssh). Therefore, you need to force Jenkins to run as the user that has the SSH key configured. To do that, right click on My Computer, and hit "Manage". Click on "Services". Go to Jenkins, right click, and select "Properties". Under the "Log On" tab, choose the user Jenkins will run as, and put in the username and password (it requires one). Then restart the Jenkins service by right clicking on Jenkins (in the services window), and hit "Restart".
- Jenkins does not support passphrases for SSH keys. Therefore, if you set one while running the initial Github configuration, rerun it and don't set one.