Deploying Extensions to the DryvIQ Platform

Getting started

During development of this extension, it is recommended to just build the extension using dotnet build, which will build your extension in the Debug configuration as well as copy the extension into the appropriate directory on your machine for DryvIQ to pick it up if you have a local copy that you can use to test live within the product. However, once you are ready to deploy this extension to customers, you will want to package the extension as a NuGet package (.nupkg file) using dotnet pack --configuration Release and deploy it to a DryvIQ instance. This guide assumes that you have a NuGet package that you wish to deploy to customers.

Deploying the Extension with DryvIQ

The DryvIQ installer supports deploying custom extensions alongside the normal DryvIQ installation process. To do this, an extension developer would create an extensions.zip file that contains any and all NuGet packages (.nupkg files) that should be deployed alongside DryvIQ .

One important note is that this method of deployment is not supported when deploying our docker container. When using docker to deploy DryvIQ , you must use the method below to install the extension to an existing DryvIQ instance.

Deploying the Extension to an Existing DryvIQ Instance

DryvIQ also supports installing custom extensions into an existing DryvIQ instance. This process is the same regardless if you are dealing with a single-node or a multi-node cluster. Once DryvIQ is installed and the database is configured, you can install the extension using a few different methods.

Before deploying the extensions, verify an Extensions folder does not exists in the Installation Directory. The default directory is C:\Program Files\SkySync but can be changed during installation. If the folder exists in this directory, delete it before running the command to install the extensions.

To deploy an extension to an offline instance, meaning that the DryvIQ instance is not actively running, you can use the following command:

skysync extensions deploy MyCustomExtension.nupkg

 

This will install the extension into the DryvIQ database so that it can be installed and deployed on each node in the cluster once the instances are brought online.

You can also deploy an extension into a running DryvIQ instance using either the skysync-cli or through the REST interface. To use the CLI, make sure to ensure that you have the CLI installed and configured before continuing.

skysync-cli extensions add MyCustomExtension.nupkg



Once the extension is installed, any nodes that were previously running will need to be restarted in order for the new extension to take effect. Do not use the Restart button in the Settings or an API to restart the service since these options perform a soft restart needed to pick up changes to the appsettings.json file. A full restart of the service is required when installing extensions.

 

DryvIQ Platform Version: 5.9.2
Release Date: December 17, 2024