Configure job hardware
The servers Continuous Delivery for Puppet Enterprise (PE) uses to run tests on your Puppet code are known as job hardware. You must configure job hardware before you can run tests or use pipelines. Any node with a Puppet agent installed on it can be job hardware.
- Install a Puppet agent on each node you want to use as job hardware. The PE documentation provides instructions for Installing agents.
Make sure your Continuous Delivery user role
in PE has permission to run the
puppetlabs-cd4pe_jobsmodule from the Forge. This module is required to run Continuous Delivery for PE jobs on your nodes.
A sample Puppetfile entry:
- The Puppetfile for the production environment on the PE primary server that manages the agent nodes you've selected as job hardware.
- The Puppetfile on the main branch of the control repo associated with the PE primary server managing the agent nodes you've selected as job hardware.
mod 'puppetlabs-cd4pe_jobs', '1.6.0'Tip: Visit the PE documentation for more information about Managing environment content with a Puppetfile.
puppet code deploy production --waitto deploy the updated code to the production environment.
- Add the
- Install and configure Docker on each job hardware node. Docker is required for Docker-based pre-built jobs included in Continuous Delivery for PE. Instructions are available in the Docker documentation.
Assign nodes to the Docker hardware capability (which
Continuous Delivery for PE automatically creates for you) to tell Continuous Delivery for PE the nodes can be used as job hardware for Docker-based jobs.
- In the Continuous Delivery for PE web UI, click Hardware.
- Locate the Docker capability and click Edit.
- Select the PE instance that manages the nodes you've selected as job hardware, and then select the job hardware nodes. Selected nodes appear in the Hardware with this capability list.
- After selecting all the job hardware nodes, click Save.
- Optional: Create additional capabilities or add job hardware nodes to other capabilities, as explained in Add job hardware capabilities. If you're managing a lot of job hardware nodes, additional capabilities help distribute the testing load and ensure that each job runs on a hardware with the correct characteristics.