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 SkySync 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 SkySync instance. This guide assumes that you have a NuGet package that you wish to deploy to customers.
The SkySync installer supports deploying custom extensions and alongside the normal SkySync 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 SkySync.
Panel |
---|
|
One important note is that this method of deployment is not supported when deploying our docker container. When using docker to deploy SkySync, you must use the method below to install the extension to an existing SkySync instance. |
SkySync also supports installing custom extensions into an existing SkySync instance. This process is the same regardless if you are dealing with a single-node or a multi-node cluster. Once SkySync 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 SkySync instance is not actively running, you can use the following:
Code Block |
---|
|
skysync extensions deploy MyCustomExtension.nupkg |
This will install the extension into the SkySync 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 SkySync 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.
Code Block |
---|
|
skysync-cli extensions add MyCustomExtension.nupkg |
Panel |
---|
borderColor | #E61B11 |
---|
borderWidth | 2 |
---|
|
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. |