azure-pipelines.yml 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. trigger:
  2. - master
  3. pr:
  4. autoCancel: true
  5. branches:
  6. include:
  7. - master
  8. jobs:
  9. - job: WhatsNewUpdate
  10. displayName: '1. What s New Update'
  11. pool:
  12. vmImage: 'Ubuntu-16.04'
  13. demands: npm
  14. steps:
  15. - task: Npm@1
  16. displayName: 'npm install'
  17. inputs:
  18. workingDir: Tools/Gulp
  19. verbose: false
  20. - script: 'gulp tests-whatsnew'
  21. workingDirectory: Tools/Gulp
  22. displayName: 'Whats new'
  23. env:
  24. AZURE_PULLREQUESTID: $(System.PullRequest.PullRequestId)
  25. - job: DocumentationCheck
  26. displayName: '2. Documentation Check'
  27. pool:
  28. vmImage: 'Ubuntu-16.04'
  29. demands: npm
  30. steps:
  31. - task: Npm@1
  32. displayName: 'npm install'
  33. inputs:
  34. workingDir: Tools/Gulp
  35. verbose: false
  36. - script: 'gulp typedoc-check'
  37. workingDirectory: Tools/Gulp
  38. displayName: 'Typedoc check'
  39. - job: Linting
  40. displayName: '3. Linting'
  41. pool:
  42. vmImage: 'Ubuntu-16.04'
  43. demands: npm
  44. steps:
  45. - task: Npm@1
  46. displayName: 'npm install'
  47. inputs:
  48. workingDir: Tools/Gulp
  49. verbose: false
  50. - script: 'gulp fullLint'
  51. workingDirectory: Tools/Gulp
  52. displayName: 'Full Lint'
  53. - job: Build
  54. displayName: '4. Build'
  55. pool:
  56. vmImage: 'Ubuntu-16.04'
  57. demands: npm
  58. steps:
  59. - task: Npm@1
  60. displayName: 'npm install'
  61. inputs:
  62. workingDir: Tools/Gulp
  63. verbose: false
  64. - script: 'gulp typescript-all'
  65. workingDirectory: Tools/Gulp
  66. displayName: 'Typescript all'
  67. - job: Tests
  68. displayName: '5. Core Tests'
  69. pool:
  70. vmImage: 'Ubuntu-16.04'
  71. demands: npm
  72. steps:
  73. - task: Npm@1
  74. displayName: 'npm install'
  75. inputs:
  76. workingDir: Tools/Gulp
  77. verbose: false
  78. - script: 'gulp typescript-all'
  79. workingDirectory: Tools/Gulp
  80. displayName: 'Typescript all'
  81. - script: 'gulp tests-babylon-unit'
  82. workingDirectory: Tools/Gulp
  83. displayName: 'Unit Tests'
  84. - script: |
  85. export DISPLAY=:99
  86. Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &
  87. sleep 3 # give xvfb some time to start
  88. gulp tests-validation-virtualscreen
  89. workingDirectory: Tools/Gulp
  90. displayName: 'Visual Tests'
  91. - job: ModuleTests
  92. displayName: '6. Module Tests'
  93. pool:
  94. vmImage: 'Ubuntu-16.04'
  95. demands: npm
  96. steps:
  97. - task: Npm@1
  98. displayName: 'npm install'
  99. inputs:
  100. workingDir: Tools/Gulp
  101. verbose: false
  102. - script: 'gulp typescript-all'
  103. workingDirectory: Tools/Gulp
  104. displayName: 'Typescript all'
  105. - script: 'gulp tests-modules'
  106. workingDirectory: Tools/Gulp
  107. displayName: 'Tests modules'
  108. - script: 'sudo gulp localdev-es6'
  109. workingDirectory: Tools/Gulp
  110. displayName: 'Npm link ES6'
  111. - script: 'gulp tests-es6Modules'
  112. workingDirectory: Tools/Gulp
  113. displayName: 'Tests ES6'
  114. - job: ViewerTests
  115. displayName: '7. Viewer Tests'
  116. pool:
  117. vmImage: 'Ubuntu-16.04'
  118. demands: npm
  119. steps:
  120. - task: Npm@1
  121. displayName: 'npm install'
  122. inputs:
  123. workingDir: Tools/Gulp
  124. verbose: false
  125. - script: 'gulp typescript-all'
  126. workingDirectory: Tools/Gulp
  127. displayName: 'Typescript all'
  128. - script: 'gulp tests-viewer-unit'
  129. workingDirectory: Tools/Gulp
  130. displayName: 'Unit Tests'
  131. - script: |
  132. export DISPLAY=:99
  133. Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &
  134. sleep 3 # give xvfb some time to start
  135. gulp tests-viewer-validation-virtualscreen
  136. workingDirectory: Tools/Gulp
  137. displayName: 'Visual Tests'
  138. - job: BrowserStackTests
  139. displayName: '8. Browser Stack Tests'
  140. pool:
  141. vmImage: 'Ubuntu-16.04'
  142. demands: npm
  143. steps:
  144. - task: Npm@1
  145. displayName: 'npm install'
  146. inputs:
  147. workingDir: Tools/Gulp
  148. verbose: false
  149. - script: 'gulp typescript-all'
  150. workingDirectory: Tools/Gulp
  151. displayName: 'Typescript all'
  152. - script: 'gulp tests-babylon-unit'
  153. workingDirectory: Tools/Gulp
  154. displayName: 'Unit Tests'
  155. - script: 'gulp tests-validation-virtualscreen'
  156. workingDirectory: Tools/Gulp
  157. displayName: 'Browser Stack Tests'
  158. env:
  159. TRAVIS_BUILD_NUMBER: $(Build.BuildNumber)
  160. BROWSER_STACK_USERNAME: $(babylon.browserStack.userName)
  161. BROWSER_STACK_ACCESS_KEY: $(babylon.browserStack.userToken)