Chapter 6. Patching a Fuse on JBoss EAP installation
This chapter explains how to apply a Fuse hotfix patch to an existing Fuse on JBoss EAP installation. It includes the following topics:
Upgrading JBoss EAP
You can also upgrade the underlying version of JBoss EAP to another version that is supported by Fuse without needing to reinstall and redeploy Fuse on JBoss EAP. For more details, see the JBoss EAP Patching and Upgrading Guide.
You can only upgrade JBoss EAP to a version that is documented as supported on the Fuse Supported Configurations page.
6.1. Hotfix patches for Fuse on JBoss EAP
Fuse hotfix patches contain updated versions of specific files in a Fuse on JBoss EAP installation. They typically include only fixes for one or more critical bugs. Hotfix patches are applied on top of your existing Red Hat Fuse distribution and update a subset of the existing Fuse files only.
Applying patches for Fuse on JBoss EAP is a two-stage process where patch files are first added to a patch repository and then installed in the JBoss EAP server. The following diagram shows an overview of the Fuse patching process on JBoss EAP:
- Patch repository
- The patch repository is a holding area for Fuse on JBoss EAP patches that runs in the same JVM as the JBoss EAP server. When a patch is present in the repository, this does not imply that it has been installed in the JBoss EAP server. You must first add the patch to the repository, and then you can install the patch from the repository into the JBoss EAP server.
- fusepatch utility
-
The
fusepatch
utility is a command-line tool for patching Fuse on JBoss EAP. After installing the Fuse on EAP package, thefusepatch.sh
script (Linux and UNIX) and thefusepatch.bat
(Windows) script are available in thebin
directory of the JBoss EAP server.
6.2. Installing a Fuse hotfix patch on JBoss EAP
A Fuse hotfix patch must be installed on top of an existing Fuse installation. This section explains how to install a hotfix patch, fuse-eap-distro-VERSION.fuse-MODULE_ID.HOTFIX_ID.zip
, on top of an existing Fuse installation that already includes fuse-eap-distro-VERSION.fuse-MODULE_ID-redhat-BASE_ID
.
Prerequisites
- Section 6.1, “Hotfix patches for Fuse on JBoss EAP”.
-
Download the hotfix patch
.zip
file available on demand from Red Hat Support. -
Read the instructions in the
readme.txt
file accompanying the hotfix patch file, in case there are any extra steps that you must perform to install it. - Make a full backup of your Fuse on JBoss EAP installation before applying the patch.
Procedure
-
Copy the hotfix patch file to your
EAP_HOME
directory. Make sure that the correct base version has already been added to your patch repository and installed on the JBoss EAP server.
For example, given a base module
fuse-eap-distro-7.10.0.fuse-sb2-7_10_0-00014-redhat-00001
, to check theMODULE_ID
andBASE_ID
that are installed in the repository, enter the following command:bin/fusepatch.sh --query-repository
The following response should be returned:
fuse-eap-distro-7.10.0.fuse-sb2-7_10_0-00014-redhat-00001
And to check that the same IDs are installed on the JBoss EAP server, enter the following command:
bin/fusepatch.sh --query-server
The following response should be returned:
fuse-eap-distro-7.10.0.fuse-sb2-7_10_0-00014-redhat-00001
Given the one-off hotfix patch file,
fuse-eap-distro-7.7.0.fuse-770013.hf1.zip
, add this to your repository and associate it with the base installation by entering the following command:bin/fusepatch.sh --add file:fuse-eap-distro-7.7.0.fuse-770013.hf1.zip --one-off fuse-eap-distro-7.10.0.fuse-sb2-7_10_0-00014-redhat-00001
Given the base module,
fuse-eap-distro-7.10.0.fuse-sb2-7_10_0-00014-redhat-00001
, update the JBoss EAP server to the latest version:bin/fusepatch.sh --update fuse-eap-distro-7.7.0.fuse-770013.hf1
- Perform any post-installation steps documented in the patch instructions.
Additional resources
For more details on the
fusepatch
command, enter:bin/fusepatch.sh --help