Versions Compared

Key

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

Table of Contents

Introduction

JS7 supports automated installation and updates from Installation Scripts:

Install and Update

Install JOC Cockpit for

...

Linux

Install or Update from Download using individual Database

Code Block
languagepowershell
titleExample for use of Installation Script
#!/usr/bin/env pwsh

./Install-JS7Joc.ps1 `
    -InstanceId 1Release 2.5.2 `
    -UserHomeDir /home/sos/joc `
    -HomeDir "/opt/sos-berlin.com/js7/joc"HttpPort 4446 `
    -DataDBMSConfig "/varhome/sos-berlin.com/js7/joc"/joc-deployment/hibernate.cfg.xml `
    -TarballJavaHome /mntopt/releases/scheduler_setups/current/js7_joc_unix.2.5.2.tar.gzjava/jdk-11.0.2+9 `
    -HttpPortAsUser 4446 `
    -Title "Primary -MakeDirs

# installs JOC Cockpit" `
    -DBMSConfig "/home/sos/ for the current user account
# requires that the user creates a hibernate.cfg.xml" `
file for database access -JavaHome "/opt/java/jdk-11.0.2+9" `
    -PreserveEnv `
    -AsUser `
    -ExecStart StartService `
    -ExecStop StopService `
    -MakeService `
    -JavaHome "/opt/java/jdk-11.0.2+9" `
    -MakeDirs

# Installs the JOC Cockpit from the given tarball for the current user account
# Operates the JOC Cockpit for HTTP port 4446 running for the indicated run-time user account
# Specifies a Hibernate configuration file for database access
# Specifies Java from the given location
# Creates the JOC Cockpit's systemd service

Install JOC Cockpit for Windows

Install JOC Cockpit for HTTP Connections

Code Block
languagepowershell
titleExample for use of Installation Script
./Install-JS7Joc.ps1 `
    -InstanceId 1 `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -Tarball "C:\js7\downloads\js7_joc_windows.2.5.2.zip `
    -HttpPort 4446 `
    -Title "Primary JOC Cockpit" `
    -DBMSConfig "C:\js7\hibernate.cfg.xml" `
    -ExecStart StartService `
    -ExecStop StopService `
    -MakeService `
    -ServiceCredentials ( New-Object -typename System.Management.Automation.PSCredential -ArgumentList '.\sos', ( 'sos' | ConvertTo-SecureString -AsPlainText -Force) ) `
    -MakeDirs
 
# Installs the JOC Cockpit from the indicated .zip archive
# Creates the JOC Cockpit's Windows Service for the local account ".\sos" using the password "sos"
# There are alternative ways how to avoid passwords from being specified in plain text
# Specifies a Hibernate configuration file for database access
# Stops the JOC Cockpit's Windows Service before installation and starts the service after installation
prior to installation
# specifies the Java home location
# downloads the JOC Cockpit release tarball from the SOS Web Site
# creates the home directory if it does not exist
# extracts the tarball and runs the JOC Cockpit installer
# operates JOC Cockpit for HTTP port 4446

Note:

Install or Update from Download using embedded Database

Code Block
languagepowershell
titleExample for use of Installation Script
Invoke-WebRequest -Uri 'https://repo1.maven.org/maven2/com/h2database/h2/1.4.200/h2-1.4.200.jar' -Outfile /tmp/h2-1.4.200.jar

./Install-JS7Joc.ps1 `
    -Release 2.5.2 `
    -HomeDir /home/sos/joc `
    -HttpPort 4446 `
    -DBMSConfig H2 `
    -DBMSDriver /tmp/h2-1.4.200.jar `
    -JavaHome /opt/java/jdk-11.0.2+9 `
    -AsUser `
    -MakeDirs

# downloads the H2 embedded database from Maven Central using Invoke-WebRequest
# downloads the JOC Cockpit release tarball from the SOS Web Site
# specifies the built-in H2 configuration to be used and the location of the JDBC Driver .jar file
# specifies the Java home location
# creates the home directory if it does not exist
# extracts the tarball and runs the JOC Cockpit installer
# operates JOC Cockpit for HTTP port 4446

Install or Update from Tarball using individual database

Code Block
languagepowershell
titleExample for use of Installation Script
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7_joc_linux.2.5.2.tar.gz' -Outfile /tmp/js7_joc_linux.2.5.2.tar.gz

./Install-JS7Joc.ps1 `
    -Tarball /tmp/js7_joc_linux.2.5.2.tar.gz `
    -HomeDir /home/sos/joc `
    -HttpPort 4446 `
    -DBMSConfig /home/sos/joc-deployment/hibernate.cfg.xml `
    -JavaHome /opt/java/jdk-11.0.2+9 `
    -AsUser `
    -MakeDirs

