Project

General

Profile

Actions

Task #1164

closed

Setup Jenkins to perform basic integrated tests and connect it to Gerrit Code Review

Added by Alex Afanasyev about 10 years ago. Updated about 10 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Build
Target version:
Start date:
01/29/2014
Due date:
% Done:

100%

Estimated time:
20.00 h

Description

Setup a continuous integration system: After code review is submitted to Gerrit, Jenkins should receive notification, dispatch the job to linux, OS X, and FreeBSD server (initial step, just linux). After job is complete, depending on completion status, Jenkins should review the code +1 if compiled and tests ok, -1 if compilation or tests failed.

Jenkins has tons of plugins, please check them out and suggest which ones are useful and should be used by us. Junxiao / Alex can help supplying machines to run Jenkins and Jenkin slaves (for compilation jobs).


Related issues 2 (0 open2 closed)

Related to NFD - Task #1117: study the method to integrate Gerrit Code Review and Travis CIAbandonedYi Huang

Actions
Blocks NFD - Task #1215: Investigate how and set up code coverage reportingClosedYi Huang

Actions
Actions #1

Updated by Junxiao Shi about 10 years ago

  • Subject changed from Set up Jenkins to perform basic integrated tests and connect it to Gerrit Code Review to Setup Jenkins to perform basic integrated tests and connect it to Gerrit Code Review
  • Description updated (diff)
  • Parent task deleted (#1117)
Actions #2

Updated by Yi Huang about 10 years ago

  • % Done changed from 0 to 60

To Install Jenkins:

  1. Download jenkins.war from here: http://mirrors.jenkins-ci.org/war/latest/jenkins.war
  2. Run the command:

    java -jar jenkins.war
    

To install plugin:

  1. Open a browser and go to jenkins web-ui (In my case, localhost:8080)
  2. Click on "Manage Jenkins" on the left
  3. Click on "Manage Plugins"
  4. Switch to "Available" tab, and search for the plugin you want to install (e.g. Gerrit Trigger)
  5. Check on the checkbox to the left of the plugin link and install

List of plugins I am using:

  • Gerrit Trigger
  • Jenkins GIT client plugin
  • Rebuilder
  • SSH Agent Plugin

And this is the tutorial page of Gerrit trigger: https://wiki.jenkins-ci.org/display/JENKINS/Gerrit+Trigger

Actions #3

Updated by Junxiao Shi about 10 years ago

  • Category set to Build
Actions #4

Updated by Yi Huang about 10 years ago

  • % Done changed from 60 to 90

I am now able to build NDN-CPP on my Macbook using Jenkins with the plugins I mentioned. The only thing that I am not sure is that whether the trigger works. To test Gerrit trigger, I think I need a Gerrit test ground. Alex has set up one for me (http://gerrit.irl.cs.ucla.edu/#/q/status:open,n,z) but there is no project available for test.

Jenkins uses local env to build the projects. Therefore, for each of the project, we only need to install dependencies once (we can try to update dependencies every time we build and test though). Since Jenkins uses local env to build, I suggest to use Travis-CI for OSX, and Jenkins for Ubuntu. This is because setting up a Ubuntu VM for Jenkins is much easier than setting up a OSX VM.

Actions #5

Updated by Junxiao Shi about 10 years ago

  • Status changed from New to Resolved

On Gerrit I'm seeing "verified" comments from Jenkins, so I assume this task is resolved.

Actions #6

Updated by Junxiao Shi about 10 years ago

  • Status changed from Resolved to In Progress

Jenkins is now exposed at http://dyadis.cs.arizona.edu/jenkins/

This task shouldn't be Resolved because this Jenkins is not connected to Gerrit.

Actions #7

Updated by Yi Huang about 10 years ago

  • Status changed from In Progress to Resolved
  • % Done changed from 90 to 100

Since the master and ubuntu slave is up and running. I think this task is resolved.

Actions #8

Updated by Alex Afanasyev about 10 years ago

  • Status changed from Resolved to Closed
Actions

Also available in: Atom PDF