Versions Compared

Key

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

...

  • Bugs, vulnerabilities and availability of patches are communicated with the SOS Change Management System.
  • The article provides information about how to apply patches to a JS7 Agent.
    Display feature availability
    StartingFromRelease2.3.0
  • The article explains how to manually apply patches. For automated patching see JS7 - Automated Installation and Update.

...

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

...

The patch examples will not impact an Agent installation and are used for instructional purposes only. For details see JS-1984.

Note: The Agent has to be stopped before applying patches.

Applying Patch on Unix

Manual Patching

Code Block
languagebash
titleExample how to apply a patch from a .jar file to an Agent for Unix
linenumberstrue
# invoke shell and switch to the user account that owns the Agent's home directory

# navigate to the targethome directory for patches
cd /opt/sos-berlin.com/js7/agent/lib/patches

# download the .jar patch file
curl https://download.sos-berlin.com/patches/2.2.3-patch/js7_agent.2.2.3-PATCH.JS-1984.jar -O
Code Block
languagebash
titleExample how to apply a patch from a .tar.gz file to an Agent for Unix
linenumberstrue
collapsetrue
# invoke shell and switch to the user account that owns the Agent's home directory

# navigate to the targethome directory for patches
cd /opt/sos-berlin.com/js7/agent/lib/patches

# download the .tar.gz patch archive
curl https://download.sos-berlin.com/patches/2.2.3-patch/js7_agent.2.2.3-PATCH.JS-1984.tar.gz -O

# extract the .tar.gz patch archive that includes .jar files
tar -xvzfxvpozf js7_agent.2.2.3-PATCH.JS-1984.tar.gz

# remove the .tar.gz patch archive
rm js7_agent.2.2.3-PATCH.JS-1984.tar.gz

Automated Patching

Code Block
languagebash
titleExample how to apply a patch from a .jar file to an Agent for Unix
linenumberstrue
# invoke shell and switch to the user account that owns the Agent's home directory

# download the .jar patch file
curl https://download.sos-berlin.com/patches/2.2.3-patch/js7_agent.2.2.3-PATCH.JS-1984.jar -O

# apply the patch
./js7_install_agent.sh \
    --patch-jar=js7_agent.2.2.3-PATCH.JS-1984.jar \
    --patch=JS-1984 \
    --home=/opt/sos-berlin.com/js7/agent \
    --http-port=4445
Code Block
languagebash
titleExample how to apply a patch from a .tar.gz file to an Agent for Unix
linenumberstrue
collapsetrue
# invoke shell and switch to the user account that owns the Agent's home directory

# download the .tar.gz patch archive
curl https://download.sos-berlin.com/patches/2.2.3-patch/js7_agent.2.2.3-PATCH.JS-1984.tar.gz -O

# apply the patch
./js7_install_agent.sh \
    --tarball=js7_agent.2.2.3-PATCH.JS-1984.tar.gz \
    --patch=JS-1984 \
    --home=/opt/sos-berlin.com/js7/agent \
    --http-port=4445

Applying Patch on Windows

Manual Patching

Code Block
languagebash
titleExample how to apply a patch from a .jar file to an Agent for Windows
linenumberstrue
@rem invoke Windows shell and switch to the user account that owns the Agent's home directory

@rem navigate to the targethome directory for patches
cd %ProgramFiles%\sos-berlin.com\js7\agent\lib\patches

@rem download from URL https://download.sos-berlin.com/patches/2.2.3-patch/js7_agent.2.2.3-PATCH.JS-1984.jar
@rem copy from download location (could be different from this example)
copy %USERPROFILE%\Downloads\js7_agent.2.2.3-PATCH.JS-1984.jar .
Code Block
languagebash
titleExample how to apply a patch from a .tar.gz archive to an Agent for Windows
linenumberstrue
collapsetrue
@rem invoke Windows shell and switch to the user account that owns the Agent's home directory

@rem navigate to the targethome directory for patches
cd %ProgramFiles%\sos-berlin.com\js7\agent\lib\patches

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

@rem extract the .tar.gz patch archive that includes .jar files
tar.exe -xfxzf js7_agent.2.2.3-PATCH.JS-1984.tar.gz
 
@rem remove the .tar.gz patch archive
del js7_agent.2.2.3-PATCH.JS-1984.tar.gz

Automated Patching

Code Block
languagepowershell
titleExample how to apply a patch from a .jar file to an Agent for Windows
linenumberstrue
# invoke PowerShell and switch to the user account that owns the Agent's home directory

# download from URL
Invoke-WebRequest `
    -Uri 'https://download.sos-berlin.com/patches/2.2.3-patch/js7_agent.2.2.3-PATCH.JS-1984.jar' `
    -Outfile js7_agent.2.2.3-PATCH.JS-1984.jar

# apply the patch 
./Install-JS7Agent.ps1 `
    -PatchJar js7_agent.2.2.3-PATCH.JS-1984.jar `
    -Patch JS-1984 `
    -HomeDir $env:ProgramFiles\sos-berlin.com\js7\agent `
    -HttpPort 4445
Code Block
languagepowershell
titleExample how to apply a patch from a .tar.gz archive to an Agent for Windows
linenumberstrue
collapsetrue
# invoke PowerShell and switch to the user account that owns the Agent's home directory

# download from URL
Invoke-WebRequest `
    -Uri 'https://download.sos-berlin.com/patches/2.2.3-patch/js7_agent.2.2.3-PATCH.JS-1984.tar.gz' `
    -Outfile js7_agent.2.2.3-PATCH.JS-1984.tar.gz 

# apply the patch
/Install-JS7Agent.ps1 `
    -Tarball js7_agent.2.2.3-PATCH.JS-1984.tar.gz `
    -Patch JS-1984 `
    -HomeDir $env:ProgramFiles\sos-berlin.com\js7\agent `
    -HttpPort 4445

Notes

Note: The Agent instance has to be restarted to apply patches.

Note: Users are discouraged from using tools such as 7-Zip to extract the patch archive in case of manual patching. Instead, use the tools available from the OS as indicated by the examples. Do not create a sub-folder from the archive name but extract directly to the directory hierarchy as indicated above.

Hint: For automated rollout of patches see JS7 - Automated Installation and Update.

...