Synopsis
Each time you run the installer, a kickstart file is generated. This file will be saved next to the manifest file that was used for installation. The filename is in the format qube-component_group-install_version-kickstart.qks, e.g qube-upgrade-6.4-4-kickstart.qks or qube-worker-6.4-4-kickstart.qks. The kickstart file can be used by the installer to replicate the install/upgrade on another computer. This is an OS independent file, so you can, for example, install or upgrade across Linux, macOS, and Windows using the same kickstart file on the command line of each OS.
The kickstart file contains the list of the components that were selected for installation, uninstallation, the component group selection, and the supervisor discovery parameters if they were provided. It follows, then, that a kickstart file could be used to manage the removal of Qube! components as well as it can be used for install or upgrade. For the component group options "Upgrade Installed" or "Uninstall Everything", the exact component selection saved in the kickstart file is ignored and will be replaced at run time. For all other component group selections, the exact selections for install and uninstall will be replicated each time the kickstart file is used. In either case, when running on the command line (without a GUI), any component that needs to be downloaded will be downloaded by the installer before it is installed. If the component has already been downloaded by one computer, it will not be downloaded again by subsequent computers (assuming the location of the manifest, and therefore individual component installation files, is on a shared file server).
To use the kickstart file, you must run the installer on the command line. In fact, the installer may only be run on the command line when used in conjunction with a kickstart file. Once the file is created, usage is quite simple:
/path/to/qubeInstaller.version.os.exe /path/to/qube-kickstart.qks
"Upgrade Installed" kickstart files are agnostic with respect to type and operating system
As mentioned above, the "Upgrade Installed" and "Uninstall Everything" component group options will make the installer evaluate the component selection at runtime. If the admin wanted to upgrade all Qube! computers in a farm, they would simply run an upgrade install on a single computer (choosing the "Upgrade Installed" component group) then run the installer on every other machine with the qube-upgrade-6.x-x.qks file that was generated by the installer. Even if one machine is a Supervisor, a second is a Worker, and a third is only a Client, the upgrade kickstart file will do what is expected and upgrade all the components on the local machine.
The local repository may be on a network disk; on Windows the installer will copy the install packages to local disk prior to the install.
Example Usage
briank$ sudo qubeInstaller.MacOSX-x86_64.app/Contents/MacOS/qubeInstaller qube-upgrade-6.4-4-kickstart.qks
INFO: Running in non-UI mode
Downloading:
INFO: Adding component_qube-core to ftp queue
INFO: Adding component_qube-supervisor to ftp queue
INFO: Adding component_qube-worker to ftp queue
INFO: Adding component_qubegui to ftp queue
INFO: Adding component_qubeArtistView to ftp queue
INFO: Adding component_qube-mayajt to ftp queue
INFO: Adding component_qube-mentalrayjt to ftp queue
INFO: Adding component_qube-miGenjt to ftp queue
INFO: Adding component_qube-mtorjt to ftp queue
INFO: Adding component_qube-pyHoudinijt to ftp queue
INFO: Adding component_qube-pyNukejt to ftp queue
qube-worker 100.0%
qubegui 100.0%
qube-supervisor 100.0%
qube-mayajt 100.0%
qube-mentalrayjt 100.0%
qube-miGenjt 100.0%
qubeArtistView 100.0%
qube-mtorjt 100.0%
qube-pyHoudinijt 100.0%
qube-pyNukejt 100.0%
qube-core 100.0%
qube-pyNukejt Uninstalling...
qube-pyNukejt Uninstalled
qube-pyHoudinijt Uninstalling...
qube-pyHoudinijt Uninstalled
qube-mtorjt Uninstalling...
qube-mtorjt Uninstalled
qube-miGenjt Uninstalling...
qube-miGenjt Uninstalled
qube-mentalrayjt Uninstalling...
qube-mentalrayjt Uninstalled
qube-mayajt Uninstalling...
qube-mayajt Uninstalled
qubeArtistView Uninstalling...
qubeArtistView Uninstalled
qubegui Uninstalling...
qubegui Uninstalled
qube-worker Uninstalling...
INFO: worker has shut down.
qube-worker Uninstalled
qube-supervisor Uninstalling...
INFO: supervisor has shut down.
qube-supervisor Uninstalled
qube-core Uninstalling...
qube-core Uninstalled
qube-core Installing...
qube-core 6.4-4
qube-supervisor Installing...
qube-supervisor 6.4-4
qube-worker Installing...
qube-worker 6.4-4
qubegui Installing...
qubegui 6.4-4
qubeArtistView Installing...
qubeArtistView 1.0-2
qube-mayajt Installing...
qube-mayajt 6.4-1
qube-mentalrayjt Installing...
qube-mentalrayjt 6.4-0
qube-miGenjt Installing...
qube-miGenjt 6.4-0
qube-mtorjt Installing...
qube-mtorjt 6.4-0
qube-pyHoudinijt Installing...
qube-pyHoudinijt 6.4-0
qube-pyNukejt Installing...
qube-pyNukejt 6.4-0
+------------------------------+
| Qube Upgrade Report |
+--------------------+---------+
| qube-miGenjt | 6.4-0 |
| qube-pyHoudinijt | 6.4-0 |
| qube-worker | 6.4-4 |
| qube-supervisor | 6.4-4 |
| qube-core | 6.4-4 |
| qube-mtorjt | 6.4-0 |
| qube-pyNukejt | 6.4-0 |
| qubegui | 6.4-4 |
| qube-mentalrayjt | 6.4-0 |
| qube-mayajt | 6.4-1 |
| qubeArtistView | 1.0-2 |
+--------------------+---------+
Install Complete