PXE Plugin

Skip to end of metadata
Go to start of metadata

Plugin Information

Plugin ID pxe Changes In Latest Release
Since Latest Release
Latest Release
Latest Release Date
Required Core
1.5 (archives)
Feb 02, 2010
Source Code
Issue Tracking
Open Issues
n/a (id: kohsuke)
Usage Installations 2014-Nov 64
2014-Dec 59
2015-Jan 64
2015-Feb 71
2015-Mar 72
2015-Apr 74
2015-May 70
2015-Jun 68
2015-Jul 80
2015-Aug 69
2015-Sep 82
2015-Oct 80

This plugin enhances Jenkins to support network-booting PCs for rapid, hands-free installations of various OSes, thereby making new slave installations easier.

More specifically, this plugin adds the TFTP service and proxy DHCP service to Jenkins. These two combinations enable PCs on the same network to network boot (also known as PXE boot) and install OSes such as Linux, Solaris, and Windows.

This plugin assumes that your network already has a functioning DHCP server, running on a computer different from Jenkins master.

Set up

Download the *.iso files for OSes that you want to install. Currently, the following OSes are supported. See the respective page for what ISO file you need.

Place those ISO files on the Jenkins master, and tell Jenkins where they are. Go to "Manage Jenkins" > "Network Slave Installation Management" > "Configure":

Configure Jenkins about the additional configuration information. This is necessary because TFTP and DHCP services require the root privilege on Unix.

Installing PCs

Put a PC on the same network as the Jenkins master (IOW, topology-wise close enough so that broadcast UDP packets from PCs get to Jenkins), and boot from network (on most PCs, this is done by pressing F12 during the BIOS POST screen.)

If pressing F12 doesn't help
Some BIOS has a separate configuration entry to enable/disable PXE boot. Some BIOS requires you to tweak boot priority list to boot from network. If your PC can't seem to boot from network, go into BIOS set up, and look for keywords like 'PXE', 'LAN', 'boot priority', 'boot device', etc.
Installing PCs on the remote network
If your PCs to be network booted are located in a different network, run "java -jar hudson-proxy-service-jar-with-dependencies.jar UrlOfJenkins" on a computer in the same network as the new PC to have it relay the request.

Once the network boot menu appears. Choose the OS that you want to install.

Depending on the OSes, you can choose to install interactively or automatically. The interactive installation option can be convenient for installing PCs for use outside Jenkins.

If you choose automatic installation, PCs will install itself and reboot by itself.

Future Work

  • Documenting Windows auto installation
  • Advanced mode that lets people specify the full kickstart/preseed/ai-manifest files
  • Automatically register newly installed PCs as Jenkins slaves
  • OS support is extensible. Contributions of new OS types are welcome.


Version 1.5 (Feb 2 2010)
  • Supported booting OracleVM Server.
  • Supported booting VMWare ESXi.
Version 1.4 (Jan 9 2010)
  • Allow override of root URL with hudson.plugins.pxe.PXE.rootURL system property.
Version 1.3 (Sep 3 2009)
  • Ubuntu installer exposes more configuration options now.
  • DHCP proxy service can now selectively respond to requests, allowing multiple network boot services to co-exist.
Version 1.2 (May 15 2009)
  • Added Parted Magic support for disk re-partitioning
  • Updated Ubuntu preseeding file to work with 9.04.
Version 1.1 (May 10 2009)
  • Corrected typo
Version 1.0 (May 3 2009)
  • Initial version


plugin-cluster plugin-cluster Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.

Add Comment