# downloads the H2 embedded database from Maven Central using Invoke-WebRequest
# downloads the JOC Cockpit release tarball from the SOS Web Site
# specifies the Java home location
# creates the home directory if it does not exist
# extracts the tarball and runs the JOC Cockpit installer
# operates JOC Cockpit for HTTP port 4446

Install or Update using separate Home and Data Directories

Code Block
languagepowershell
titleExample for use of Installation Script
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7_joc_linux.2.5.2.tar.gz' -Outfile /tmp/js7_joc_linux.2.5.2.tar.gz

./Install-JS7Joc.ps1 `
    -Tarball /tmp/js7_joc_linux.2.5.2.tar.gz `
    -HomeDir /opt/sos-berlin.com/js7/joc `
    -Data /var/sos-berlin.com/js7/joc `
    -HttpPort 4446 `
    -DBMSConfig /home/sos/joc-deployment/hibernate.cfg.xml `
    -JavaHome /opt/java/jdk-11.0.2+9 `
    -AsUser `
    -MakeDirs

# downloads the JOC Cockpit release tarball from the SOS Web Site using Invoke-WebRequest
# users might prefer to store configuration data and log data separately from the home directory
# installs JOC Cockpit for the current user account
# requires that the user creates a hibernate.cfg.xml file for database access prior to installation
# specifies the Java home location
# creates the home directory if it does not exist
# extracts the tarball and runs the JOC Cockpit installer
# operates JOC Cockpit for HTTP port 4446

Install or Update from Download with Commercial License

Code Block
languagepowershell
titleExample for use of Installation Script
./Install-JS7Joc.ps1 `
    -Releae 2.5.2 `
    -HomeDir /home/sos/joc `
    -HttpPort 4446 `
    -DBMSConfig /home/sos/joc-deployment/hibernate.cfg.xml `
    -LicenseKey /home/sos/joc-deployment/example.pem `
    -JavaHome /opt/java/jdk-11.0.2+9 `
    -AsUser `
    -MakeDirs

# installs JOC Cockpit for the current user account
# requires that the user creates a hibernate.cfg.xml file for database access prior to installation
# specifies the location of the JS7 license key
# specifies the Java home location
# downloads the JOC Cockpit release tarball from the SOS Web Site
# creates the home directory if it does not exist
# extracts the tarball and runs the JOC Cockpit installer
# operates JOC Cockpit for HTTP port 4446

Install or Update from Tarball with Commercial License

Code Block
languagepowershell
titleExample for use of Installation Script
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7_joc_linux.2.5.2.tar.gz' -Outfile /tmp/js7_joc_linux.2.5.2.tar.gz
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7-license.jar' -Outfile /tmp/js7-license.jar

