Deploy your tool in Tool Library
Tool Library is the location where users can discover and manage the tools they want in XrmToolBox.
Once you have developed your own tool, you would like to distribute it to XrmToolBox users. To do so, you need to create a Nuget Package, then register this package in XrmToolBox portal.
First, please review this checklist to ensure your tool is ready to be validated
Create a Nuget package
There is many way to create a Nuget package (manually, through a VS build, etc.). In this page, we will demonstrate the use of a Nuget application : Nuget Package Explorer
Run this application and switch to Edit mode
General information
All these information are required, so that it displays correctly in Plugins Store
Id : The id of the package. This is generally the name of your tool assembly
Version : The version of the package.
Title : The name of your tool
Authors : Your name
Icon Url : The icon to display in the Tool Library
Project Url : The url of the open source project. If your tool is not open sourced, provide an url that points to a blog article or a dedicated page for this tool.
Summary/Description : A description about your tool
Release Notes : Description of the latest changes. Please fill correctly this part to inform your users about the changes
Tags : Some tags to retrieve your tools. Please add the term "XrmToolBox"
- The version of your package must match with the version of your tool assembly. If not, your tool will always be displayed as if there was an update available
- Please use your own Icon url. Do not reuse XrmToolBox one. Your tool will be refused if there is no icon defined.
Dependencies
To detect compatibility with the current version of XrmToolBox, Tool Library reads the dependencies defined in the Nuget package.
Even if you add the Nuget package XrmToolBoxPackage to develop your tool, this is not the dependency that is expected in your tool Nuget package.
The dependency expected is "XrmToolBox" with the minimum version you are targeting.
Package content
On the right part of the tool, you can define the package content. This is where you will add your tool assembly.
- the presence of a subfolder "Plugins" where the tool assembly will be located
- Only your assemblies (if you are using third party assemblies, please read this documentation)
Package Sample
<package>
<metadata>
<id>Contoso.Xrm.SweetestPlugin</id>
<version>1.2018.1.1</version>
<title>The Sweetest Plugin for XrmToolBox</title>
<authors>Jane and John Doe</authors>
<owners>Contoso</owners>
<projectUrl>https://github.com/Contoso/SweetestPlugin</projectUrl>
<iconUrl>http://contoso.com/sweetest.png</iconUrl>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>Really sweet plugin that does awesome things</description>
<summary>Really sweet plugin that does awesome things</summary>
<releaseNotes>
With this your life will be a whole lot sweeter.
1.2016.4.123: New life-enhancer functionality.
1.2016.3.112: New fantastic button.
</releaseNotes>
<copyright>Copyright 2016 Contoso Enterprises</copyright>
<tags>XrmToolBox Plugins SweetestPlugin</tags>
<dependencies>
<dependency id="XrmToolBox" version="1.2018.1.20" />
</dependencies>
</metadata>
<files>
<file src="SweetestPlugin\bin\Release\Contoso.*.dll" target="lib\net452\Plugins" />
<file src="SweetestPlugin\bin\Release\ExtraFiles\AnotherFile.dll" target="lib\net452\Plugins\Extra" />
<file src="SweetestPlugin\bin\Release\ExtraFiles\VeryImportantFile.txt" target="lib\net452\Plugins\Extra" />
</files>
</package>
Publish your Nuget package
Once your package is created, you need to publish it on Nuget website. You will need an account first, so create one if you don't have it already.
When using Nuget Package Explorer, the easiest way to publish your package is to... publish it. For this, use the menu File > Publish.
Register your tool on XrmToolBox portal
Once your Nuget package is published and indexed (don't miss on this one, it may takes some times to perform indexation), you can register your tool on this page
Just provide your Nuget package Id and the portal will parse package information to register the tool.
Your tool then needs to be reviewed and validated by an administrator. This can take few days.