WebSphere Commerce Build and Deploy (WCBD) is the first tool to be developed by the WebSphere Commerce development team that addresses the build and deployment aspect of a WebSphere Commerce customization project. The tool is aims to provide a standardized, ANTbased, build and deployment framework that is available to IBMers as well as business partners and customers. It is designed based on the best practices documented in the WebSphere Commerce Information Center. WCBD is designed to satisfy most typical build and deployment needs, leaving only few configuration steps for a quick startup. When needs differ from the standard implementation, the framework scripts can be customized.
WCDB overview
Reference application in V6
Shipped with V7
Series of Apache Ant scripts
Customizable
Supports
CVS, Subversion and ClearCase, Local filesystem
SQL masloadable XML, ACP and ACUG <— *** new data load tool not yet supported
FTP and SCP/SFTP –
Deployment to multiple environments
e-mail notification upon build/deployment success/failure
System flow
Build server extracts from SCM server
Build process runs, outputs
Server deployment package
Toolkit deployment package
Transferred to server deployment system
Update
WAS servers
WC servers
DB servers
Web servers
Build process
Build Process Flow
1. Extract source code
2. Compilation, EJB deploy
3. Create deployment packages
Configuring and running the build process
1. Setup repository structure
2. Copy WC libraries to build system (do not need WC installed on build system)
3. Setup source extraction Ant script (each step in process covered in its own ant script)
4. Configure build settings
5. Run
Repository structure
Separate folders for common and environment specific files
Build settings
Templates provided
setenv.bat
build-private.properties <- security sensitive properties
build.properties
Build process
wcdb-ant.bat -buildfile wcdb-build.xml -Dbuild.label=<build identifier>
Deployment process
Server deployment process flow
1. Common dataload
2. Target specific dataload
3. Deploy
a. build partial app
b. deploy via wsadmin
c. deploy static web assets
d. sync WC config file
Configure server deployment settings
Templates provided
setenv.bat
deploy-<target-env>-private.properties
deploy-<target-env>.properties
Server deployment process
Backup before deployment <– can add as part of deploy script
Database
WC EAR file
WAS config files
Toolkit deployment process flow
Deploy database
Deploy projects into workspace
Configuring and running the toolkit deployment process
Install toolkit deployment package
Configure toolkit deployment settings
Run toolkit deployment process
Toolkit deployment process
Backup
Database
Workspace
Republish WC application after deploy
Customization highlights
Customization highlights
Do not touch files with wcdb prefix
Files with -common are reusable and provide customization example
Template files have documentation in them
Use <project>- prefix to identify custom files
Customization examples
Other SCMs
Unit test and code validations
Custom processes such as backups
WAS settings such as EJB refs and JVM settings
Best Practices
Include template deployment files in build process
Roll all configurations back into deployment files
Saves time when building new server
Definitely backup before deployment!
Ton of stuff can be configured <- still faster than building your own…
Limitations
New data load tool not supported
Stay tuned for the next topic – Migration
If you are using Management Center without customization in version 6 there are no extra steps required to continue using Management Center in version 7. For customized versions of Management Center you need to follow the Management Center customization migration process using the OpenLaszlo migration tool.