./Install-JS7Joc.ps1 `
    -Tarball /tmp/js7_joc_linux.2.5.2.tar.gz `
    -HomeDir /home/sos/joc `
    -HttpPort 4446 `
    -DBMSConfig /home/sos/joc-deployment/hibernate.cfg.xml `
    -LicenseKey /home/sos/joc-deployment/example.pem `
    -LicenseBin /tmp/js7_joc_linux.2.5.2.tar.gz `
    -JavaHome /opt/java/jdk-11.0.2+9 `
    -AsUser `
    -MakeDirs

# downloads the JOC Cockpit release tarball from the SOS Web Site using Invoke-WebRequest
# downloads the binary file for licensed code to enable cluster operations using Invoke-WebRequest
# specifies the location of the JS7 license key and of the .jar file for licensed binary code
# specifies the Java home location
# creates the home directory if it does not exist
# extracts the tarball and runs the JOC Cockpit installer
# operates JOC Cockpit for HTTP port 4446

Install or Update Secondary JOC Cockpit Instances for Cluster Operations

Code Block
languagepowershell
titleExample for use of Installation Script
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7_joc_linux.2.5.2.tar.gz' -Outfile /tmp/js7_joc_linux.2.5.2.tar.gz
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7-license.jar' -Outfile /tmp/js7-license.jar

./Install-JS7Joc.ps1 `
    -Tarball /tmp/js7_joc_linux.2.5.2.tar.gz `
    -ClusterId joc `
    -InstanceId 1 `
    -Title "Secondary JOC Cockpit" `
    -HomeDir /home/sos/joc `  
    -HttpPort 4446 `
    -DBMSConfig /home/sos/joc-deployment/hibernate.cfg.xml `
    -LicenseKey /home/sos/joc-deployment/example.pem `
    -LicenseBin /tmp/js7_joc_linux.2.5.2.tar.gz `
    -JavaHome /opt/java/jdk-11.0.2+9 `
    -AsUser `
    -MakeDirs

# downloads the JOC Cockpit release tarball from the SOS Web Site using Invoke-WebRequest
# downloads the binary file for licensed code to enable cluster operations using Invoke-WebRequest
# specifies the Cluster ID that is the same for all JOC Cockpit instances in a cluster
# specifies the Instance ID that is a number between 0 and 99:
#   Instance IDs specify the ordering of JOC Cockpit icons in the Dashboard
#   the first JOC Cockpit started becomes the active node in a cluster independent from its Instance ID
# specifies the title that acts as a caption for JOC Cockpit icons in the Dashbaord
# specifies the location of the JS7 license key and of the .jar file for licensed binary code
# specifies the Java home location
# creates the home directory if it does not exist
# extracts the tarball and runs the JOC Cockpit installer
# operates JOC Cockpit for HTTP port 4446

Install or Update from Tarball using a Response Directory

Code Block
languagepowershell
titleExample for use of Installation Script
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7_joc_linux.2.5.2.tar.gz' -Outfile /tmp/js7_joc_linux.2.5.2.tar.gz

./Install-JS7Joc.ps1 `
    -Tarball /tmp/js7_joc_linux.2.5.2.tar.gz `
    -ResponseDir /home/sos/joc-deployment/response `
    -HomeDir /home/sos/joc `
    -HttpPort 4446 `
    -JavaHome /opt/java/jdk-11.0.2+9 `
    -AsUser `
    -MakeDirs

# downloads the JOC Cockpit release tarball from the SOS Web Site using Invoke-WebRequest
# specifies a response directory that holds
#    the joc_install.xml file for installation options such as the HTTP Port
#    the hibernate.cfg.xml configuration file for database access
# specifies the Java home location
# creates the home and data directories if they doe not exist
# extracts the tarball and runs the JOC Cockpit installer
# operates JOC Cockpit for HTTP port 4446

Note:

Install or Update and Stop/Start using systemd

Code Block
languagepowershell
titleExample for use of Installation Script
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7_joc_linux.2.5.2.tar.gz' -Outfile /tmp/js7_joc_linux.2.5.2.tar.gz

./Install-JS7Joc.ps1 `
    -Tarball /tmp/js7_joc_linux.2.5.2.tar.gz `
    -HomeDir /home/sos/joc `
    -HttpPort 4446 `
    -DBMSConfig /home/sos/joc-deployment/hibernate.cfg.xml `
    -JavaHome /opt/java/jdk-11.0.2+9 `
    -ExecStart StartService `
    -ExecStop StopService `
    -MakeService `
    -AsUser `
    -MakeDirs

# downloads the JOC Cockpit release tarball from the SOS Web Site using Invoke-WebRequest
# creates the home directory if it does not exist
# extracts the tarball and runs the JOC Cockpit installer
# creates the JOC Cockpit's systemd service
# stops and starts the JOC Cockpit's systemd service
# operates JOC Cockpit for HTTP port 4446

Install or Update and Stop/Start using individual Commands

Code Block
languagepowershell
titleExample for use of Installation Script
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7_joc_linux.2.5.2.tar.gz' -Outfile /tmp/js7_joc_linux.2.5.2.tar.gz

