Repository structure for building Commerce UE (xc) packages

To configure the build properties for a Customization server package, build-buildtype-xc.properties, consider the following relevant configurations that you need to complete. The values in the following name-value pairs are the folders in your workspace.

  • web.module.list=commerceue-app
  • web.src.dir=src/main/java
  • web.resource.dir=src/main/resources
Based on these properties, the following table illustrates what is packaged into the output ZIP file when you build for the Customization server.
Build process takes these folders from the workspace Packages to these folders in the output ZIP file Description
commerceue-ear/src/main/application/ Code/xc-app/
  • EAR level files.
  • All files under commerceue-ear will be copied to the relative directory in the commerceue-ear.ear in the Customization server Docker image.
commerceue-ear/src/main/application/lib Code/xc-app/lib Java libraries for the EAR
commerceue-ear/src/main/application/META-INF/ Code/xc-app/META-INF/ Meta info for the EAR
commerceue-app/src/main/java/ Code/xc-app/commerceue-app.war:/WEB-INF/classes
  • Java source file directory
  • All files under commerceue-app will be copied to the relative directory in the commerceue-ear.ear/commerceue-ear.ear/commerceue-app.war in the Customization server Docker image.
commerceue-app/src/main/resources/ Code/xc-app/commerceue-app.war:/WEB-INF/classes Java resource file directory, especially property files
commerceue-app/WebContent/ Code/xc-app/commerceue-app.war:/ Web content
commerceue-app/WebContent/WEB-INF/ Code/xc-app/commerceue-app.war:/WEB-INF/ WEB-INF directory
commerceue-app/WebContent/swagger/ Code/xc-app/commerceue-app.war:/swagger/ Swagger web app files
commerceue-app/WebContent/META-INF Code/xc-app/commerceue-app.war:/META-INF/ Web meta information directory
Certs/xc-app
  • This folder does not exist in the default HCL Commerce Build customization (xC) package. The build and deployment process is designed to support the use of the folder as an interface for your extensions.
  • If you want to import your own certificates, you must implement HCL Commerce Build logic to create this folder and to include your certificate JSON file into this folder within a custom package. For more information, see Managing certificates manually.
DeployScripts/xc-app
  • Similar to the Certs folder, the DeployScripts folder does not exist in the default HCL Commerce Build customization (xC) package. The build and deployment process is designed to support the use of the folder as a potential extension point for you to customize the deployment process.
  • If you want to extend the default deployment process with your own custom code logic, you need to implement HCL Commerce Build logic to create the folder and to place your custom shell scripts within the folder. Your custom shell scripts within the folder must be named as applyDeployScripts.sh
  • The default logic to apply changes detects whether there are any applyDeployScripts.sh scripts within the folder. If found, the scripts are run to process any of your custom deployment logic. The default logic to apply changes is defined within the /SETUP/bin/applyCustomization.sh file for reference.