Deploying Your Extensions

Deploying extensions is simply a matter of copying them to a fixed location on the Content Engine host. You can, however, use an autoinstall flag in the extensions' package.json files to determine whether or not they are automatically installed by Content Studio. This makes it possible to start out with a limited deployment for testers and/or advanced users before making an extension fully available. These stages are described below:

Limited deployment

Without making any changes to your package.json files, copy the contents of your local extensions folder to the /opt/escenic/engine/studio/extensions folder on your Content Engine host (but see note below).

The extensions are now available for use by Content Studio, but will not be automatically installed. Testers/advanced users can install specific extensions by starting Content Studio with the following command:

javaws http://content-engine-host/studio/Studio.jnlp?com.escenic.studio.extension.enable=extension-list

where:

  • content-engine-host is the name of your Content Engine host.

  • extension-list is a comma-separated list of the extensions to load.

In a standard installation, Content Studio will look for plug-ins in the default location specified above, /opt/escenic/engine/studio/extensions. This location is, however, configurable. You can change it by setting the property studioExtensionRoot in configuration-root/ServerConfig.properties in one of your configuration layers.

Full deployment

When an extension is ready for full deployment, edit its package.json file and add an autoinstall flag. For our hello-world example the package.json file should look something like this:

{ 
  "main" : "main.js",
  "name": "hello-world",
  "version" : "1.0.0.0", 
  "flags": ["autoinstall"]
}

Note that the flags property is an array, so the "autoinstall" value must be enclosed in braces.

Upload the edited file to the correct location. This extension will now be automatically installed when Content Studio is started.

Preventing auto-installation

You can prevent Content Studio from installing extensions even if the autoinstall flag is set by starting Content Studio with the following command:

javaws http://content-engine-host/studio/Studio.jnlp?com.escenic.studio.extension.disable=extension-list

where:

  • content-engine-host is the name of your Content Engine host.

  • extension-list is a comma-separated list of extensions that are not to be loaded. You can prevent installation of all extensions by specifying the special value *.