Jenkins Enterprise by CloudBees 14.11 User Guide

Table of Contents

1. Introducing Jenkins Enterprise by CloudBees
Large Install Plugins
Optimized Utilization Plugins
Security Plugins
2. Backup Plugin
Taking Backup
Configuring Backup
Restoring From Backup
3. Even Scheduler Plugin
Default Jenkins Behavior
Even Loading Strategy
Using Even Scheduler Plugin
Selecting Global Preference
Selecting Per-Job Preference
4. Folders Plugin
Setting up the Folders plugin
Using the Folders plugin
A sample taxonomy with the Folders plugin
Using folders with other Jenkins Enterprise plugins
5. Folders Plus Plugin
Controlled slaves
Configuring Controlled slaves
Miscellaneous features
Health reports
Environment variables
List view column
Restricting children
6. Label Throttle Build Plugin
Setting up the Label Throttle Build plugin
Configuring a label throttle
7. Fast Archiver Plugin
Setting up Fast Archiver
8. Role Based Access Control Plugin
Concepts and Definitions
Setting up the Role Based Access Control plugin
Enabling the authorization strategy
Configuring and managing roles
Configuring and managing groups
Configuring and managing role filters
Example Configurations
Instance owned by one cross-functional team
Instance shared by multiple cross-functional teams
Instance shared by multiple single-function teams
Secret projects on a shared instance
Scripting RBAC
Recovering from a lock-out
Completely resetting the configuration
Finding hidden projects
9. Skip Next Build Plugin
Using the Skip Next Build plugin
Advanced usage
10. Template Plugin
Tutorial: Hello world builder
Define a template
Use a template
Changing the template definition
Tutorial: job template
Creating a template
Defining transformation
Attribute Type Reference
Text field
Text area
Nested Auxiliary Models
Select a string among many
Computed Value
Model Transformer
Heterogeneous components from descriptors
Heterogeneous components from descriptors (one instance per descriptor)
Single Describable object
Select another model
Select Item
Select Tool Installation
Select Credentials
Builder Template
Creating a new Builder Template
Defining a Transformer
Job Templates
Folders Template
What a folder template controls and what it doesn’t
Folder features that work well with templates
Auxiliary Template
Accessing attributes of auxiliary instances
Templates Defined in Folders
Transformer Reference
Jelly-based transformation
Groovy template transformation
Template Security
Script Approval
Groovy Sandboxing
Advanced Template Techniques
Navigating around objects in context
Instance to Item, Item to Instance
Accessing containing folder
Accessing a folder template’s attributes from a child job template
Scripting Templates
REST API operations
CLI commands
Groovy scripting
Miscellaneous features
View Creation Filter plugin
Groovy View plugin
11. Validated Merge Plugin
Server setup
Client setup
Mental picture of the validated merge
Sending changes and have them validated
Access Control
Accessing the gate repository
Pushing to the upstream repository
Reusing a job between CI and validated merge
Dealing with post-build push failure
Refs in the gate repository
12. VMWare Pool Auto-Scaling Plugin
Machine Centers
Machine Pools
Building Jobs on Virtual Machines
Reserving a Virtual Machine for a build
Taking virtual machines offline
13. Plugin Usage Plugin
Using the Plugin Usage plugin
14. Wikitext Security Plugin
Supported Wiki Markup Languages
Setting up the Wikitext Security plugin
Using the Wikitext Security plugin
15. Update Center Plugin
Creating an Update Center
Using the update center
Info tab
Core tab
Plugins tab
Tools tab
Upload Core tab
Upload Plugin tab
Pull new versions
Pull everything
Reference Information
Version number rules
Other tasks
Removing a custom update center as an updates source from a Jenkins
16. Secure Copy Plugin
Creating an exported permalink
17. High Availability
Using haproxy as a reverse proxy
Components of Jenkins Enterprise HA
Jenkins Enterprise by CloudBees WAR file
Jenkins Enterprise HA proxy WAR
Jenkins Enterprise HA monitor tool
Fail-over behavior in more details
Sanity checking the environment while acting as primary
Requirements from the environment
HTTP reverse proxy
Troubleshooting and Tips
Nodes don’t form a cluster
Using UDP/Multicast
Using a newer HA version on top of Jenkins Enterprise
Using a stand-by node as a slave
Copying a Jenkins installation
18. Workflow Plugin Suite
Restoring files
Stage View
Workflow Job Templates
Step 1: Create the Workflow Template
Step 2: Configure the Workflow Template
Step 3: Create and run a Workflow Job from the Workflow Template
19. Restart Aborted Builds Plugin
Using the Restart Aborted Builds plugin
20. Long-Running Build Plugin
Using the Long-Running Build plugin
21. Nodes Plus Plugin
Node owners
Configuring Node owners
22. Support Plugin
Generating a bundle
Getting a bundle from the CLI
Getting a bundle when Jenkins will not start
Controlling who can generate Support bundles
23. Consolidated Build View Plugin
Using the Consolidated Build View plugin
24. Quiet Start Plugin
25. NIO SSH Slaves Plugin
Using the NIO SSH Slaves plugin
26. Monitoring Plugin
Basic usage
Standard metrics dashboard
Creating a Standard metrics dashboard
Metrics based alerts
Advanced usage
Custom metrics dashboards
Standard metrics
Standard health checks
27. Pull-Request Builder for GitHub Plugin
Setting up Pull-Request Builder for GitHub
Using Pull-Request Builder for GitHub
28. Cloud Foundry CLI Plugin
Plugin Installation
Jenkins System Configuration
Job Configuration
Using the Cloud Foundry CLI in a Job
Security Notes

