# Starter pipeline
# Start with a minimal pipeline that you can customize to build and deploy your code.
# Add steps that build, run tests, deploy, and more:
# https://aka.ms/yaml

name: $(Build.SourceVersion)
jobs:
- job: Linux
  timeoutInMinutes: 0
  pool:
    vmImage: 'Ubuntu 16.04'

  variables:
    STAGING_DIRECTORY: /home/vsts/STAGING
    STAGING_DIRECTORY_UNIX: /home/vsts/STAGING
    ESY__CACHE_INSTALL_PATH: /home/vsts/.esy/3_____________________________________________________________________/i
    ESY__CACHE_SOURCE_TARBALL_PATH: /home/vsts/.esy/source/i
    # ESY__NPM_ROOT: /opt/hostedtoolcache/node/8.14.0/x64/lib/node_modules/esy

  steps:
  - template: .ci/use-node.yml
  - template: .ci/restore-build-cache.yml
  - template: .ci/esy-build-steps.yml
  - template: .ci/publish-build-cache.yml

- job: MacOS
  timeoutInMinutes: 0
  pool:
    vmImage: 'macOS 10.13'

  variables:
    STAGING_DIRECTORY: /Users/vsts/STAGING
    STAGING_DIRECTORY_UNIX: /Users/vsts/STAGING
    ESY__CACHE_INSTALL_PATH: /Users/vsts/.esy/3____________________________________________________________________/i
    ESY__CACHE_SOURCE_TARBALL_PATH: /Users/vsts/.esy/source/i
    # ESY__NPM_ROOT: /usr/local/lib/node_modules/esy

  steps:
  - template: .ci/use-node.yml
  - template: .ci/restore-build-cache.yml
  - template: .ci/esy-build-steps.yml
  - template: .ci/publish-build-cache.yml

- job: Windows
  timeoutInMinutes: 0
  pool:
    vmImage: 'vs2017-win2016'

  variables:
    STAGING_DIRECTORY: C:\Users\VssAdministrator\STAGING
    STAGING_DIRECTORY_UNIX: /C/Users/VssAdministrator/STAGING
    ESY__CACHE_INSTALL_PATH: /C/Users/VssAdministrator/.esy/3_/i
    ESY__CACHE_SOURCE_TARBALL_PATH: /C/Users/VssAdministrator/.esy/source/i
    # ESY__NPM_ROOT: /C/npm/prefix/node_modules/esy

  steps:
  - template: .ci/use-node.yml
  - template: .ci/restore-build-cache.yml
  - template: .ci/esy-build-steps.yml
  - template: .ci/publish-build-cache.yml

# - job: Release
#   timeoutInMinutes: 0
#   displayName: Release
#   dependsOn:
#       - Linux
#       - MacOS
#       - Windows
#   condition: succeeded()
#   pool:
#      vmImage: ubuntu-16.04
#   steps:
#     - task: PublishBuildArtifacts@1
#       displayName: 'Release Package'
#       inputs:
#           PathtoPublish: '.'
#           ArtifactName: npm-package
