A build definition file is an XML file that identifies components and characteristics for a customized installation package (CIP). In some cases, you might be unable to use the Installation Factory console (ifgui command) on the target operating system platform. You have two options in such a case:
Then copy the file to the target operating system and use the command line interface to start the processing engine and create the customized installation package.
See Creating a CIP build definition for another machine for a description of such a procedure.
Copy one of the sample build definition documents from the IF_install_root/samples/was directory to get started.
After making your changes, validate the build definition document with its XML schema (the Common.xsd, BaseBuildDefinition.xsd, and BuildDefinition.xsd files) using a validating XML parser or editor. Then use the command-line interface to start the processing engine and create the customized installation package.
The following example shows some elements from one version of the CIP build definition file. See the IF_install_root/samples/was/SampleBuildDefinition.xml file for a current example.
Always consult the latest build definition XML schema for definitive answers to XML coding questions.
<?xml version="1.0" encoding="UTF-8"?> <!-- /** * THIS PRODUCT CONTAINS RESTRICTED MATERIALS OF IBM * 5724-I63, 5724-H88, 5655-N02, 5733-W70 (C) COPYRIGHT International Business Machines Corp. 2005 * All Rights Reserved * Licensed Materials - Property of IBM * US Government Users Restricted Rights - Use, duplication or disclosure * restricted by GSA ADP Schedule Contract with IBM Corp. */ --> <basebuilddef:buildDefinition xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:basebuilddef="http://www.ibm.com/xmlns/prod/websphere/if/basebuilddef" xmlns:builddef="http://www.ibm.com/xmlns/prod/websphere/if/builddef" xmlns:common="http://www.ibm.com/xmlns/prod/websphere/if/common" xsi:type="builddef:BuildDefinition"> <installFactoryVersion> <version>6</version> <release>1</release> <refreshPack>0</refreshPack> <fixPack>0</fixPack> <buildID></buildID> </installFactoryVersion> <description lang="en">Sample Build Definition</description> <qualifiedVersionedPackageId> <offeringId isRegEx="false">WAS</offeringId> <editionId isRegEx="false">ND</editionId> <installPackageId isRegEx="false">APPSERVER</installPackageId> <version> <version>6</version> <release>1</release> <refreshPack>0</refreshPack> <fixPack>0</fixPack> </version> </qualifiedVersionedPackageId> <platformInfo> <common:osVendor>MICROSOFT</common:osVendor> <common:osName>WINDOWS</common:osName> <common:osVersion>NA</common:osVersion> <common:osPatchLevel>NA</common:osPatchLevel> <common:osArch>x86</common:osArch> </platformInfo> <buildOptions> <targetLocation>C:\if_Created_Images</targetLocation> <overwriteWithoutWarning>false</overwriteWithoutWarning> </buildOptions> <authorInfo lang="en"> <organization>My Company</organization> </authorInfo> <modeSelection>Connected</modeSelection> <packageIdentifier> <fullPackageIdentifier>company.division.dept_1.0.0.0</fullPackageIdentifier> <identifier>company.division.dept</identifier> <version>1.0.0.0</version> </packageIdentifier> <packageMergeInfo> <sourceFullInstallPackageLocation>C:\WASImage\ND</sourceFullInstallPackageLocation> <!-- Maintenance packages Fix Pack --> <sourceMaintenanceInstallPackages installOrder="2" maintenanceType="fixPack"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>C:\WASImage\Maintenance\Windows\MaintPacks</rootFolder> </rootFolder> <relativeFolder>.</relativeFolder> <fileNamePattern isRegEx="false">6.1.1-WS-WAS-WinX32-FP0000001.pak</fileNamePattern> </sourceMaintenanceInstallPackages> <sourceMaintenanceInstallPackages installOrder="3" maintenanceType="fixPack"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>C:\WASImage\Maintenance\Windows\MaintPacks</rootFolder> </rootFolder> <relativeFolder>.</relativeFolder> <fileNamePattern isRegEx="false">6.1.1-WS-WASSDK-WinX32-FP0000001.pak</fileNamePattern> </sourceMaintenanceInstallPackages> <!-- Interim Fixes --> <interimFixes maintenanceType="interimFix"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>C:\WASImage\Maintenance\Fixes</rootFolder> </rootFolder> <relativeFolder>.</relativeFolder> <fileNamePattern>PQ20029.pak</fileNamePattern> </interimFixes> </packageMergeInfo> <!-- User Files (optional) --> <userFiles> <files> <fileSet> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>C:\WAS Customizations\Scripts\</rootFolder> </rootFolder> <relativeFolder includeSubfolders="true">install</relativeFolder> <fileNamePattern isRegEx="true">.*</fileNamePattern> </fileSet> <relativeTargetFolder>scripts/install</relativeTargetFolder> <preserveFolderStructure>true</preserveFolderStructure> </files> <files> <fileSet> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>C:\WAS Customizations\Scripts</rootFolder> </rootFolder> <relativeFolder includeSubfolders="true">uninstall</relativeFolder> <fileNamePattern isRegEx="true">.*</fileNamePattern> </fileSet> <relativeTargetFolder>scripts/uninstall</relativeTargetFolder> <preserveFolderStructure>true</preserveFolderStructure> </files> </userFiles> <!-- Custom configuration (optional) --> <configurationInfo> <!-- Install / Uninstall time custom configuration --> <installUninstallActions> <installActions> <scripts executionOrder="1" fatalErrorWhenExecutionFailed="false"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>C:\WAS Customizations\Scripts\</rootFolder> </rootFolder> <relativeFolder>.</relativeFolder> <fileNamePattern isRegEx="false">setupEnv1.ant</fileNamePattern> </scripts> <scripts executionOrder="2"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>C:\WAS Customizations\Scripts\</rootFolder> </rootFolder> <relativeFolder>.</relativeFolder> <fileNamePattern isRegEx="false">setupEnv2.ant</fileNamePattern> </scripts> </installActions> <uninstallActions> <scripts executionOrder="1" fatalErrorWhenExecutionFailed="false"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>C:\WAS Customizations\Scripts\</rootFolder> </rootFolder> <relativeFolder>.</relativeFolder> <fileNamePattern isRegEx="false">cleanupEnv.ant</fileNamePattern> </scripts> </uninstallActions> </installUninstallActions> <!-- Profile creation / deletion custom configuration --> <profileActions> <!-- Profile Type - default --> <profileType> <profileType>default</profileType> <common:displayName> <messageKey>COMD.ProfileType.default</messageKey> <alternateText /> </common:displayName> </profileType> <profileCreationActions> <!-- Configuration Archive --> <configurationArchive executionOrder="1" fatalErrorWhenExecutionFailed="true"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>C:\WAS Customizations\CAs</rootFolder> </rootFolder> <relativeFolder>.</relativeFolder> <fileNamePattern isRegEx="false">AppSrv01.car</fileNamePattern> </configurationArchive> <!-- DeployEAR(s) --> <deployEARs executionOrder="2" fatalErrorWhenExecutionFailed="true" applicationName="SAMPLE GALLERY"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>C:\WAS Customizations\EARs</rootFolder> </rootFolder> <relativeFolder>.</relativeFolder> <fileNamePattern isRegEx="false">SamplesGallery.ear</fileNamePattern> </deployEARs> <deployEARs executionOrder="3" fatalErrorWhenExecutionFailed="true" applicationName="Cache Monitor"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>C:\WAS Customizations\EARs</rootFolder> </rootFolder> <relativeFolder>.</relativeFolder> <fileNamePattern isRegEx="false">CacheMonitor.ear</fileNamePattern> </deployEARs> <!-- Script(s) --> <scripts executionOrder="4" fatalErrorWhenExecutionFailed="false"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>C:\WAS Customizations\Scripts\</rootFolder> </rootFolder> <relativeFolder>create</relativeFolder> <fileNamePattern isRegEx="false">create_SC1.jacl</fileNamePattern> </scripts> </profileCreationActions> <profileDeletionActions> <!-- Script(s) --> <scripts executionOrder="1" fatalErrorWhenExecutionFailed="false"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>C:\WAS Customizations\Scripts\</rootFolder> </rootFolder> <relativeFolder></relativeFolder> <fileNamePattern isRegEx="false">delete_SC1.ant</fileNamePattern> </scripts> </profileDeletionActions> </profileActions> <!-- Custom Configuration for dmgr --> <profileActions> <!-- Profile Type - dmgr --> <profileType> <profileType>dmgr</profileType> <common:displayName> <messageKey>COMD.ProfileType.dmgr</messageKey> <alternateText /> </common:displayName> </profileType> <profileCreationActions> <!-- Script(s) --> <scripts executionOrder="2" fatalErrorWhenExecutionFailed="false"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>C:\WAS Customizations\Scripts\</rootFolder> </rootFolder> <relativeFolder>create</relativeFolder> <fileNamePattern isRegEx="false">create_SC1.jacl</fileNamePattern> </scripts> </profileCreationActions> <profileDeletionActions> <!-- Script(s) --> <scripts executionOrder="1" fatalErrorWhenExecutionFailed="false"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>C:\WAS Customizations\Scripts\</rootFolder> </rootFolder> <relativeFolder></relativeFolder> <fileNamePattern isRegEx="false">delete_SC1.ant</fileNamePattern> </scripts> </profileDeletionActions> </profileActions> <!-- Custom Configuration for managed --> <profileActions> <!-- Profile Type - managed --> <profileType> <profileType>managed</profileType> <common:displayName> <messageKey>COMD.ProfileType.managed</messageKey> <alternateText /> </common:displayName> </profileType> <profileCreationActions> <!-- Script(s) --> <scripts executionOrder="1" fatalErrorWhenExecutionFailed="false"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>C:\WAS Customizations\Scripts\</rootFolder> </rootFolder> <relativeFolder>create</relativeFolder> <fileNamePattern isRegEx="false">create_SC1.jacl</fileNamePattern> </scripts> </profileCreationActions> <profileDeletionActions> <!-- Script(s) --> <scripts executionOrder="1" fatalErrorWhenExecutionFailed="false"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>C:\WAS Customizations\Scripts\</rootFolder> </rootFolder> <relativeFolder></relativeFolder> <fileNamePattern isRegEx="false">delete_SC1.ant</fileNamePattern> </scripts> </profileDeletionActions> </profileActions> <profileSetActions> <!-- Custom Configuration for profile set - cell --> <profileSetName> <profileSet>cell</profileSet> <common:displayName> <messageKey>COMD.profileType.cell</messageKey> </common:displayName> </profileSetName> <profiles> <!-- Custom Configuration for dmgr --> <profileType> <profileType>dmgr</profileType> <common:displayName> <messageKey>COMD.profileType.dmgr</messageKey> </common:displayName> </profileType> <profileCreationActions> <!-- Script(s) --> <scripts executionOrder="1" fatalErrorWhenExecutionFailed="true"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>D:\Test\WAS Customizations\Scripts\create\</rootFolder> </rootFolder> <relativeFolder includeSubfolders="false">.</relativeFolder> <fileNamePattern isRegEx="false" permissions="755">create_SC3.bat</fileNamePattern> </scripts> </profileCreationActions> <profileDeletionActions> <scripts executionOrder="1" fatalErrorWhenExecutionFailed="true"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>D:\Test\WAS Customizations\Scripts\delete\</rootFolder> </rootFolder> <relativeFolder includeSubfolders="false">.</relativeFolder> <fileNamePattern isRegEx="false" permissions="755">delete_SC3.bat</fileNamePattern> </scripts> </profileDeletionActions> </profiles> <profiles> <!-- Custom Configuration for federated application server --> <profileType> <profileType>default</profileType> <common:displayName> <messageKey>COMD.profileType.default</messageKey> </common:displayName> </profileType> <profileCreationActions> <!-- Script(s) --> <scripts executionOrder="1" fatalErrorWhenExecutionFailed="true"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>D:\Test\WAS Customizations\Scripts\create\</rootFolder> </rootFolder> <relativeFolder includeSubfolders="false">.</relativeFolder> <fileNamePattern isRegEx="false" permissions="755">create_SC3.bat</fileNamePattern> </scripts> <scripts executionOrder="2" fatalErrorWhenExecutionFailed="true"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>D:\Test\WAS Customizations\Scripts\create\</rootFolder> </rootFolder> <relativeFolder includeSubfolders="false">.</relativeFolder> <fileNamePattern isRegEx="false" permissions="755">create_SC1.jacl</fileNamePattern> </scripts> </profileCreationActions> <profileDeletionActions> <scripts executionOrder="1" fatalErrorWhenExecutionFailed="true"> <rootFolder> <whichFolderToUse>literalRootProvided</whichFolderToUse> <rootFolder>D:\Test\WAS Customizations\Scripts\delete\</rootFolder> </rootFolder> <relativeFolder includeSubfolders="false">.</relativeFolder> <fileNamePattern isRegEx="false" permissions="755">delete_SC3.bat</fileNamePattern> </scripts> </profileDeletionActions> </profiles> </profileSetActions> </configurationInfo> <common:features> <feature> <featureId> <featureId isRegEx="false">server.samples</featureId> </featureId> <selectedByDefault>false</selectedByDefault> <userModifiable>true</userModifiable> <hidden>false</hidden> </feature> </common:features> </basebuilddef:buildDefinition>