Jenkins Enterprise by CloudBees 14.5 User Guide


Table of Contents

1. Introducing Jenkins Enterprise by CloudBees
Introduction
Large Install Plugins
Optimized Utilization Plugins
Security Plugins
2. Backup Plugin
Introduction
Taking Backup
Configuring Backup
Restoring From Backup
3. Even Scheduler Plugin
Introduction
Default Jenkins Behavior
Even Loading Strategy
Using Even Scheduler Plugin
Selecting Global Preference
Selecting Per-Job Preference
4. Folders Plugin
Introduction
Overview
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
Introduction
Controlled slaves
Configuring Controlled slaves
Troubleshooting
Miscellaneous features
Moving
Health reports
Icons
Environment variables
List view column
Restricting children
6. Label Throttle Build Plugin
Introduction
Overview
Setting up the Label Throttle Build plugin
Configuring a label throttle
7. Fast Archiver Plugin
Introduction
Overview
Setting up Fast Archiver
8. Role Based Access Control Plugin
Introduction
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
group-membership
create-group
delete-group
group-role-assignments
list-groups
Troubleshooting
Recovering from a lock-out
Completely resetting the configuration
Finding hidden projects
9. Skip Next Build Plugin
Introduction
Using the Skip Next Build plugin
Advanced usage
10. Template Plugin
Introduction
Tutorial: Hello world builder
Define a template
Use a template
Changing the template definition
Tutorial: job template
Creating a template
Defining transformation
Concepts
Models
Attributes
Attribute Type Reference
Text field
Text area
Checkbox
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
Configuration
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
11. Validated Merge Plugin
Introduction
Tutorial
Server setup
Client setup
Mental picture of the validated merge
Sending changes and have them validated
Access Control
Permissions
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
Tags
Branches
12. VMWare Pool Auto-Scaling Plugin
Introduction
Configuration
Machine Centers
Machine Pools
Building Jobs on Virtual Machines
Reserving a Virtual Machine for a build
Taking virtual machines offline
13. Plugin Usage Plugin
Introduction
Using the Plugin Usage plugin
Limitations
14. Wikitext Security Plugin
Introduction
Overview
Supported Wiki Markup Languages
Setting up the Wikitext Security plugin
Using the Wikitext Security plugin
15. Update Center Plugin
Introduction
Creating an Update Center
Using the update center
Info tab
Core tab
Plugins tab
Tools tab
Upload Core tab
Upload Plugin tab
Maintenance
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
Introduction
Creating an exported permalink
17. High Availability
Introduction
Tutorial
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
Storage
HTTP reverse proxy
Network
Troubleshooting and Tips
Nodes don’t form a cluster
Using a newer HA version on top of Jenkins Enterprise
Using a stand-by node as a slave
Copying a Jenkins installation
18. Restart Aborted Builds Plugin
Introduction
Using the Restart Aborted Builds plugin
19. Long-Running Build Plugin
Introduction
Using the Long-Running Build plugin
Limitations
20. Nodes Plus Plugin
Introduction
Node owners
Configuring Node owners
21. Support Plugin
Introduction
Generating a bundle
Getting a bundle when Jenkins will not start
Controlling who can generate Support bundles
22. Consolidated Build View Plugin
Introduction
Using the Consolidated Build View plugin
23. NIO SSH Slaves Plugin
Introduction
Using the NIO SSH Slaves plugin
24. Monitoring Plugin
Introduction
Basic usage
Standard metrics dashboard
Creating a Standard metrics dashboard
Metrics based alerts
Advanced usage
Custom metrics dashboards
Reference
Standard metrics
Standard health checks
25. Pull-Request Builder for GitHub Plugin
Introduction
Overview
Setting up Pull-Request Builder for GitHub
Using Pull-Request Builder for GitHub

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
18.1. Aborted Builds Administrative Warning
18.2. Aborted Builds List
19.1. Long-Running Build Configuration
19.2. Long-Running Build Execution
20.1. Configuring the node owners
21.1. Generating a bundle
21.2. Generating a bundle as a user who is not a Jenkins administrator
22.1. Enabling the consolidated build view
22.2. Showing the consolidated build view
23.1. Configuring the NIO SSH Slaves launcher
24.1. The Jenkins Enterprise Metrics Dashboard provided by the CloudBees Monitoring plugin
24.2. An alert where the condition has changed prior to the periodic checks running
24.3. An alert having entered the Failing state
24.4. An alert having entered the Recovering state
24.5. An alert having entered the Failed state
24.6. Some alerts having been silenced
25.1. Global Configuration
25.2. Github Commit Status