Deploying Platform Extensions



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 then 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 and 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. To deploy an extension to an offline instance, meaning that the DryvIQ instance is not actively running, you can use the following:

 

1 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.

 

1 skysync-cli extensions add MyCustomExtension.nupkg



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.