Difference between revisions of "Jenkins"

From Pumping Station One
Jump to navigation Jump to search
Line 5: Line 5:
 
== Github Integration ==
 
== Github Integration ==
  
Github integration requires an ouath token to create post commit callbacks to the jenkins server. You can either let jenkins manage all webhooks for all your projects, or configure each project yourself.
+
Jenkins is configured to be [https://github.com/buildmon buildmon] on github.  Add buildmon as a collobarator to your repo in the repo settings >> collaborators menu.
  
=== Option 1: Let Jenkis Manage Webhooks ===
+
Once you have done that, jenkins will have all the access it needs to register webcallbacks to auto build on commit and set build status messages for pull requests.
 
 
Each github user only needs to do this once.
 
 
 
* go to https://github.com/settings/applications
 
* click "Generate New Token"
 
** Token Description: https://jenkins.pumpingstationone.org/
 
** write:repo_hook - Checked
 
** read:read:repo_hook - Checked
 
** admin:repo_hook - Checked
 
** All other options should be unchecked
 
* Click Generate Token
 
* Copy the token under "Personal access tokens".
 
* go to https://jenkins.pumpingstationone.org/configure and scroll down until you see "GitHub Web Hook"
 
* Click Add
 
** API URL: leave this blank
 
** username: your github username
 
** OAuth token: Paste the token from "Personal access tokens"
 
* click save
 
 
 
=== Option 2: Manually Manage Webhooks ===
 
 
 
You will have to do this for each github project you add to jenkins.
 
 
 
* go to your project page on github.
 
* Click "Settings" in the right sidebar
 
* Click "Webhooks and Services"
 
* Click "Add Service" and type "jenkins"
 
** You should see "Jenkins (Git plugin)"
 
* In the "Jenkins hook url" box, enter "https://jenkins.pumpingstationone.org/github-webhook/"
 
* Click "Add Service"
 
  
 
== Adding A Buildslave ==
 
== Adding A Buildslave ==

Revision as of 02:07, 12 July 2015

General info

Jenkins is an automatic build server. It compiles code projects on change

Github Integration

Jenkins is configured to be buildmon on github. Add buildmon as a collobarator to your repo in the repo settings >> collaborators menu.

Once you have done that, jenkins will have all the access it needs to register webcallbacks to auto build on commit and set build status messages for pull requests.

Adding A Buildslave

   sudo pacman -S libvirt qemu jdk8-openjdk
   sudo useradd --home-dir /srv/jenkins --groups kvm --create-home --system jenkins
   sudo -u jenkins mkdir ~jenkins/.ssh
   sudo chown jenkins:jenkins /srv/jenkins/.ssh/authorized_keys
   sudo chmod 700 /srv/jenkins/.ssh/authorized_keys