{
   "name": "{{BuildDefName}}",
   "type": "build",
   "quality": "definition",
   "queue": {
      "id": "{{QueueId}}"
   },
   "build": [
      {
         "enabled": true,
         "continueOnError": false,
         "alwaysRun": false,
         "displayName": "Run bower",
         "timeoutInMinutes": 0,
         "task": {
            "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
            "versionSpec": "*",
            "definitionType": "task"
         },
         "inputs": {
            "filename": "bower",
            "arguments": "install",
            "workingFolder": "",
            "failOnStandardError": "false"
         }
      },
      {
         "enabled": true,
         "continueOnError": false,
         "alwaysRun": false,
         "displayName": "Maven pom.xml",
         "timeoutInMinutes": 0,
         "task": {
            "id": "ac4ee482-65da-4485-a532-7b085873e532",
            "versionSpec": "*",
            "definitionType": "task"
         },
         "inputs": {
            "mavenPOMFile": "pom.xml",
            "options": "",
            "goals": "package",
            "publishJUnitResults": "true",
            "testResultsFiles": "**/TEST-*.xml",
            "testRunTitle": "",
            "codeCoverageTool": "JaCoCo",
            "classFilter": "",
            "classFilesDirectories": "",
            "srcDirectories": "",
            "javaHomeSelection": "JDKVersion",
            "jdkVersion": "default",
            "jdkUserInputPath": "",
            "jdkArchitecture": "x86",
            "mavenVersionSelection": "Default",
            "mavenPath": "",
            "mavenSetM2Home": "false",
            "sqAnalysisEnabled": "false",
            "sqConnectedServiceName": "",
            "sqDbDetailsRequired": "false",
            "sqDbUrl": "",
            "sqDbUsername": "",
            "sqDbPassword": "",
            "pmdAnalysisEnabled": "false"
         }
      },
      {
         "enabled": true,
         "continueOnError": false,
         "alwaysRun": false,
         "displayName": "Extract war file",
         "timeoutInMinutes": 0,
         "task": {
            "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1",
            "versionSpec": "*",
            "definitionType": "task"
         },
         "inputs": {
            "scriptType": "inlineScript",
            "scriptName": "",
            "arguments": "-zipFile \"$(Build.SourcesDirectory)/target/{{Project}}.war\" -baseFolder \"$(Build.SourcesDirectory)/temp/webapps/ROOT\"",
            "inlineScript": "Param( [string]$zipFile,  [string]$baseFolder)\n[Reflection.Assembly]::LoadWithPartialName(\"System.IO.Compression.FileSystem\")\n[IO.Compression.ZipFile]::ExtractToDirectory($zipFile, $baseFolder)",
            "workingFolder": "",
            "failOnStandardError": "true"
         }
      },
      {
         "enabled": true,
         "continueOnError": false,
         "alwaysRun": false,
         "displayName": "Copy parameters.xml",
         "timeoutInMinutes": 0,
         "task": {
            "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c",
            "versionSpec": "*",
            "definitionType": "task"
         },
         "inputs": {
            "SourceFolder": "templates/",
            "Contents": "parameters.xml",
            "TargetFolder": "$(Build.SourcesDirectory)/temp/",
            "CleanTargetFolder": "false",
            "OverWrite": "false"
         }
      },
      {
         "enabled": true,
         "continueOnError": false,
         "alwaysRun": false,
         "displayName": "Zip as MSDeploy",
         "timeoutInMinutes": 0,
         "task": {
            "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1",
            "versionSpec": "*",
            "definitionType": "task"
         },
         "inputs": {
            "scriptType": "inlineScript",
            "scriptName": "",
            "arguments": "-zipRoot \"$(Build.SourcesDirectory)/temp/\" -target \"$(Build.SourcesDirectory)/target/{{Project}}.zip\"",
            "inlineScript": "Param([string]$target, [string]$zipRoot)\n[Reflection.Assembly]::LoadWithPartialName(\"System.IO.Compression.FileSystem\")\n[IO.Compression.ZipFile]::CreateFromDirectory($zipRoot, $target)",
            "workingFolder": "",
            "failOnStandardError": "true"
         }
      },
      {
         "enabled": true,
         "continueOnError": false,
         "alwaysRun": false,
         "displayName": "Copy Publish Artifact: drop",
         "timeoutInMinutes": 0,
         "task": {
            "id": "1d341bb0-2106-458c-8422-d00bcea6512a",
            "versionSpec": "*",
            "definitionType": "task"
         },
         "inputs": {
            "CopyRoot": "",
            "Contents": "**/*.war\n**/*.zip\n**/templates/*.*",
            "ArtifactName": "drop",
            "ArtifactType": "Container",
            "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)"
         }
      }
   ],
   "triggers": [
      {
         "branchFilters": [
            "+refs/heads/master"
         ],
         "pathFilters": [],
         "batchChanges": false,
         "maxConcurrentBuildsPerBranch": 1,
         "triggerType": "continuousIntegration"
      }
   ],
   "variables": {
      "system.debug": {
         "value": "false",
         "allowOverride": true
      },
      "BuildConfiguration": {
         "value": "release",
         "allowOverride": true
      },
      "BuildPlatform": {
         "value": "any cpu",
         "allowOverride": true
      }
   },
   "repository": {
      "properties": {
         "labelSources": "0",
         "reportBuildStatus": "true"
      },
      "type": "TfsGit",
      "name": "{{Project}}",
      "url": "https://{{VSTS}}.visualstudio.com/_git/{{Project}}",
      "defaultBranch": "refs/heads/master",
      "clean": "true",
      "checkoutSubmodules": false
   }
}