Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Jenkins

Revision as of 08:09, 31 August 2017 by Frederic.gurr.eclipse-foundation.org (Talk | contribs) (Jenkins configuration and tools)

Jenkins logo.png

About Jenkins

Jenkins is a continuous integration (CI) server. It is in use on Eclipse servers for Eclipse projects as part of the Common Build Infrastructure (CBI). This page is about the hosted service at Eclipse.org. For more information on the project itself, or to download Jenkins, please see the Jenkins project page.

Since Hudson is not maintained anymore, Jenkins is the replacement for it. They share a common ancestry, but have diverged in the past. Eventually all Hudson Instances Per Project (HIPP) will be completely replaced by Jenkins Instances Per Project (JIPP). The migration will be slow in the beginning, to minimize risks and impact on the running build infrastructure.

General Information

Jenkins instances are maintained by the Eclipse Webmasters/Release Engineer. The Jenkins CI servers are available here:

Asking for Help

Requesting a HIPP instance

Please file a bug against Eclipse Foundation > Community > Hudson to request your project's own instance. Please ensure your project lead can +1 the request. Please specify if you wish to grant write access to your download or code repositories.

Note.png
About write access
If your git repo is handled by Gerrit, granting write access to your code repositories is a different procedure, so you must ask specifically for it. If you don't use Gerrit, then granting write access to your download area automatically grants write access to your code repositories and vice-versa.


Important.png
Security issues
There may be security issues related to using the Gerrit plugin and there may be security issues related to allowing the CI system to write directly to your code repos and downloads area. If you request plugins other than those available on the Shared instance, webmaster may not be able to help troubleshoot any issues that you may encounter with your instance.


Jenkins hardware

Jenkins instances run on SLES12 SP1 x86_64 host machines, with 64GB RAM (hipp1 & hipp2) or 128GB RAM (hipp3-10).

Jenkins configuration and tools

Check CI best practices for general recommendations how to setup Jenkins.

Tools (and locations)

  • apache-maven-latest (/shared/common/apache-maven-latest)
  • apache-maven-3.0.5 (/shared/common/apache-maven-3.0.5)
  • jdk1.8.0-latest (/shared/common/jdk1.8.0_x64-latest)
  • jdk1.7.0-latest (/shared/common/jdk1.7.0-latest)
  • jdk1.6.0-latest (/shared/common/jdk1.6.0-latest)
  • jdk1.5.0-latest (/shared/common/jdk1.5.0-latest)
  • apache-ant-1.9.6 (/shared/common/apache-ant-1.9.6)
  • gradle-latest (/shared/common/gradle-latest)
  • gradle-3.1 (/shared/common/gradle-3.1)

Proxies

Since April 2017 the proxy is no longer required to access the internet from JIPP instances. Currently outbound connections are limited to ports 80 and 443 by the firewall so there are still some restrictions.

Default plugins

The following plugins are installed by default. Additional plugins can be installed on request.

  • ace-editor
  • ant
  • antisamy-markup-formatter
  • authentication-tokens
  • bouncycastle-api
  • branch-api
  • build-timeout
  • cloudbees-folder
  • credentials
  • credentials-binding
  • disk-usage
  • display-url-api
  • docker-commons
  • docker-workflow
  • durable-task
  • external-monitor-job
  • extra-columns
  • gerrit-trigger
  • git
  • git-client
  • git-parameter
  • git-server
  • gradle
  • greenballs
  • handlebars
  • icon-shim
  • javadoc
  • jobConfigHistory
  • jquery
  • jquery-detached
  • junit
  • ldap
  • mailer
  • matrix-auth
  • matrix-project
  • maven-plugin
  • momentjs
  • pam-auth
  • pipeline-build-step
  • pipeline-graph-analysis
  • pipeline-input-step
  • pipeline-milestone-step
  • pipeline-model-api
  • pipeline-model-declarative-agent
  • pipeline-model-definition
  • pipeline-model-extensions
  • pipeline-rest-api
  • pipeline-stage-step
  • pipeline-stage-tags-metadata
  • pipeline-stage-view
  • plain-credentials
  • rebuild
  • resource-disposer
  • scm-api
  • script-security
  • sonar
  • ssh-credentials
  • ssh-slaves
  • structs
  • timestamper
  • token-macro
  • windows-slaves
  • workflow-aggregator
  • workflow-api
  • workflow-basic-steps
  • workflow-cps
  • workflow-cps-global-lib
  • workflow-durable-task-step
  • workflow-job
  • workflow-multibranch
  • workflow-scm-step
  • workflow-step-api
  • workflow-support
  • ws-cleanup
  • xvnc

Differences between Hudson and Jenkins

Hudson Jenkins
Job templates "cascading" built-in only rudimentary with plugins
Maven3 configuration Yes No

TODO: improve this page

Back to the top