FrameworkTemplate/SolutionTemplate/spkl/spkl.json

{
  "webresources": [
    {
      /*
            Option - profile - Provide a comma delimitered list of profile names that can be referenced when calling spkl
            */
      "profile": "default,debug",
 
      /*
            Optional - root - Provide the relatative path of the webresources.
            */
      "root": "dist",
 
      /*
            Optional - solution - Add webresources to a solution when deploying
            */
      "solution": "AddName",
 
      /*
            Required - files - List the webresources to deploy relatative to the root of this file (or the the root parameter above)
            */
      "files": [
        {
          "uniquename": "prefix_/systemuser.js",
          "file": "..\\..\\dist\\systemuser.js",
          "description": "System User JavaScript Library"
        }
      ]
    }
  ],
  "plugins": [
    {
      /*
            Required - assemblypath - Relative path (from this file or the path parameter above) to the assembies to deply
            Can be either plugins or workflow activities
            Create multiple entries for different profiles
            */
      "profile": "default,debug",
      "solution": "AddName",
      "assemblypath": "..\\bin\\Debug\\AddName.dll",
      "classRegex": "((public( sealed)? class (?'class'[\\w]*)[\\W]*?)((?'plugin':[\\W]*?((IPlugin)|(BasePlugin)|(Plugin)))|(?'wf':[\\W]*?BaseWorkflow)))"
    }
  ],
  /*
    The solutions section defines a solution that can be extracted to individual xml files to make
    versioning of Dynamics metadata (entities, attributes etc) easier
    */
  "solutions": [
    {
      "profile": "default,debug",
      /*
            The unique name of the solution to extract, unpack, pack and import
            */
      "solution_uniquename": "AddName",
      /*
            The relative folder path to store the extracted solution metadata xml files
            */
      "packagepath": "package",
      /*
            The relative path name of the solution to pack into
            */
      "solutionpath": "solution_{0}_{1}_{2}_{3}.zip",
      /*
            Set to 'unmanaged' or 'managed' - default to 'unmanaged' if omitted
            */
      "packagetype": "unmanaged",
      /*
            Set to 'true' to increment the minor version number before importing from the xml files
            */
      "increment_on_import": false,
 
      /*
            Map code artefacts to the solution package folder
            */
      "map": [
        {
          "map": "path",
          "from": "PluginAssemblies\\**\\*.*",
          "to": "..\\..\\Plugins\\bin\\**"
        },
        {
          "map": "path",
          "from": "WebResources\\*.*",
          "to": "..\\..\\Webresources\\Webresources\\**"
        },
        {
          "map": "path",
          "from": "WebResources\\**\\*.*",
          "to": "..\\..\\Webresources\\Webresources\\**"
        }
      ]
    }
  ]
}