./Install-JS7Joc.ps1 `
    -Tarball /tmp/js7_joc_linux.2.5.2.tar.gz `
    -HomeDir /home/sos/joc `
    -HttpPort 4446 `
    -DBMSConfig /home/sos/joc-deployment/hibernate.cfg.xml `
    -JavaHome /opt/java/jdk-11.0.2+9 `
    -ExecStart "sudo systemctl start js7_joc" `
    -ExecStop "sudo systemctl start js7_joc" `
    -AsUser `
    -MakeDirs

# downloads the JOC Cockpit release tarball from the SOS Web Site using Invoke-WebRequest
# creates the home directory if it does not exist
# extracts the tarball and runs the JOC Cockpit installer
# stops and starts the JOC Cockpit by individual commands
# operates JOC Cockpit for HTTP port 4446

Install or Update and Stop/Start using Instance Start Script

Code Block
languagepowershell
titleExample for use of Installation Script
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7_joc_linux.2.5.2.tar.gz' -Outfile /tmp/js7_joc_linux.2.5.2.tar.gz

./Install-JS7Joc.ps1 `
    -Tarball /tmp/js7_joc_linux.2.5.2.tar.gz `
    -HomeDir /home/sos/joc `
    -HttpPort 4446 `
    -DBMSConfig /home/sos/joc-deployment/hibernate.cfg.xml `
    -JavaHome /opt/java/jdk-11.0.2+9 `
    -ExecStart "/home/sos/joc/jetty/bin/jetty.sh stop" `
    -ExecStop "/home/sos/joc/jetty/bin/jetty.sh start" `
    -AsUser `
    -MakeDirs

# downloads the JOC Cockpit release tarball from the SOS Web Site using Invoke-WebRequest
# creates the home directory if it does not exist
# extracts the tarball and runs the JOC Cockpit installer
# stops and starts the JOC Cockpit by its instance start script <home>/jetty/bin/jetty.sh
# operates JOC Cockpit for HTTP port 4446

Install or Update and Apply Certificates for HTTPS Connections

Code Block
languagepowershell
titleExample for use of Installation Script
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7_joc_linux.2.5.2.tar.gz' -Outfile /tmp/js7_joc_linux.2.5.2.tar.gz

./Install-JS7Joc.ps1 `
    -Tarball /tmp/js7_joc_linux.2.5.2.tar.gz `
    -HomeDir /home/sos/joc `
    -HttpsPort 4446 `
    -DBMSConfig /home/sos/joc-deployment/hibernate.cfg.xml `
    -JavaHome /opt/java/jdk-11.0.2+9 `
    -Keystore /home/sos/joc-deployment/https-keystore.p12 `
    -KeystorePassword ('jobscheduler' | ConvertTo-SecureString -AsPlainText -Force) `
    -Truststore /home/sos/joc-deployment/https-truststore.p12 `
    -TruststorePassword ('jobscheduler' | ConvertTo-SecureString -AsPlainText -Force) `
    -ExecStart StartService `
    -ExecStop StopService `
    -MakeService `
    -AsUser `
    -MakeDirs

# downloads the JOC Cockpit release tarball from the SOS Web Site using Invoke-WebRequest
# creates the home directory if it does not exist
# extracts the tarball and runs the JOC Cockpit installer
# deploys keystore and truststore files
# creates the systemd service
# stops and starts JOC Cockpit by its systemd service
# operates JOC Cockpit for HTTPS port 4446

Renew Certificates for HTTPS Connections

Code Block
languagepowershell
titleExample for use of Installation Script
./Install-JS7Joc.ps1 `
    -HomeDir /home/sos/joc `
    -HttpsPort 4446 `
    -JavaHome /opt/java/jdk-11.0.2+9 `
    -Keystore /home/sos/joc-deployment/https-keystore.p12 `
    -KeystorePassword ('jobscheduler' | ConvertTo-SecureString -AsPlainText -Force) `
    -Truststore /home/sos/joc-deployment/https-truststore.p12 `
    -TruststorePassword ('jobscheduler' | ConvertTo-SecureString -AsPlainText -Force) `
    -ExecStart StartService `
    -ExecStop StopService `
    -NoInstall

# performs no installation but certificate renewal only
# addresses an existing JOC Cockpit instance operated for HTTPS port 4446
# deploys keystore and truststore files
# stops and starts JOC Cockpit by its systemd service

Install JOC Cockpit for Windows

Install or Update from Download using individual Database

Code Block
languagepowershell
titleExample for use of Installation Script
./Install-JS7Joc.ps1 `
    -Release 2.5.2 `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -HttpPort 4446 `
    -DBMSConfig C:\js7\joc-deployment\hibernate.cfg.xml `
    -JavaHome "C:\Program Files\Java\jdk-11.0.2+9" `
    -AsUser `
    -MakeDirs

