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

Example for use of Installation Script
./Install-JS7Joc.ps1 `
    -Release 2.5.2 `
    -HomeDir /home/sos/joc `
    -HttpPort 4446 `
    -DBMSConfig /home/sos/joc-deployment/hibernate.cfg.xml `
    -JavaHome /opt/java/jdk-17.0.2 `
    -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 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

Example 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-17.0.2 `
    -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

Example 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-17.0.2 `
    -AsUser `
    -MakeDirs

# downloads the JOC Cockpit release tarball from the SOS Web Site
# 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 using separate Home and Data Directories

Example 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-17.0.2 `
    -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

Example 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-17.0.2 `
    -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

Example 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_license.jar `
    -JavaHome /opt/java/jdk-17.0.2 `
    -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 Instance for Cluster Operations

Example 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 `
    -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-license.jar `
    -JavaHome /opt/java/jdk-17.0.2 `
    -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 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

Example 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-17.0.2 `
    -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

Example 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-17.0.2 `
    -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

Example 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-17.0.2 `
    -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

Example 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-17.0.2 `
    -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

Example 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 `  
    -HttpsPort 4446 `
    -DBMSConfig /home/sos/joc-deployment/hibernate.cfg.xml `
    -JavaHome /opt/java/jdk-17.0.2 `
    -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

Example for use of Installation Script
./Install-JS7Joc.ps1 `
    -HomeDir /opt/sos-berlin.com/js7/joc `
    -Data /var/sos-berlin.com/js7/joc ` 
    -HttpsPort 4446 `
    -JavaHome /opt/java/jdk-17.0.2 `
    -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

Start JOC Cockpit Service

Example for use of Installation Script
./Install-JS7Joc.ps1 `
    -HomeDir /home/sos/joc `
    -HttpPort 4446 `
    -ExecStart StartService `
    -ExecStop StopService `
    -NoInstall `
    -NoConfig

# stops the JOC Cockpit's systemd service if JOC Cockpit is running
# starts the JOC Cockpit's systemd service

Stop JOC Cockpit Service

Example for use of Installation Script
./Install-JS7Joc.ps1 `
    -HomeDir /home/sos/joc `
    -HttpPort 4446 `
    -ExecStop StopService `
    -NoInstall `
    -NoConfig

# stops the JOC Cockpit's systemd service

Install JOC Cockpit for Windows

Install or Update from Download using individual Database

Example 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-17.0.2" `
    -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

Example 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-17.0.2" `
    -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

Example 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-17.0.2" `
    -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

Example 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-17.0.2" `
    -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

Example 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-17.0.2" `
    -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

Example 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 `
    -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-17.0.2" `
    -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 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

Example 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-17.0.2" `
    -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

Example 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-17.0.2" `
    -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

Example 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-17.0.2" `
    -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

Example 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-17.0.2" `
    -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

Start JOC Cockpit Service

Example for use of Installation Script
./Install-JS7Joc.ps1 `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -HttpPort 4446 `
    -ExecStart StartService `
    -ExecStop StopService `
    -NoInstall `
    -NoConfig

# stops the JOC Cockpit's Windows service if JOC Cockpit is running
# starts the JOC Cockpit's Windows service

Stop JOC Cockpit Service

Example for use of Installation Script
./Install-JS7Joc.ps1 `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -HttpPort 4446 `
    -ExecStop StopService `
    -NoInstall `
    -NoConfig

# stops the JOC Cockpit's Windows service

Patch

Patch JOC Cockpit for Linux

Patch API from Download

Example for use of Installation Script
./Install-JS7Joc.ps1 `
    -Release 2.2.3 `
    -Patch JS-1984 `
    -PatchKey API-1 `
    -HomeDir /opt/sos-berlin.com/js7/joc `
    -Data /var/sos-berlin.com/js7/joc ` 
    -HttpPort 4446 `
    -JavaHome /opt/java/jdk-17.0.2 `
    -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 API from Tarball

Example for use of Installation Script
Invoke-WebRequest `
    -Uri 'https://download.sos-berlin.com/patches/2.2.3-patch/js7_joc.2.2.3-PATCH.API-1.JS-1984.tar.gz' `
    -Outfile /tmp/js7_joc.2.2.3-PATCH.API-1.JS-1984.tar.gz

./Install-JS7Joc.ps1 `
    -Tarball /tmp/js7_joc.2.2.3-PATCH.API-1.JS-1984.tar.gz `
    -Patch JS-1984 `
    -PatchKey API-1 `
    -HomeDir /opt/sos-berlin.com/js7/joc `
    -Data /var/sos-berlin.com/js7/joc ` 
    -HttpPort 4446 `
    -JavaHome /opt/java/jdk-17.0.2 `
    -ExecStart StartService `
    -ExecStop StopService
 
# downloads the patch tarball from the SOS Web Site using Invoke-WebRequest
# 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 GUI from Tarball

Example for use of Installation Script
Invoke-WebRequest `
    -Uri 'https://download.sos-berlin.com/patches/2.5.3-patch/js7_joc.2.5.3-PATCH.GUI-1.JOC-1550.tar.gz' `
    -Outfile /tmp/js7_joc.2.5.3-PATCH.GUI-1.JOC-1550.tar.gz

