azure-pipelines.yml 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. # Docs see here:
  2. # https://aka.ms/yaml
  3. pr:
  4. autoCancel: true # indicates whether additional pushes to a PR should cancel in-progress runs for the same PR. Defaults to true
  5. variables:
  6. choco_cache: C:/ProgramData/chocolatey
  7. vcpkg_cache: C:/vcpkg/installed
  8. jobs:
  9. - job: 'win_vs2017'
  10. displayName: 'Windows (VS2017)'
  11. pool:
  12. vmImage: 'vs2017-win2016'
  13. variables:
  14. CC_NAME: Visual Studio 15 2017
  15. CC_SHORTNAME: VS2017
  16. GENERATOR: Visual Studio 15 2017
  17. FORCE_CXX: OFF
  18. steps:
  19. - checkout: self
  20. submodules: recursive
  21. - task: CacheBeta@0
  22. inputs:
  23. key: $(Build.SourcesDirectory)/tools/azure-devops/install.ps1
  24. path: $(choco_cache)
  25. displayName: Cache Choco
  26. - task: CacheBeta@0
  27. inputs:
  28. key: $(Build.SourcesDirectory)/tools/azure-devops/install.ps1
  29. path: $(vcpkg_cache)
  30. displayName: Cache vcpkg
  31. - powershell: ./tools/azure-devops/install.ps1
  32. displayName: Install Requirements
  33. - powershell: ./tools/azure-devops/build.ps1
  34. displayName: "Build: $(CC_NAME)"
  35. - task: PublishBuildArtifacts@1
  36. inputs:
  37. PathtoPublish: '$(Build.ArtifactStagingDirectory)'
  38. ArtifactName: open62541-$(CC_SHORTNAME)
  39. # publishing artifacts from PRs from a fork is currently blocked
  40. condition: succeeded()
  41. displayName: "Publish Artifact: open62541-$(CC_SHORTNAME)"
  42. - job: 'win_msys64'
  43. displayName: 'Windows (msys64)'
  44. pool:
  45. vmImage: 'windows-latest'
  46. variables:
  47. CC_NAME: MinGW Makefiles
  48. CC_SHORTNAME: mingw
  49. GENERATOR: MinGW Makefiles
  50. FORCE_CXX: OFF
  51. MSYS2_ROOT: C:/msys64
  52. steps:
  53. - checkout: self
  54. submodules: recursive
  55. - task: CacheBeta@0
  56. inputs:
  57. key: $(Build.SourcesDirectory)/tools/azure-devops/install.ps1
  58. path: $(choco_cache)
  59. displayName: Cache Choco
  60. - powershell: ./tools/azure-devops/install.ps1
  61. displayName: Install Requirements
  62. - powershell: ./tools/azure-devops/build.ps1
  63. displayName: "Build: $(CC_NAME)"
  64. errorActionPreference: continue # Nodeset Compiler prints to stderror
  65. - task: PublishBuildArtifacts@1
  66. inputs:
  67. PathtoPublish: '$(Build.ArtifactStagingDirectory)'
  68. ArtifactName: open62541-$(CC_SHORTNAME)
  69. # publishing artifacts from PRs from a fork is currently blocked
  70. condition: succeeded()
  71. displayName: "Publish Artifact: open62541-$(CC_SHORTNAME)"
  72. - job: 'win_clang'
  73. displayName: 'Windows (clang)'
  74. pool:
  75. vmImage: 'windows-latest'
  76. variables:
  77. CC_NAME: Clang
  78. CC_SHORTNAME: clang-mingw
  79. GENERATOR: MinGW Makefiles
  80. FORCE_CXX: OFF
  81. MSYS2_ROOT: C:/msys64
  82. steps:
  83. - checkout: self
  84. submodules: recursive
  85. - task: CacheBeta@0
  86. inputs:
  87. key: $(Build.SourcesDirectory)/tools/azure-devops/install.ps1
  88. path: $(choco_cache)
  89. displayName: Cache Choco
  90. - powershell: ./tools/azure-devops/install.ps1
  91. displayName: Install Requirements
  92. - powershell: ./tools/azure-devops/build.ps1
  93. displayName: "Build: $(CC_NAME)"
  94. errorActionPreference: continue # Nodeset Compiler prints to stderror
  95. - task: PublishBuildArtifacts@1
  96. inputs:
  97. PathtoPublish: '$(Build.ArtifactStagingDirectory)'
  98. ArtifactName: open62541-$(CC_SHORTNAME)
  99. # publishing artifacts from PRs from a fork is currently blocked
  100. condition: succeeded()
  101. displayName: "Publish Artifact: open62541-$(CC_SHORTNAME)"