# installs JOC Cockpit for the current user account
# requires that the user creates a hibernate.cfg.xml file for database access prior to installation
# specifies the Java home location
# downloads the JOC Cockpit release tarball from the SOS Web Site
# creates the home and data directories if they do not exist
# extracts the tarball and runs the JOC Cockpit installer
# operates JOC Cockpit for HTTP port 4446

Note:

Install or Update from Download using embedded Database

Code Block
languagepowershell
titleExample for use of Installation Script
Invoke-WebRequest -Uri 'https://repo1.maven.org/maven2/com/h2database/h2/1.4.200/h2-1.4.200.jar' -Outfile C:\tmp\h2-1.4.200.jar

./Install-JS7Joc.ps1 `
    -Release 2.5.2 `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -HttpPort 4446 `
    -DBMSConfig H2 `
    -DBMSDriver C:\tmp\h2-1.4.200.jar `
    -JavaHome "C:\Program Files\Java\jdk-11.0.2+9" `
    -AsUser `
    -MakeDirs

# downloads the H2 embedded database from Maven Central using Invoke-WebRequest
# downloads the JOC Cockpit release tarball from the SOS Web Site
# specifies the built-in H2 configuration to be used and the location of the JDBC Driver .jar file
# specifies the Java home location
# creates the home and data directories if they do not exist
# extracts the tarball and runs the JOC Cockpit installer
# operates JOC Cockpit for HTTP port 4446

Install or Update from Tarball using individual database

Code Block
languagepowershell
titleExample for use of Installation Script
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7_joc_windows.2.5.2.zip' -Outfile C:\tmp\js7_joc_windows.2.5.2.zip

./Install-JS7Joc.ps1 `
    -Tarball C:\tmp\js7_joc_windows.2.5.2.zip `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -HttpPort 4446 `
    -DBMSConfig C:\js7\joc-deployment\hibernate.cfg.xml ` 
    -JavaHome "C:\Program Files\Java\jdk-11.0.2+9" `
    -AsUser `
    -MakeDirs

# downloads the H2 embedded database from Maven Central using Invoke-WebRequest
# downloads the JOC Cockpit release tarball from the SOS Web Site
# specifies the Java home location
# creates the home directory if it does not exist
# extracts the tarball and runs the JOC Cockpit installer
# operates JOC Cockpit for HTTP port 4446

Install or Update from Download with Commercial License

Code Block
languagepowershell
titleExample for use of Installation Script
./Install-JS7Joc.ps1 `
    -Releae 2.5.2 `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -HttpPort 4446 `
    -DBMSConfig C:\js7\joc-deployment\hibernate.cfg.xml `
    -LicenseKey C:\js7\joc-deployment\example.pem `
    -JavaHome "C:\Program Files\Java\jdk-11.0.2+9" `
    -AsUser `
    -MakeDirs

# installs JOC Cockpit for the current user account
# requires that the user creates a hibernate.cfg.xml file for database access prior to installation
# specifies the location of the JS7 license key
# specifies the Java home location
# downloads the JOC Cockpit release tarball from the SOS Web Site
# creates the home directory if it does not exist
# extracts the tarball and runs the JOC Cockpit installer
# operates JOC Cockpit for HTTP port 4446

Install or Update from Tarball with Commercial License

Code Block
languagepowershell
titleExample for use of Installation Script
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7_joc_windows.2.5.2.zip' -Outfile C:\tmp\js7_joc_windows.2.5.2.zip
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7-license.jar' -Outfile C:\tmp\js7-license.jar

./Install-JS7Joc.ps1 `
    -Tarball C:\tmp\js7_joc_windows.2.5.2.zip `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -HttpPort 4446 `
    -DBMSConfig C:\js7\joc-deployment\hibernate.cfg.xml `
    -LicenseKey C:\js7\joc-deployment\example.pem `
    -LicenseBin C:\tmp\js7-license.jar `
    -JavaHome "C:\Program Files\Java\jdk-11.0.2+9" `
    -AsUser `
    -MakeDirs

# downloads the JOC Cockpit release tarball from the SOS Web Site using Invoke-WebRequest
# downloads the binary file for licensed code to enable cluster operations using Invoke-WebRequest
# specifies the location of the JS7 license key and of the .jar file for licensed binary code
# specifies the Java home location
# creates the home directory if it does not exist
# extracts the tarball and runs the JOC Cockpit installer
# operates JOC Cockpit for HTTP port 4446

Install or Update Secondary JOC Cockpit Instances for Cluster Operations