./Install-JS7CJoc.ps1 `
    -Tarball /tmp/js7_joc.2.5.3-PATCH.GUI-1.JOC-1550.tar.gz `
    -Patch JS-1550 `
    -PatchKey GUI-1 `
    -HomeDir /opt/sos-berlin.com/js7/joc `
    -Data /var/sos-berlin.com/js7/joc `
    -HttpPort 4446 `
    -JavaHome /opt/java/jdk-17.0.2 `
    -ExecStart StartService `
    -ExecStop StopService
 
# downloads the patch tarball from the SOS Web Site using Invoke-WebRequest
# 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 API from .jar File

Example for use of Installation Script
Invoke-WebRequest `
    -Uri 'https://download.sos-berlin.com/patches/2.2.3-patch/js7_joc.2.2.3-PATCH.API-1.JS-1984.jar' `
    -Outfile /tmp/js7_joc.2.2.3-PATCH.API-1.JS-1984.jar

./Install-JS7Joc.ps1 `
    -PatchJar /tmp/js7_joc.2.2.3-PATCH.API-1.JS-1984.jar `
    -PatchKey API-1 `
    -Patch JS-1984 ` 
    -HomeDir /opt/sos-berlin.com/js7/joc `
    -Data /var/sos-berlin.com/js7/joc `
    -HttpPort 4446 `
    -JavaHome /opt/java/jdk-17.0.2 `
    -ExecStart StartService `
    -ExecStop StopService
 
# downloads the patch .jar file from the SOS Web Site using Invoke-WebRequest
# stores the patch .jar file to the JOC 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 API from Download

Example for use of Installation Script
./Install-JS7Joc.ps1 `
    -Release 2.2.3 `
    -Patch JS-1984 `
    -PatchKey API-1 `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -HttpPort 4446 `
    -JavaHome "C:\Program Files\Java\jdk-17.0.2" `
    -ExecStart StartService `
    -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 API from Tarball

Example for use of Installation Script
Invoke-WebRequest `
    -Uri 'https://download.sos-berlin.com/patches/2.2.3-patch/js7_joc.2.2.3-PATCH.API-1.JS-1984.tar.gz' `
    -Outfile C:\tmp\js7_joc.2.2.3-PATCH.API-1.JS-1984.tar.gz

./Install-JS7CJoc.ps1 `
    -Tarball "C:\tmp\js7_joc.2.2.3-PATCH.API-1.JS-1984.tar.gz" `
    -Patch JS-1984 `
    -PatchKey API-1 `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -HttpPort 4446 `
    -JavaHome "C:\Program Files\Java\jdk-17.0.2" `
    -ExecStart StartService `
    -ExecStop StopService
 
# downloads the patch tarball from the SOS Web Site using Invoke-WebRequest
# 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 GUI from Tarball

Example for use of Installation Script
Invoke-WebRequest `
    -Uri 'https://download.sos-berlin.com/patches/2.5.3-patch/js7_joc.2.5.3-PATCH.GUI-1.JOC-1550.tar.gz' `
    -Outfile C:\tmp\js7_joc.2.5.3-PATCH.GUI-1.JOC-1550.tar.gz

./Install-JS7CJoc.ps1 `
    -Tarball "C:\tmp\js7_joc.2.5.3-PATCH.GUI-1.JOC-1550.tar.gz" `
    -Patch JS-1550 `
    -PatchKey GUI-1 `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -HttpPort 4446 `
    -JavaHome "C:\Program Files\Java\jdk-17.0.2" `
    -ExecStart StartService `
    -ExecStop StopService
 
# downloads the patch tarball from the SOS Web Site using Invoke-WebRequest
# 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 API from .jar File

Example for use of Installation Script
Invoke-WebRequest `
    -Uri 'https://download.sos-berlin.com/patches/2.2.3-patch/js7_joc.2.2.3-PATCH.API-1.JS-1984.jar' `
    -Outfile C:\tmp\js7_joc.2.2.3-PATCH.API-1.JS-1984.jar

./Install-JS7CJoc.ps1 `
    -PatchJar "C:\tmp\js7_joc.2.2.3-PATCH.API-1.JS-1984.jar" `
    -Patch JS-1984 `
    -PatchKey API-1 `
    -HomeDir "C:\Program Files\sos-berlin.com\js7\joc" `
    -Data "C:\ProgramData\sos-berlin.com\js7\joc" `
    -HttpPort 4446 `
    -JavaHome "C:\Program Files\Java\jdk-17.0.2" `
    -ExecStart StartService `
    -ExecStop StopService
 
# downloads the patch .jar file from the SOS Web Site using Invoke-WebRequest
# stores the patch .jar file to the JOC Cockpit's <data>\webapps\joc\WEB-INF\classes sub-directory
# stops and starts the JOC Cockpit's Windows service

Uninstall

Uninstall JOC Cockpit for Linux

Example for use of Installation Script
./Install-JS7Joc.ps1 `
    -HomeDir /opt/sos-berlin.com/js7/joc `
    -Data /var/sos-berlin.com/js7/joc `
    -JavaHome /opt/java/jdk-17.0.2 `
    -ExecStop StopService `
    -Uninstall

# stops the JOC Cockpit's systemd service
# removes the JOC Cockpit's systemd services
# removes the home and data directories

Uninstall JOC Cockpit for Windows

Example 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-17.0.2" `
    -ExecStop StopService `
    -Uninstall

# stops the JOC Cockpit's Windows service
# removes the JOC Cockpit's Windows service
# removes the home directory and data directory



  • No labels