Updating custom extensions in a containerized environment
To update custom extensions, extract the runtime to the host machine, develop your
customizations, build a customization package, then update the environment by running the
om-compose.sh
script.
Procedure
-
Extract the runtime to the host machine by the running the following command from the
compose
directory, only if you do not already have an extracted runtime on the host machine.
./om-compose.sh extract-rt <full_path_to_host_runtime_parent_directory> - Run the following command to deploy the extensions directly from the project into your
developer toolkit environment:
./sci_ant.sh -f ../devtoolkit/devtoolkit_extensions.xml importfromproject -Dprojectdir=<project_path>
Here,<project_path>
refers to the project root directory.When you run this command, the custom source files are compiled into a
custom_impl.jar
archive and copied to the<runtime>/jar/custom_jars/1_0
directory along with other dependent Java archives that are in the<lib>
directory. The archives that are copied are added to all class paths in the runtime component.If the command fails due to compilation errors, the project directory not conforming to the structure specified, or any other error, you can manually deploy the extensions to the runtime component.
- After you complete the customizations, build your customization package from the
customized files in the extracted runtime. Build your customization package as an
InstallService-able JAR
by using thedevtoolkit_extensions.xml
file.
From the<host_runtime>/bin
directory, run the following command:
./sci_ant.sh -f ../devtoolkit/devtoolkit_extensions.xml export.
The customization package is exported asextensions.jar
in the parent directory of your runtime directory.Note: Review your generatedextensions.jar
. If is does not contain any specific extension files, patch them manually into this JAR file. - Update your existing Docker Compose environment with the generated
extensions.jar
by running the following command:
./om-compose.sh update-extn <full_path_to_extensions.jar>This command applies the customizations to your Docker Compose environment, rebuilds, and redeploys your applications.