Summary: step-by-step instructions for installing CAST Extend Offline on Linux operating systems.
Note that if you have an existing release of CAST Extend Offline installed, and you attempt to run the install script to install to the same location as the existing service, the install script will detect that the existing service exists and will not allow you to proceed. CAST highly recommends that you uninstall the existing CAST Extend Service before attempting to install a new release.

Unpack the installation media

The installation media is provided in .taz format. Run the following command in terminal to uncompress the .taz file:

tar -xzvf com.castsoftware.aip.extendservice.linux.<version>.taz

The file will be unpacked into a folder called data, together with an install.sh file. The .taz file will remain:

Run the install script

Run the install script in terminal, for example:

./install.sh

The installer will suggest that CAST Extend Offline is installed to the following default location:

/var/opt/CAST/ExtendService

The installer will require elevated permissions in order to create the required folder hierarchy in /var/opt and copy in the required files. If your current login does not have elevated permissions, you may need to choose a different installation location, or run the install.sh script with elevated permissions, for example:

sudo ./install.sh

The installer will run in terminal, click any key to continue:

The license agreement will be displayed, click Y to accept the license agreement and continue with the installation process:

Choose a server name - this name will form part of the CAST Extend Offline URL and CAST recommends leaving the name at the default (i.e. the currently defined machine name) - leave blank and press enter:

Choose the port number on which CAST Extend Offline will run - this will also form part of the CAST Extend Offline URL. The install script will use port 8085 by default - leave blank and press enter to use the suggested port number. If you have another service running on this port, you are free to choose a different port number:

Choose a location on the local machine that will be used for the installation. The setup will suggest: /var/opt/CAST/ExtendService and this requires elevated permissions in order to create the required folder hierarchy and copy in the required files. If your current login does not have elevated permissions, you may need to choose a different installation location, or run the install.sh script with elevated permissions. Leave blank to choose the default location and press enter:

The installation will then proceed:

On completion, the install script will attempt to access CAST Extend Offline using curl to test that it is up and running. Once this check has finished, the install process is complete.

You may find that the curl check ends in an error if curl is not installed by default on your Linux operating system. If this is the case, you can check that CAST Extend Offline is up and running by using a browser (see below).

What is installed?

Files

On completion of the installation, all files related to CAST Extend Offline are stored in the following location:

<install_folder>/CAST/ExtendService

Install/running logs

All logs are stored in the following location:

<install_folder>/CAST/ExtendService/data/LOGS

Installed third-party software

The following table lists all third-party software that is shipped and installed with CAST Extend Offline:

SoftwareVersion
Node.js10.15.3

Testing the installation

To test CAST Extend Offline, browse to the following location from a different machine on your local network. Change server_name and port to match your installation:

http://<server_name>:<port>/api

If CAST Extend Offline is functioning, the following should be returned:

<?xml version="1.0" encoding="utf-8"?>
	<service xml:base="http://server_name:port" xmlns="http://www.w3.org/2007/app" xmlns:atom="http://www.w3.org/2005/Atom">
		<workspace>
			<atom:title>Default</atom:title>
			<collection href="Packages">
				<atom:title>Packages</atom:title>
			</collection>
		</workspace>
	</service>

Firewall

Your Linux server may be protected using a firewall such as iptables or UFW. If this is the case, you may need to modify the firewall to allow incoming connections to the CAST Extend Server port (default 8085) if you would like CAST Extend Offline to be accessible over the internal network.

Starting and stopping CAST Extend Offline

CAST Extend Offline is not configured to start automatically when the host server is rebooted, instead the service can be started using the following script with elevated permissions (note that the & sign forces the script to be run in the background and returns you to the terminal command prompt):

sudo ./<install_folder>/CAST/ExtendService/start_server.sh &

It can be manually stopped using the following script:

sudo ./<install_folder>/CAST/ExtendService/stop_server.sh


If you need to start the service automatically, you should consider creating a Linux service using systemd (available by default in the majority of main stream Linux distributions such as CentOS, Debian, Fedora, RHEL, SUSE and Ubuntu). This is beyond the scope of this document, however you may wish to read the following third party informationhttps://linuxconfig.org/how-to-automatically-execute-shell-script-at-startup-boot-on-systemd-linux.

Updating the available extensions in CAST Extend Offline

See Update CAST Extend Offline with new content.