Code Block
languagepowershell
titleExample for use of Installation Script
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7_joc_windows.2.5.2.zip' -Outfile C:\tmp\js7_joc_windows.2.5.2.zip
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7-license.jar' -Outfile C:\tmp\js7-license.jar

./Install-JS7Joc.ps1 `
    -Tarball C:\tmp\js7_joc_windows.2.5.2.zip `
    -ClusterId joc `
    -InstanceId 1 `
    -Title "Secondary JOC Cockpit" `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -HttpPort 4446 `
    -DBMSConfig C:\js7\joc-deployment\hibernate.cfg.xml `
    -LicenseKey C:\js7\joc-deployment\example.pem `
    -LicenseBin C:\tmp\js7-license.jar `
    -JavaHome "C:\Program Files\Java\jdk-11.0.2+9" `
    -AsUser `
    -MakeDirs

# downloads the JOC Cockpit release tarball from the SOS Web Site using Invoke-WebRequest
# downloads the binary file for licensed code to enable cluster operations using Invoke-WebRequest
# specifies the Cluster ID that is the same for all JOC Cockpit instances in a cluster
# specifies the Instance ID that is a number between 0 and 99:
#   Instance IDs specify the ordering of JOC Cockpit icons in the Dashboard
#   the first JOC Cockpit started becomes the active node in a cluster independent from its Instance ID
# specifies the title that acts as a caption for JOC Cockpit icons in the Dashbaord
# specifies the location of the JS7 license key and of the .jar file for licensed binary code
# specifies the Java home location
# creates the home directory if it does not exist
# extracts the tarball and runs the JOC Cockpit installer
# operates JOC Cockpit for HTTP port 4446

Install or Update from Tarball using a Response Directory

Code Block
languagepowershell
titleExample for use of Installation Script
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7_joc_windows.2.5.2.zip' -Outfile C:\tmp\js7_joc_windows.2.5.2.zip

./Install-JS7Joc.ps1 `
    -Tarball C:\tmp\js7_joc_windows.2.5.2.zip `
    -ResponseDir C:\js7\joc-deployment\response `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -HttpPort 4446 `
    -JavaHome "C:\Program Files\Java\jdk-11.0.2+9" `
    -AsUser `
    -MakeDirs

# downloads the JOC Cockpit release tarball from the SOS Web Site using Invoke-WebRequest
# specifies a response directory that holds
#    the joc_install.xml file for installation options such as the HTTP Port
#    the hibernate.cfg.xml configuration file for database access
# specifies the Java home location
# creates the home and data directories if they doe not exist
# extracts the tarball and runs the JOC Cockpit installer
# operates JOC Cockpit for HTTP port 4446

Note:

Install or Update and Stop/Start using Windows Service

Code Block
languagepowershell
titleExample for use of Installation Script
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7_joc_windows.2.5.2.zip' -Outfile C:\tmp\js7_joc_windows.2.5.2.zip

./Install-JS7Joc.ps1 `
    -Tarball C:\tmp\js7_joc_windows.2.5.2.zip `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -HttpPort 4446 `
    -DBMSConfig C:\js7\joc-deployment\hibernate.cfg.xml `
    -JavaHome "C:\Program Files\Java\jdk-11.0.2+9" `
    -ExecStart StartService `
    -ExecStop StopService `
    -MakeService `
    -AsUser `
    -MakeDirs

# downloads the JOC Cockpit release tarball from the SOS Web Site using Invoke-WebRequest
# creates the home directory if it does not exist
# extracts the tarball and runs the JOC Cockpit installer
# creates the JOC Cockpit's systemd service
# stops and starts the JOC Cockpit's systemd service
# operates JOC Cockpit for HTTP port 4446

Install or Update and Apply Certificates for HTTPS Connections

Code Block
languagepowershell
titleExample for use of Installation Script
Invoke-WebRequest -Uri 'https://download.sos-berlin.com/JobScheduler.2.5/js7_joc_windows.2.5.2.zip' -Outfile C:\tmp\js7_joc_windows.2.5.2.zip