List of Figures

4.1. Installing the Folders plugin
4.2. Creating a new Folder
4.3. Sample Taxonomy with Folders plugin
5.1. Enabling approved folders functionality on a slave
5.2. A slave with approved folders functionality enabled and no approved folders assigned
5.3. Creating a controlled slave request - step 1
5.4. Creating a controlled slave request - step 2
5.5. Creating a controlled slave request - step 3
5.6. Creating a controlled slave request - step 4
5.7. A slave’s approved folders screen
5.8. Creating a token for approving requests
5.9. Approving a controlled slave request
5.10. An approved request for a controlled slave
5.11. Completing a controlled slave request
5.12. A folder with an approved slave
5.13. A slave with an approved folder
5.14. Specifying parameter types for Folders
6.1. Install from the plugin manager
6.2. Set appropriate label on the slave configuration page
6.3. Go to the labels page
6.4. Set limit on the hypervisor
6.5. Label Throttle Build plugin in action
7.1. Fast archiver running
7.2. Fast archiving configuration
8.1. Enabling the Role Based Access Control authorization strategy
8.2. The main Jenkins screen with the additional icons for Groups and Roles
8.3. The Manage Roles action from the main Manage Jenkins screen
8.4. The Manage Roles screen after the Role Based Access Control authorization strategy Plugins RBAC Authorization Strategy has been initially enabled
8.5. Adding a role called Administrator
8.6. After clicking the Add button
8.7. The three icons for: checking all the check boxes in a row; clearing all the check boxes in a row; and removing the role.
8.8. After clicking on the Check all icon for the Administrator role
8.9. The initial groups screen for the root of a Jenkins instance
8.10. Creating a new group
8.11. Configuring a group
8.12. Managing a group
8.13. Adding a member to a group
8.14. A group with multiple members: another group; an external group; and a user
8.15. Removing a member from a group requires two step confirmation
8.16. The roles screen for a job within a Jenkins showing the roles, their permissions, and the groups that are assigned to each of the roles for this object and its children
8.17. The role filter screen for a job within a Jenkins instance where two roles are being filtered out
8.18. Using the script console to completely reset the Role Based Access Control plugin’s configuration
8.19. After successfully resetting the Role Based Access Control plugin’s configuration via the script console
9.1. The main project screen when a skip has been applied
9.2. Applying a skip to a project
9.3. Removing a skip from a project
10.1. Configuring a hello world builder
10.2. Using a hello world builder
10.3. Updating hello world builder template
10.4. Jenkins on Jenkins
10.5. "SCM" attribute in the template
10.6. Changing the pronoun of the template
10.7. Creating a new plugin job
10.8. Configuring a new plugin job
10.9. Generate Shell Script via Jelly/Groovy
10.10. Defining an auxiliary template for compiler options
10.11. Defining attributes for a compiler builder template
10.12. Defining a transformer for a compiler builder template
10.13. Using a compiler builder template
10.14. Job Templates
10.15. Folder Templates
11.1. The "Git Repository for Validated Merge" screen
11.2. Configuring the SSHD port
11.3. Repository model
13.1. Usage Count
14.1. Setting up project-specific descriptions
14.2. Installing the Wikitext Security plugin
14.3. Wikitext Usage
14.4. Wikitext Output
15.1. Creating a new Update Center
15.2. Configuring an Update Center
15.3. Main update center informations screen
15.4. Uploading the Update Center Installer Plugin into a Jenkins instance
15.5. The Core tab of the Update Center screen
15.6. A core distribution being downloaded into the Update Center
15.7. The Plugins tab of the Update Center screen
15.8. The plugins details screen when no version of a plugin is installed in the update center
15.9. The plugins details screen with a version of the plugin installed in the update center
15.10. The Tools tab of the Update Center screen
15.11. The Upload Core tab of the Update Center screen
15.12. The Upload Plugin tab of the Update Center screen
16.1. Adding the “Import artifacts from an exported permalink”
16.2. After adding the “Import artifacts from an exported permalink”
16.3. The exported permalinks screen
16.4. Creating an exported permalink
16.5. Selecting the permalink to export
16.6. An exported permalink with generated secret
16.7. A fully configured “Import artifacts from an exported permalink” build step
19.1. Aborted Builds Administrative Warning
19.2. Aborted Builds List
20.1. Long-Running Build Configuration
20.2. Long-Running Build Execution
21.1. Configuring the node owners
22.1. Generating a bundle
22.2. Generating a bundle as a user who is not a Jenkins administrator
23.1. Enabling the consolidated build view
23.2. Showing the consolidated build view
25.1. Configuring the NIO SSH Slaves launcher
26.1. The Jenkins Enterprise Metrics Dashboard provided by the CloudBees Monitoring plugin
26.2. An alert where the condition has changed prior to the periodic checks running
26.3. An alert having entered the Failing state
26.4. An alert having entered the Recovering state
26.5. An alert having entered the Failed state
26.6. Some alerts having been silenced
27.1. Global Configuration
27.2. Github Commit Status
28.1. Cloud Foundry CLI plugin installation
28.2. Cloud Foundry CLI installer configuration
28.3. Reloading Jenkins Update Center
28.4. Cloud Foundry CLI job configuration
28.5. Cloud Foundry CLI sample shell step