This is a collection of two separate plugins that provide deployment functionality to most versions of IBM WebSphere Application Server, IBM WebSphere Portal and IBM WebSphere Liberty Profile.Please add comments if your issues are addressed on your version of WebSphere, note the fixes proposed in the Change Log below. #### Plugin Features - Deployment to a running remote or local instance of WebSphere 7.0.x - 9.0.x  - Note: WebSphere 6.0.x - WebSphere 8.0.x (4/30/2018) is no longer supported by IBM - Deployment to a running remote or local instance of WebSphere Liberty Edition 8.x.x - Support for deployments when SSL is activated on WebSphere (Global Security) - Support for most versions of WebSphere (Portal,Liberty,ND,Extreme Scale, Express, Standard, etc...) - Support for updating JSR286/JSR186 Portlets - Support for deploying to different WebSphere instances/types per build - Support for cluster, node, cell, and server level deployments - Support for pre-compiling JSPs on WebSphere during deployment (When stress testing as part of build process) - Support for disabling JSP reloading (When stress testing as part of build process) - Support for not starting application after deployment - Support for updating an existing application (to prevent losing application settings after redeployment) - Supports fully stopping, uninstalling, installing and starting an application during deployment process - Support for using a single deployment manager across multiple clusters or servers - Support for virtual hosts when deploying EAR files - Smart detection of existing deployed application state (to prevent failures when a system admin stops your application without you knowing) ### Frequently Asked Questions (FAQs) See the most [frequently asked questions](https://wiki.jenkins.io/display/JENKINS/Frequently+Asked+Questions) and issues # **Common Configurations** Scenario 1: Single instance of WebSphere ![](docs/images/image2018-5-4_21:43:14.png){width="300"} Scenario 2: A clustered deployment on WebSphere ND \*\* Note: Same application with the same context root can be deployed using the same deployment manager as long as you use different application names in the job configuration \*\* ![](docs/images/image2018-5-4_21:36:48.png){width="300"} Deploying portlets to IBM WebSphere Portal (Updates existing deployed portlets, themes and skins are not supported) Deploying to [IBM WebSphere Application Server](http://wiki.jenkins-ci.org/display/JENKINS/IBM+WebSphere+Configuration) Deploying to [IBM WebSphere Liberty Server](https://wiki.jenkins-ci.org/display/JENKINS/IBM+WebSphere+Liberty+Configuration) ### Required Libraries For Deployments To IBM WebSphere Application Server | Jar File | Source Location | Destination | Required | |-------------------------------------------|------------------------------|-------------------------------------------------------------|---------------------------------------------------------------------------------| | com.ibm.ws.admin.client\_\*.jar | $WAS\_INSTALL\_ROOT/runtimes | $USER\_HOME/.jenkins/plugins/websphere-deployer/WEB-INF/lib | Yes | | com.ibm.ws.orb\_\*.jar | $WAS\_INSTALL\_ROOT/runtimes | $USER\_HOME/.jenkins/plugins/websphere-deployer/WEB-INF/lib | Yes (otherwise 'No' if running under IBM J9 JRE, WAS v7 doesn't need it either) | | com.ibm.ws.security.crypto.jar | $WAS\_INSTALL\_ROOT/plugins | $USER\_HOME/.jenkins/plugins/websphere-deployer/WEB-INF/lib | Yes (for v1.6.0+ of this plugin) | | com.ibm.ws.webservices.thinclient\_\*.jar | $WAS\_INSTALL\_ROOT/runtimes | $USER\_HOME/.jenkins/plugins/websphere-deployer/WEB-INF/lib | Maybe (Depends if application uses web services) | ### Required Libraries For Deployments To IBM WebSphere Liberty Profile | Jar File | Source Location | Destination | Required | |-------------------------------------------------------|-------------------------------------|-------------------------------------------------------------|----------| | com.ibm.websphere.appserver.api.basics\_\*.jar | $LIBERTY\_INSTALL\_ROOT/dev/api/ibm | $USER\_HOME/.jenkins/plugins/websphere-deployer/WEB-INF/lib | Yes | | com.ibm.websphere.appserver.api.endpoint\_\*.jar | $LIBERTY\_INSTALL\_ROOT/dev/api/ibm | $USER\_HOME/.jenkins/plugins/websphere-deployer/WEB-INF/lib | Yes | | com.ibm.websphere.appserver.api.restConnector\_\*.jar | $LIBERTY\_INSTALL\_ROOT/dev/api/ibm | $USER\_HOME/.jenkins/plugins/websphere-deployer/WEB-INF/lib | Yes | | restConnector.jar | $LIBERTY\_INSTALL\_ROOT/clients | $USER\_HOME/.jenkins/plugins/websphere-deployer/WEB-INF/lib | Yes | #### Issues or Feature Requests Getting issues... #### Roadmap - Add Pipeline Support - Add support for Jenkins slaves - ~~Add rollback support for install/update failures to prevent breaking applications for QA/UAT team ~~ - ~~Add promotion support for other environments (QA,STAGE,PRE-PROD, etc.) without repackaging EAR/WAR~~ - ~~Add support for multiple target deployments~~ - Fix path issue when locating artifacts to deploy - Provide support for Liberty Profile (support confirmed, will be available soon) - Provide support for EAR/WAR/WAB/OSGI deployments to Liberty Profile (support confirmed, will be available soon) - Remove external dependency on client jars for each configuration (to simplify initial configuration) (not possible) - Send notifications when application fails to start (outside of build process) - Add cluster support (release v1.3) - Support for WAR deployments on WebSphere Application Servers (Full Profile) #### Change Log ###### Version 1.6.0 (release)    Added support for earlier versions of Jenkins (version 1.608)  Added support for listing server targets Fixes for multithreading to speed up deployments Includes all beta changes listed below ###### Version 1.4.8 (beta) - WAS Full Profile Updates  Option to trust SSL certificates and hostnames (fix for PKIX issues) Attempt to allow for deployment across multiple environments ###### Version 1.4.4 (beta) - WAS Full Profile Updates Fix for virtual host configuration when deploying EAR artifacts Added support for SharedLib when deploying EAR artifacts ###### Version 1.4.3 (beta) - WAS Full Profile Updates Added support for virtual host configuration when deploying EAR artifacts ###### Version 1.4.1 (beta) - WAS Full Profile Updates Fix for those of us who don't use global security Attempt to fix ObjectName issue (Appears to be 2 classloaders loading the ObjectName, who knows why this is happening on some machines) Support for deployments when build is unstable ###### Version 1.4.0 (beta) - WAS Full Profile Updates Added reloading support Fixed JSP reloading issue Fixed classloader order bug Added classloader policy suppoort Added context override for generated EARs Added support for multiple target deployments (cluster or multiple nodes) Changed UI layout ###### Version 1.3.4 (release) - WAS Full Profile Updates Several bug fixes and enhancements (see details below) Added "operations" to allow for either updating or complete re-installation of artifacts Added support for path variables (contribution) Tested support for updating Portlets on a remote WebSphere Portal Instance ###### Version 1.3.3 (beta) - WAS Full Profile Updates Disabled host verification for complex deployment environments. Provided option for verbose logging. ###### Version 1.3.2 (beta) - WAS Full Profile Updates Added more connector options. Fixed SSL caching so multiple deployments to different servers should work. ###### Version 1.3.1 (beta) - WAS Full Profile Updates Added support for updating applications instead of complete reinstallation of artifacts. ###### Version 1.3 (beta) - WAS Full Profile Updates Fix for generated EARs Java EE7 support Timeout parameter for large EAR deployments (contribution) Classloader policy support Context fix for generated EAR (contribution) WebSphere ND support when deploying through Deployment Manager Cluster support (experimental) ###### Version 1.2 - Liberty / WAS Full Profile Updates Support for WebSphere Liberty Profile Fixed path issues with WebSphere Application Server (full profile) ###### Version 1.1 Initial release performed ###### Version 1.0 Beta Testing Passed for WebSphere v8.5.5 for both remote and local deployments