Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Patches are offered from .tar.gz tarball jar Java archive files or from .jar Java tar.gz tarball archive files.
  • The same patch files are applied to Unix and Windows.
  • Patch file names follow the scheme:
    • Unix, Windows: js7_joc.<release>-PATCH.API-<sequence>.<issue-key>[.<security-level>].[tar.gz|jar}
    • The following placeholders are used:
      • release: The JS7 release number, see Releases.
      • sequence:  Patches for a given release are assigned ascending numbers starting from 1. Patches with a higher number include any patches with lower numbers.
      • issue-key: The issue key in the SOS Change Management System, for example: JS-1984.
      • security-level: The security level applies if the patch is specific for JOC Cockpit running in one of the security levels low, medium, high. For details see JS7 - Security Architecture.
    • Example:
      • Unix, Windows: js7_joc.2.2.3-PATCH.API-1.JS-1984.tar.gzjar, js7_joc.2.2.3-PATCH.API-1.JS-1984.tar.jocgz
  • Patch .tar.gz archive files do not include a directory hierarchy.

...

Download Patches

The JOC Cockpit expects Java .jar libraries for patches to be extracted to its data directory in following location:

  • Unix
    • /var/sos-berlin.com/js7/joc/webapps/joc/WEB-INF/classes
  • Windows
    • C:\ProgramData\sos-berlin.com\js7\joc\webapps\joc\WEB-INF\classes

The first part of the path including the jetty_base is specified during installation and can point to a different location. The remaining webapps/joc/WEB-INF/classes part of the path will remain the same for all installations.

Download Patch

Find the following examples for a patch:

ProductTypeFile ExtensionPatch Example Download URLHashSigTSR
JS7 JOC Cockpit
tarball
Java archive.
tar.gz
jarhttps://download.sos-berlin.com/patches/2.2.3-patch/js7_joc.2.2.3-PATCH.API-1.JS-1984.
tar.gz
jarsha256sigtsr
Java

tarball archive.
jar
tar.gzhttps://download.sos-berlin.com/patches/2.2.3-patch/js7_joc.2.2.3-PATCH.API-1.JS-1984.
jar
tar.gzsha256sigtsr

This The patch does examples will not impact a JOC Cockpit installation and is are used for instructional purposes only. For details see JS-1984.

...

Before applying patches users might want to verify the integrity and authenticity of downloaded files, see JS7 - Verifying releases.

Anchor
on_premises
on_premises
Patches for JOC Cockpit On Premises

The JOC Cockpit expects Java .

...

jar files for patches to be extracted to its data directory in following location:

  • Unix
    • /var/sos-berlin.com/js7/joc/webapps/joc/WEB-INF/classes
  • Windows
    • C:\ProgramData\sos-berlin.com\js7\joc\webapps\joc\WEB-INF\classes

The first part of the path including the jetty_base is specified during installation and can point to a different location. The remaining webapps/joc/WEB-INF/classes part of the path is the same for all installations.

Applying Patches

Apply the following steps to a JOC Cockpit instance. If a JOC Cockpit cluster is operated then the steps are have to be performed for all JOC Cockpit instances.

The example patch does examples will not impact a JOC Cockpit installation and is are used for instructional purposes only - , for details see JS-1984.

...

Applying Patch on Unix

Code Block
languagebash
titleExample how to apply a patch from a .tar.gz archive jar file to JOC Cockpit for Unix
linenumberstrue
# navigate to the target directory for patches
cd /var/sos-berlin.com/js7/joc/webapps/joc/WEB-INF/classes

# verify the directory by checking if this file is available
ls api-schema-version.json

# download the patch archivefile
curl https://download.sos-berlin.com/patches/2.2.3-patch/js7_joc.2.2.3-PATCH.API-1.JS-1984.tar.gzjar -O

# extract the patch archive that includes .jar files
tar -xvzf js7_joc.2.2.3-PATCH.API-1.JS-1984.tar.gz

# extract the jar file (use "jar" or "unzip" command)
jar -xf js7_joc.2.2.3-PATCH.API-1.JS-1984.jar

