This is the IBM UrbanCode Deploy plugin for Jenkins Pipeline (Jenkins 2.0). This plugin is also referred to as the Build Steps plugin since you are able to interact with UrbanCode Deploy via a job step in Jenkins versus a post-processing action. The plugin allows you to upload component versions, create snapshots, and run processes among other things.
More information about this plugin is available here and here.
The compiled plugin is available for download on the IBM UrbanCode website. Download the plugin from our website if you wish to skip the manual build step. No special steps are required for installation. Otherwise, clone this repository and run the ant
command in the top level folder. This should compile the code and create a .hpi file within the /dist folder. Use this command if you wish to make local changes to the plugin. The build process will automatically install Apache Ivy if it is not previously installed.
Plug-ins downloaded directly from the IBM UrbanCode Plug-ins microsite are fully supported by IBM. Create a GitHub Issue or Pull Request for minor requests and bug fixes. For time sensitive issues that require immediate assistance, file a PMR through the normal IBM support channels. Plug-ins built externally or modified with custom code are supported on a best-effort-basis using GitHub Issues.
This open source plug-in uses Ant as its build tool. Install the latest version of Ant to build the plug-in locally. Build the plug-in by running the ant
command in the plug-in's root directory. The plug-in distributable will be placed under the dist
folder.
node {
step([$class: 'UCDeployPublisher',
siteName: 'local',
component: [
$class: 'com.urbancode.jenkins.plugins.ucdeploy.VersionHelper$VersionBlock',
componentName: 'Jenkins',
createComponent: [
$class: 'com.urbancode.jenkins.plugins.ucdeploy.ComponentHelper$CreateComponentBlock',
componentTemplate: '',
componentApplication: 'Jenkins'
],
delivery: [
$class: 'com.urbancode.jenkins.plugins.ucdeploy.DeliveryHelper$Push',
pushVersion: '${BUILD_NUMBER}',
baseDir: 'jobs\\test-ucd\\workspace\\build\\distributions',
fileIncludePatterns: '*.zip',
fileExcludePatterns: '',
pushProperties: 'jenkins.server=Local\njenkins.reviewed=false',
pushDescription: 'Pushed from Jenkins',
pushIncremental: false
]
]
])
}
node {
step([$class: 'UCDeployPublisher',
siteName: 'local',
deploy: [
$class: 'com.urbancode.jenkins.plugins.ucdeploy.DeployHelper$DeployBlock',
deployApp: 'Jenkins',
deployEnv: 'Test',
deployProc: 'Deploy Jenkins',
deployReqProps: 'AppProcessProp1=Value1\nAppProcessProp2=Value2',
createProcess: [
$class: 'com.urbancode.jenkins.plugins.ucdeploy.ProcessHelper$CreateProcessBlock',
processComponent: 'Deploy'
],
deployVersions: 'Jenkins:${BUILD_NUMBER}',
deployOnlyChanged: false
]
])
}
node {
step([$class: 'UCDeployPublisher',
siteName: 'local',
component: [
$class: 'com.urbancode.jenkins.plugins.ucdeploy.VersionHelper$VersionBlock',
componentName: 'Jenkins',
createComponent: [
$class: 'com.urbancode.jenkins.plugins.ucdeploy.ComponentHelper$CreateComponentBlock',
componentTemplate: '',
componentApplication: 'Local'
],
delivery: [
$class: 'com.urbancode.jenkins.plugins.ucdeploy.DeliveryHelper$Pull',
pullProperties: 'FileSystemImportProperties/name=${BUILD_NUMBER}\nFileSystemImportProperties/description=Pushed from Jenkins',
pullSourceType: 'File System',
pullSourceProperties: 'FileSystemComponentProperties/basePath=C:\\Test',
pullIncremental: false
]
]
])
}
Fixed APAR PI77548 - Component process properties failing to resolve on deployment.
Fixed RFE 98375 - Jenkins Plugin only allows Global credentials instead of job-based credentials.
Fixed PI75045 - UCD server maintenance mode check requires admin privileges.
Fixed PI61971 - Connection pool leak in Jenkins ibm-ucdeploy-build-steps.
Fixed PI32899 - Jenkins plugin fails on slave nodes with an UnserializbleException
Fixed PI36005 - Jenkins plugin 1.2.1 not compatible with builds created with earlier versions of the plugin
Fixed PI37957 - Pulled in a fix for excludes options not being handled by a common library.