trigger:
  branches:
    include: ['*']
  tags:
    include: ['*']

steps:
  - task: NodeTool@0
    inputs:
      versionSpec: '10.x'

  - script: npm install
    displayName: Install Dependencies

  - script: npm run build
    displayName: Build

  - script: npm run test
    displayName: Run Tests

  - task: Npm@1
    displayName: 'Publish to NPM'
    inputs:
      command: publish
      verbose: false
      publishEndpoint: 'NPM'
    condition: and(succeeded(), startsWith(variables['Build.SourceBranch'], 'refs/tags/'))