# remove the jar file and patch archive
rm js7_joc.2.2.3-PATCH.API-1.JS-1984.jar
rm js7_joc.2.2.3-PATCH.API-1.JS-1984.tar.gz
Code Block
languagebash
titleExample how to apply a patch from a .tar.jar file gz archive to JOC Cockpit for Unix
linenumberstrue
# navigate to the target directory for patches
cd /var/sos-berlin.com/js7/joc/webapps/joc/WEB-INF/classes

# verify the directory by checking if this file is available
ls api-schema-version.json

# download the patch filearchive
curl https://download.sos-berlin.com/patches/2.2.3-patch/js7_joc.2.2.3-PATCH.API-1.JS-1984.tar.gz -O

# extract the patch archive that includes .jar -Ofiles
tar -xvzf js7_joc.2.2.3-PATCH.API-1.JS-1984.tar.gz

# extract the jar file (use "jar" or "unzip" command)
jar -xf js7_joc.2.2.3-PATCH.API-1.JS-1984.jar

# remove the jar file and patch archive
rm js7_joc.2.2.3-PATCH.API-1.JS-1984.jar

...


rm js7_joc.2.2.3-PATCH.API-1.JS-1984.tar.gz

Applying Patch on Windows

Code Block
languagebash
titleExample how to apply a patch from a .tar.gz archive to JOC Cockpit for Windows
linenumberstrue
@rem navigate to the target directory for patches
cd %ProgramData%\sos-berlin.com\js7\joc\webapps\joc\WEB-INF\classes

@rem verify the directory by checking if this file is available
dir api-schema-version.json

@rem download from URL https://download.sos-berlin.com/patches/2.2.3-patch/js7_joc_windows.2.2.3-PATCH.API-1.JS-1984.tar.gz
@rem copy from download location (could be different from this example)
copy %USERPROFILE%\Downloads\js7_joc.2.2.3-PATCH.API-1.JS-1984.tar.gz .

@rem extract the patch archive that includes .jar files
tar.exe -xf js7_joc.2.2.3-PATCH.API-1.JS-1984.tar.gz

@rem extract the .jar files (use "jar" or "unzip" command)
jar -xf js7_joc.2.2.3-PATCH.API-1.JS-1984.jar

@rem remove the .jar file and patch archive
del js7_joc.2.2.3-PATCH.API-1.JS-1984.jar
del js7_joc.2.2.3-PATCH.API-1.JS-1984.tar.gz

...

The resulting directory hierarchy starting from the com sub-directory being that is created from the extracted patch should look like this:

...

Note: As an alternative for Windows you users can download the .jar patch file to the target directory and use tools such as 7-Zip to extract the archive. Do not create a sub-folder from the archive name but extract directly to the directory hierarchy as indicated above.

...

Removing Patches

Patches are automatically removed when a JOC Cockpit release is installed.

...

Note: The JOC Cockpit has to be restarted to apply removal of patches.

Anchor
docker_containers
docker_containers
Patches for JOC Cockpit

...

Container

JOC Cockpit expects Java .jar libraries files for patches from the following location:

  • /var/sos-berlin.com/js7/joc/resources/joc/patches
  • The directory /var/sos-berlin.com/js7/joc/resources/joc typically is mounted to a config volume when running the container: for details see JS7 - JOC Cockpit Installation for Containers. The patches sub-directory should be created if it does not exist before storing the patch file to this location.
  • If a patch is provided from a .tar.gz archive file then users should extract the archive and store the .

...

  • jar files included to the config/patches sub-directory.

Applying Patches

On start-up the JOC Cockpit container checks the above directory for existence of *.jar files. If a file is found then:

...

Patches are applied on start-up of a container. Therefore patch Patch files remain in place in the the /var/sos-berlin.com/js7/joc/resources/joc/patches sub-directory (typically mounted to the config/patches volume directory) as long as the patch is to be appliedfor the lifetime of the JOC Cockpit release in use. Patches have to be removed if a newer release of JOC Cockpit is used.

Note: The JOC Cockpit container has to be restarted before to apply patches are applied.

...

Removing Patches

Patch files are removed by dropping the files in the patches sub-directory.

Patch files Patches are not automatically removed when updating or upgrading the JOC Cockpit image. If a newer JOC Cockpit release is used then this includes any fixes provided by previous patches. Users have to remove patch files when applying new releases.

Note: The JOC Cockpit container has to be restarted before patches are removedto make removal of patches effective.