DIY model

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

  1. 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>
  2. 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.

  3. 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 the devtoolkit_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 as extensions.jar in the parent directory of your runtime directory.
    Note: Review your generated extensions.jar. If is does not contain any specific extension files, patch them manually into this JAR file.
  4. 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.