./Install-JS7Joc.ps1 `
    -Tarball C:\tmp\js7_joc_windows.2.5.2.zip `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -HttpsPort 4446 `
    -DBMSConfig C:\js7\joc-deployment\hibernate.cfg.xml `
    -JavaHome "C:\Program Files\Java\jdk-11.0.2+9" ` `
    -Keystore C:\js7\joc-deployment/https-keystore.pfx `
    -KeystorePassword ('jobscheduler' | ConvertTo-SecureString -AsPlainText -Force) `
    -Truststore C:\js7\joc-deployment\https-truststore.pfx `
    -TruststorePassword ('jobscheduler' | ConvertTo-SecureString -AsPlainText -Force) `
    -ExecStart StartService `
    -ExecStop StopService `
    -MakeService `
    -AsUser `
    -MakeDirs

# downloads the JOC Cockpit release tarball from the SOS Web Site using Invoke-WebRequest
# creates the home directory if it does not exist
# extracts the tarball and runs the JOC Cockpit installer
# deploys keystore and truststore files
# creates the systemd service
# stops and starts JOC Cockpit by its Windows service
# operates JOC Cockpit for HTTPS port 4446

Renew Certificates for HTTPS Connections

Code Block
languagepowershell
titleExample for use of Installation Script
./Install-JS7Joc.ps1 `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -HttpsPort 4446 `
    -JavaHome "C:\Program Files\Java\jdk-11.0.2+9" `
    -Keystore C:\js7\joc-deployment/https-keystore.pfx `
    -KeystorePassword ('jobscheduler' | ConvertTo-SecureString -AsPlainText -Force) `
    -Truststore C:\js7\joc-deployment\https-truststore.pfx `
    -TruststorePassword ('jobscheduler' | ConvertTo-SecureString -AsPlainText -Force) `
    -ExecStart StartService `
    -ExecStop StopService `
    -NoInstall

# performs no installation but certificate renewal only
# addresses an existing JOC Cockpit instance operated for HTTPS port 4446
# deploys keystore and truststore files
# stops and starts JOC Cockpit by its Windows service

Patch

Patch JOC Cockpit for Linux

Patch from Download

Code Block
languagepowershell
titleExample for use of Installation Script
./Install-JS7Joc.ps1 `
    -Release 2.2.3 `
    -Patch JS-1984 `
    -HomeDir /home/sos/joc `
    -HttpPort 4446 `
    -JavaHome /opt/java/jdk-11.0.2+9 `
    -ExecStart StartService `
    -ExecStop StopService

# downloads the patch tarball from the SOS Web Site
# extracts the tarball to the JOC Cockpit's data directory assuming that this corresponds to the home directory
# stores the patch files to the JOC Cockpit's <data>/webapps/joc/WEB-INF/classes sub-directory
# stops and starts the JOC Cockpit's systemd service

Patch from Tarball

...

Code Block
languagepowershell
titleExample for use of Installation Script
./Install-JS7Joc.ps1 `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\Invoke-WebRequest 'https://download.sos-berlin.com\js7\joc" `
    -Tarball "C:\js7\downloads\js7/JobScheduler.2.2/js7_joc_windowslinux.2.52.2.zip" `
    -HttpsPort 4446 `
    -DBMSConfig "C:\js7\hibernate.cfg.xml" `
    -Keystore "C:\js7\keys\https-keystore.pfx"3.JS-1984.tar.gz' -Outfile /tmp/js7_joc_linux.2.2.3.JS-1984.tar.gz

./Install-JS7Joc.ps1 `
    -KeystorePasswordTarball "('jobscheduler' | ConvertTo-SecureString -AsPlainText -Force) /tmp/js7_joc_unix.2.2.3.JS-1984.tar.gz `
    -KeyAliasPatch "wintest-primary-joc"JS-1984 ` 
     -Truststore "C:\js7\certs\https-truststore.pfx"HomeDir /home/sos/joc `
    -TruststorePassword ('jobscheduler' | ConvertTo-SecureString -AsPlainText -Force) ` HttpPort 4446 `
    -ExecStart StartService `
    -ExecStop StopService-JavaHome /opt/java/jdk-11.0.2+9 `
    -MakeServiceExecStart StartService `
    -MakeDirsExecStop StopService
 
# Installsdownloads the JOCpatch Cockpittarball from the indicatedSOS tarball
#Web DoesSite not offer an HTTP port but makesusing Invoke-WebRequest
# extracts the tarball to the HTTPSJOC portCockpit's availabledata for any network interfaces
# Applies a template file for SSL/TLS related settings that is automatically updated from argumentsdirectory assuming that this corresponds to the installationhome scriptdirectory
# Makesstores usethe ofpatch afiles keystoreto inthe PKCS12JOC format with the given alias name and password and a truststore respectively

...

Cockpit's <data>/webapps/joc/WEB-INF/classes sub-directory
# stops and starts the JOC Cockpit's systemd service

Patch JOC Cockpit for

...

Windows

Patch

...

from Download

Code Block
languagepowershell
titleExample for use of Installation Script
#!/usr/bin/env pwsh

./Install-JS7Joc.ps1 `
    -HomeDir /opt/sos-berlin.com/js7/joc `
    -HttpPort 4444 `
    -Release 2.2.3 `
    -Patch JS-1984 `
    -Restart

