azure-pipelines-cd.yml 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. trigger:
  2. - preview
  3. jobs:
  4. - job: NetlifyStaticDeploy
  5. displayName: 'Deploy'
  6. pool:
  7. vmImage: 'Ubuntu-16.04'
  8. demands: npm
  9. steps:
  10. - script: 'npm install netlify-cli'
  11. displayName: 'npm install netlify'
  12. - script: 'npm install --prefix Playground/'
  13. displayName: 'npm install playground'
  14. - script: 'npm install typescript'
  15. displayName: 'npm install typescript'
  16. # Controllers
  17. - script: 'npx netlify link --id=220a52f0-ea85-4244-8342-8ec149cd78d6'
  18. displayName: 'netlify link babylonjscontrollers'
  19. env:
  20. AZURE_PULLREQUESTID: $(System.PullRequest.PullRequestId)
  21. NETLIFY_AUTH_TOKEN: $(babylon.netlify.authToken)
  22. - script: 'npx netlify deploy --prod --dir=assets/meshes/controllers'
  23. displayName: 'netlify deploy babylonjscontrollers'
  24. env:
  25. AZURE_PULLREQUESTID: $(System.PullRequest.PullRequestId)
  26. NETLIFY_AUTH_TOKEN: $(babylon.netlify.authToken)
  27. # Sandbox
  28. - script: 'npx netlify unlink'
  29. displayName: 'netlify unlink'
  30. - script: 'npx netlify link --id=4deda23f-f382-458b-897e-2f2111b5f263'
  31. displayName: 'netlify link babylonjs-sandbox'
  32. env:
  33. AZURE_PULLREQUESTID: $(System.PullRequest.PullRequestId)
  34. NETLIFY_AUTH_TOKEN: $(babylon.netlify.authToken)
  35. - script: 'npx netlify deploy --prod --dir=sandbox/'
  36. displayName: 'netlify deploy babylonjs-sandbox'
  37. env:
  38. AZURE_PULLREQUESTID: $(System.PullRequest.PullRequestId)
  39. NETLIFY_AUTH_TOKEN: $(babylon.netlify.authToken)
  40. # playground
  41. # - script: 'npx netlify unlink'
  42. # displayName: 'netlify unlink'
  43. # - script: 'npx netlify link --id=9161d5f0-b208-4b86-a281-9300386f6c94'
  44. # displayName: 'netlify link babylonjs-playground'
  45. # env:
  46. # AZURE_PULLREQUESTID: $(System.PullRequest.PullRequestId)
  47. # NETLIFY_AUTH_TOKEN: $(babylon.netlify.authToken)
  48. # - script: 'npx netlify deploy --prod --dir=Playground/'
  49. # displayName: 'netlify deploy babylonjs-playground'
  50. # env:
  51. # AZURE_PULLREQUESTID: $(System.PullRequest.PullRequestId)
  52. # NETLIFY_AUTH_TOKEN: $(babylon.netlify.authToken)
  53. # babylonjs-preview
  54. # - script: 'npx netlify unlink'
  55. # displayName: 'netlify unlink'
  56. # - script: 'npx netlify link --id=e1c1c520-e3a4-4d5b-91e6-254f1bea1b6b'
  57. # displayName: 'netlify link babylonjs-preview'
  58. # env:
  59. # AZURE_PULLREQUESTID: $(System.PullRequest.PullRequestId)
  60. # NETLIFY_AUTH_TOKEN: $(babylon.netlify.authToken)
  61. # - script: 'npx netlify deploy --prod --dir="dist/preview release"'
  62. # displayName: 'netlify deploy babylonjs-preview'
  63. # env:
  64. # AZURE_PULLREQUESTID: $(System.PullRequest.PullRequestId)
  65. # NETLIFY_AUTH_TOKEN: $(babylon.netlify.authToken)
  66. # assets-babylonjs
  67. - script: 'npx netlify unlink'
  68. displayName: 'netlify unlink'
  69. - script: 'npx netlify link --id=bd58224a-5f56-42de-afd2-ffa72b85fd71'
  70. displayName: 'netlify link assets-babylonjs'
  71. env:
  72. AZURE_PULLREQUESTID: $(System.PullRequest.PullRequestId)
  73. NETLIFY_AUTH_TOKEN: $(babylon.netlify.authToken)
  74. - script: 'npx netlify deploy --prod --dir=assets/'
  75. displayName: 'netlify deploy assets-babylonjs'
  76. env:
  77. AZURE_PULLREQUESTID: $(System.PullRequest.PullRequestId)
  78. NETLIFY_AUTH_TOKEN: $(babylon.netlify.authToken)
  79. # nodeeditor
  80. - script: 'npm install --prefix Tools/Gulp && npx gulp nodeEditor --gulpfile ./Tools/Gulp/gulpfile.js'
  81. displayName: 'gulp build nodeeditor'
  82. - script: 'npx netlify unlink'
  83. displayName: 'netlify unlink'
  84. - script: 'npx netlify link --id=d232f0dc-cdb2-473e-b0f5-91fb1dd1d398'
  85. displayName: 'netlify link nodeeditor'
  86. env:
  87. AZURE_PULLREQUESTID: $(System.PullRequest.PullRequestId)
  88. NETLIFY_AUTH_TOKEN: $(babylon.netlify.authToken)
  89. - script: 'npx netlify deploy --prod --dir=nodeEditor/public'
  90. displayName: 'netlify deploy nodeeditor'
  91. env:
  92. AZURE_PULLREQUESTID: $(System.PullRequest.PullRequestId)
  93. NETLIFY_AUTH_TOKEN: $(babylon.netlify.authToken)
  94. # viewer-babylonjs
  95. - script: 'npm install --prefix Tools/Gulp && npx gulp viewer --gulpfile ./Tools/Gulp/gulpfile.js'
  96. displayName: 'gulp build viewer-babylonjs'
  97. - script: 'npx netlify unlink'
  98. displayName: 'netlify unlink'
  99. - script: 'npx netlify link --id=a32b113f-8187-43ab-9133-8844521f26f4'
  100. displayName: 'netlify link viewer-babylonjs'
  101. env:
  102. AZURE_PULLREQUESTID: $(System.PullRequest.PullRequestId)
  103. NETLIFY_AUTH_TOKEN: $(babylon.netlify.authToken)
  104. - script: 'npx netlify deploy --prod --dir=Viewer/dist/'
  105. displayName: 'netlify deploy viewer-babylonjs'
  106. env:
  107. AZURE_PULLREQUESTID: $(System.PullRequest.PullRequestId)
  108. NETLIFY_AUTH_TOKEN: $(babylon.netlify.authToken)
  109. - task: AzureFileCopy@2
  110. displayName: 'Update Preview Storage'
  111. inputs:
  112. SourcePath: 'dist/preview release'
  113. azureSubscription: 'Visual Studio Enterprise (2bb1afe6-4492-4d3d-9cf8-e658f447d211)'
  114. Destination: AzureBlob
  115. storage: previewcdn
  116. ContainerName: '$web'
  117. - task: AzureCLI@2
  118. displayName: 'Purge preview CDN'
  119. inputs:
  120. azureSubscription: 'Visual Studio Enterprise(2bb1afe6-4492-4d3d-9cf8-e658f447d211)'
  121. scriptType: 'ps'
  122. scriptLocation: 'inlineScript'
  123. inlineScript: 'az cdn endpoint purge --resource-group Playground-Resources --profile-name Preview-CDN --name babylonjspreview --content-paths /*'