Difference between revisions of "Jenkins"

From Pumping Station One
Jump to navigation Jump to search
 
(5 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 +
{{mbox |type=warning |text=This system has been decommissioned. [[IT Infrastructure|Up-to-date IT information can be found here]] }}
 +
 
== General info ==
 
== General info ==
  
Line 5: Line 7:
 
== 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.
+
* Go to your projects "settings" link in github
 
+
* Click "Webhooks & Services"
=== Option 1: Let Jenkis Manage Webhooks ===
+
* Click "Add Service"
 
+
* Type "Jenkins" and then click "Jenkisn (Git Plugin)"
Each github user only needs to do this once.
+
* In the '''Jenkins Url ''' field, type "https://jenkins.pumpingstationone.org/github-webhook/"
 +
* Clock "Add Service"
  
* go to https://github.com/settings/applications
+
After following these steps, you will be able to turn on the "Build when a change is pushed to GitHub" build trigger for projects.
* 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 ==
  
     sudo pacman -S libvirt qemu
+
     sudo pacman -S libvirt qemu jdk8-openjdk
 
     sudo useradd --home-dir /srv/jenkins --groups kvm --create-home --system jenkins
 
     sudo useradd --home-dir /srv/jenkins --groups kvm --create-home --system jenkins
 
     sudo -u jenkins mkdir ~jenkins/.ssh
 
     sudo -u jenkins mkdir ~jenkins/.ssh
 
     sudo chown jenkins:jenkins /srv/jenkins/.ssh/authorized_keys
 
     sudo chown jenkins:jenkins /srv/jenkins/.ssh/authorized_keys
 
     sudo chmod 700 /srv/jenkins/.ssh/authorized_keys
 
     sudo chmod 700 /srv/jenkins/.ssh/authorized_keys
 +
 +
[[Category: Systems]]

Latest revision as of 14:04, 1 November 2018

General info

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

Github Integration

After following these steps, you will be able to turn on the "Build when a change is pushed to GitHub" build trigger for projects.

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