# Patches the JOC Cockpit by downloading the indicated patch for the given release from the SOS Web Site
# Restarts the systemd service

Patch JOC Cockpit from Tarball

Code Block
languagepowershell
titleExample for use of Installation Script
#!/usr/bin/env pwsh

./Install-JS7Joc.ps1HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -HttpPort 4446 `
    -JavaHome "C:\Program Files\Java\jdk-11.0.2+9" `
    -HomeDir /opt/sos-berlin.com/js7/jocExecStart StartService `
    -Tarball  /tmp/js7_joc_unix.2.2.3.JS-1984.tar.gz `
    -Patch JS-1984 `
    -Restart

# Patches the JOC Cockpit from a previously downloaded patch tarball
# Restarts the systemd service

Patch JOC Cockpit for Windows

...

ExecStop StopService

# downloads the patch tarball from the SOS Web Site
# extracts the tarball to the JOC Cockpit's data directory
# stores the patch files to the JOC Cockpit's <data>\webapps\joc\WEB-INF\classes sub-directory
# stops and starts the JOC Cockpit's Windows service

Patch from .zip Archive

Code Block
languagepowershell
titleExample for use of Installation Script
./Install-JS7Joc.ps1 `
    -HomeDir "C:\Program Files\Invoke-WebRequest 'https://download.sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -Release /JobScheduler.2.2/js7_joc_windows.2.2.3.JS-1984.zip' -Outfile C:\tmp\js7_joc_windows.2.2.3 `
    -Patch JS-1984.JS-1984.zip

./Install-JS7CJoc.ps1 `
    -Restart

# Patches the JOC Cockpit by downloading the indicated patch for the given release from the SOS Web Site
# Restarts the JOC Cockpit's Windows Service to apply the patch

Patch JOC Cockpit from .zip Archive

Code Block
languagepowershell
titleExample for use of Installation Script
./Install-JS7CJoc.ps1Tarball "C:\tmp\js7_joc_windows.2.2.3.JS-1984.zip" `
    -Patch JS-1984 `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -TarballHttpPort 4446 `
    -JavaHome "C:\js7Program Files\downloads\js7_joc_windows.2.2.3.JS-1984.zipJava\jdk-11.0.2+9" `
      -PatchExecStart JS-1984StartService `
    -Restart

# PatchesExecStop StopService
 
# downloads the patch tarball from the SOS Web Site using Invoke-WebRequest
# extracts the tarball to the JOC Cockpit using's data directory
# stores the patch files to the previously downloaded .zip archive
# RestartsJOC Cockpit's <data>\webapps\joc\WEB-INF\classes sub-directory
# stops and starts the JOC Cockpit's Windows Service to apply the patchservice

Uninstall

Uninstall JOC Cockpit for Linux

Code Block
languagepowershell
titleExample for use of Installation Script
#!/usr/bin/env pwsh

./Install-JS7Joc.ps1 `
    -HomeDir "/opt/sos-berlin.com/js7/joc" `
    -Data "/var/sos-berlin.com/js7/joc" `
    -JavaHome /opt/java/jdk-11.0.2+9 `
    -ExecStop "StopService" `
    -Uninstall

# stops the JOC Cockpit's systemd -Uninstallservice

# Stops and removes the JOC Cockpit's systemd serviceservices
# Removesremoves the home directory and data directorydirectories

Uninstall JOC Cockpit for Windows

Code Block
languagepowershell
titleExample for use of Installation Script
./Install-JS7Joc.ps1 `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -JavaHome "C:\Program Files\Java\jdk-11.0.2+9" `
    -ExecStop StopService `
    -Uninstall

# Stops andstops the JOC Cockpit's Windows service
# removes the JOC Cockpit's Windows Serviceservice
# Removesremoves the home directory and data directory

...